python-hyper / python-hyper/rfc3986
wrong parse
オープン
まだ誰も着手していません。
- 主要言語
- Python
- スター
- 189
- フォーク
- 38
- 平均マージ
- 13時間 36分
- マージ済み PR(30日)
- 1
説明
Working on filtering URL system I found that case where False is expected but return True.
Code to test :
from rfc3986 import is_valid_uri
def test_url(url: str) -> bool:
try:
assert is_valid_uri(url, require_scheme=True, require_authority=True, require_path=False)
except AssertionError:
return False
return True
url = "http://'www.amazon.com/s/url=search-alias\%3dstripbooks&field-keywords=z+programming'"
test_url(url)
To be more precise in the report, while RFC 3386 does not explicitly forbid the character ' both RFC1123 and RFC952 prohibit this character in DNS names. Therefore, it should be taken into consideration for this case.
コントリビューションガイド
このリポジトリのコントリビューションガイドは索引されていません
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
調査の方向性
エントリーポイント is_valid_uri から始め、issue にある URL を再現し、authority と hostname がどのように検証されるかに注目してください。この入力が説明どおり拒否されることを確認してから、引用符で囲まれた hostname を対象とするリグレッションテストを追加し、関連するテストスイートを実行してください。
索引モデルが issue の本文から書いたものです。
評価
- 技術スタック
- python
- 領域
- networking
- issue の種類
- バグ
- 難易度
- 3/5
- 見積もり時間
- 1〜2日
- 活発さ
- 停滞
- 明瞭さ
- おおむね明確
- 初心者へのやさしさ
- 38/100