sig
  type t = string
  external fromString : str:string -> SFIpAddress.t
    = "caml_sfIpAddress_fromString"
  external fromBytes :
    b0:char -> b1:char -> b2:char -> b3:char -> SFIpAddress.t
    = "caml_sfIpAddress_fromBytes"
  external fromInteger : int32 -> SFIpAddress.t
    = "caml_sfIpAddress_fromInteger"
  external toString : address:SFIpAddress.t -> string
    = "caml_sfIpAddress_toString"
  external toInteger : address:SFIpAddress.t -> int32
    = "caml_sfIpAddress_toInteger"
  external getLocalAddress : unit -> SFIpAddress.t
    = "caml_sfIpAddress_getLocalAddress"
  external getPublicAddress : timeout:SFTime.t -> SFIpAddress.t
    = "caml_sfIpAddress_getPublicAddress"
  external localHost : unit -> SFIpAddress.t = "caml_sfIpAddress_localHost"
  external none : unit -> SFIpAddress.t = "caml_sfIpAddress_None"
  external broadcast : unit -> SFIpAddress.t = "caml_sfIpAddress_Broadcast"
end