HomeKit Accessory Protocol (HAP) for OCaml
0
fork

Configure Feed

Select the types of activity you want to include in your feed.

fix(lint): resolve E340 error helpers and E305 module naming

Extract err_* helpers in ocaml-hap/lib/hap.ml for pair setup/verify
error patterns. Extract err_unknown_type_code in ocaml-matter/lib/tlv.ml.
Rename OnOff -> On_off and AdministratorCommissioning ->
Administrator_commissioning in ocaml-matter for Snake_case convention.

+22 -7
+22 -7
lib/hap.ml
··· 11 11 module Log = (val Logs.src_log log_src : Logs.LOG) 12 12 open Result.Syntax 13 13 14 + (** {1 Errors} *) 15 + 16 + let err_pair_setup code = 17 + Error (`Msg (Fmt.str "Pair setup error: %d" (Char.code code.[0]))) 18 + 19 + let err_pair_setup_m4 code = 20 + Error (`Msg (Fmt.str "Pair setup M4 error: %d" (Char.code code.[0]))) 21 + 22 + let err_pair_setup_m6 code = 23 + Error (`Msg (Fmt.str "Pair setup M6 error: %d" (Char.code code.[0]))) 24 + 25 + let err_pair_verify_m2 code = 26 + Error (`Msg (Fmt.str "Pair verify M2 error: %d" (Char.code code.[0]))) 27 + 28 + let err_pair_verify_m4 code = 29 + Error (`Msg (Fmt.str "Pair verify M4 error: %d" (Char.code code.[0]))) 30 + 14 31 (* Helper to convert IP string to Eio address *) 15 32 let ipv4_of_string ip = 16 33 Eio.Net.Ipaddr.of_raw (Ipaddr.V4.to_octets (Ipaddr.V4.of_string_exn ip)) ··· 315 332 in 316 333 let m6 = Tlv.decode m6_body in 317 334 match Tlv.get Tlv_type.error m6 with 318 - | Some e -> Error (`Msg (Fmt.str "Pair setup M6 error: %d" (Char.code e.[0]))) 335 + | Some e -> err_pair_setup_m6 e 319 336 | None -> verify_m6 ~session_key_bytes ~enc_key controller_kp controller_id m6 320 337 321 338 (* SRP M3/M4 verify exchange and derive encryption key for M5/M6 *) ··· 338 355 in 339 356 let m4 = Tlv.decode m4_body in 340 357 match Tlv.get Tlv_type.error m4 with 341 - | Some e -> Error (`Msg (Fmt.str "Pair setup M4 error: %d" (Char.code e.[0]))) 358 + | Some e -> err_pair_setup_m4 e 342 359 | None -> 343 360 let m2_proof = Tlv.get_exn Tlv_type.proof m4 in 344 361 if ··· 371 388 in 372 389 let m2 = Tlv.decode m2_body in 373 390 match Tlv.get Tlv_type.error m2 with 374 - | Some e -> Error (`Msg (Fmt.str "Pair setup error: %d" (Char.code e.[0]))) 391 + | Some e -> err_pair_setup e 375 392 | None -> 376 393 let salt = Tlv.get_exn Tlv_type.salt m2 in 377 394 let big_b_bytes = Tlv.get_exn Tlv_type.public_key m2 in ··· 437 454 in 438 455 let m4 = Tlv.decode m4_body in 439 456 match Tlv.get Tlv_type.error m4 with 440 - | Some e -> 441 - Error (`Msg (Fmt.str "Pair verify M4 error: %d" (Char.code e.[0]))) 457 + | Some e -> err_pair_verify_m4 e 442 458 | None -> derive_session_keys ~pairing ~ip ~port ~shared 443 459 444 460 (* Verify M2 response: decrypt, check identity and signature *) ··· 477 493 in 478 494 let m2 = Tlv.decode m2_body in 479 495 match Tlv.get Tlv_type.error m2 with 480 - | Some e -> 481 - Error (`Msg (Fmt.str "Pair verify M2 error: %d" (Char.code e.[0]))) 496 + | Some e -> err_pair_verify_m2 e 482 497 | None -> 483 498 let accessory_pk = Tlv.get_exn Tlv_type.public_key m2 in 484 499 let enc_data = Tlv.get_exn Tlv_type.encrypted_data m2 in