pub fn validate_web_request(host: &str, path: &str) -> Result<(), TcpIpError>Expand description
アプリ⇄カーネルのネットワーク API 境界での事前条件検証。
方針: アプリからの要求はすべてこの関数を通った後にカーネル内部(DNS/TCP/TLS/HTTP パーサ)
へ渡す。これにより内部関数は「検証済みの host/path しか来ない」前提で動ける(疎結合)。
パニックではなく Result で弾くため、不正入力で OS が落ちることはない。
- host: 1..=253 バイト、
A-Za-z0-9.-のみ(空白・制御文字・CR/LF を排除) - path:
/始まり、1..=4096 バイト、制御文字・CR/LF を含まない (CR/LF 混入による HTTP ヘッダインジェクションを防ぐ)