{"item_id": "ker-trustdns_ptr", "crate_dir": "../../bench/kernels/trustdns_ptr/pre", "lib_name": "k_trustdns_ptr_pre", "provenance": {"author": "claude-sonnet subagent, blind", "written_from": "signature + doc string only", "saw_source": false, "saw_diff": false, "saw_advisory": false}, "properties": [ {"id": "p1", "fn": "pointer_ok", "args": [["location", "usize"], ["pointer_location", "usize"], ["name_start", "usize"]], "pre": "true", "post": "location < name_start || !r", "ret": "bool", "basis": "pointer target (location) at or after the start of the current name is rejected (chains could loop)"}, {"id": "p2", "fn": "pointer_ok", "args": [["location", "usize"], ["pointer_location", "usize"], ["name_start", "usize"]], "pre": "true", "post": "location >= name_start || r", "ret": "bool", "basis": "target strictly before name start is acceptable"}, {"id": "p3", "fn": "pointer_ok", "args": [["location", "usize"], ["pointer_location", "usize"], ["name_start", "usize"]], "pre": "true", "post": "location != name_start || !r", "ret": "bool", "basis": "strictly before: a target equal to name_start is rejected"} ]}