NativeSsl.hx 4.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114
  1. package cpp;
  2. @:buildXml('<include name="${HXCPP}/src/hx/libs/ssl/Build.xml"/>')
  3. extern class NativeSsl
  4. {
  5. @:native("_hx_ssl_new")
  6. public static function ssl_new( conf : Dynamic ) : Dynamic;
  7. @:native("_hx_ssl_close")
  8. public static function ssl_close( ctx : Dynamic ) : Void;
  9. @:native("_hx_ssl_handshake")
  10. public static function ssl_handshake( ctx : Dynamic ) : Void;
  11. @:native("_hx_ssl_set_socket")
  12. public static function ssl_set_socket( ctx : Dynamic, socket : Dynamic ) : Void;
  13. @:native("_hx_ssl_set_hostname")
  14. public static function ssl_set_hostname( ctx : Dynamic, hostname : String ) : Void;
  15. @:native("_hx_ssl_get_peer_certificate")
  16. public static function ssl_get_peer_certificate( ctx : Dynamic ) : Dynamic;
  17. @:native("_hx_ssl_get_verify_result")
  18. public static function ssl_get_verify_result( ctx : Dynamic ) : Bool;
  19. @:native("_hx_ssl_send_char")
  20. public static function ssl_send_char( ctx : Dynamic, char : Int ) : Void;
  21. @:native("_hx_ssl_send")
  22. public static function ssl_send( ctx : Dynamic, buf : haxe.io.BytesData, p : Int, l : Int ) : Int;
  23. @:native("_hx_ssl_write")
  24. public static function ssl_write( ctx : Dynamic, data : haxe.io.BytesData ) : Void;
  25. @:native("_hx_ssl_recv_char")
  26. public static function ssl_recv_char( ctx : Dynamic ) : Int;
  27. @:native("_hx_ssl_recv")
  28. public static function ssl_recv( ctx : Dynamic, buf : haxe.io.BytesData, p : Int, l : Int ) : Int;
  29. @:native("_hx_ssl_read")
  30. public static function ssl_read( ctx : Dynamic ) : haxe.io.BytesData;
  31. @:native("_hx_ssl_conf_new")
  32. public static function conf_new( server : Bool ) : Dynamic;
  33. @:native("_hx_ssl_conf_close")
  34. public static function conf_close( conf : Dynamic ) : Void;
  35. @:native("_hx_ssl_conf_set_ca")
  36. public static function conf_set_ca( conf : Dynamic, cert : Dynamic ) : Void;
  37. @:native("_hx_ssl_conf_set_verify")
  38. public static function conf_set_verify( conf : Dynamic, mode : Int ) : Void;
  39. @:native("_hx_ssl_conf_set_cert")
  40. public static function conf_set_cert( conf : Dynamic, cert : Dynamic, pkey : Dynamic ) : Void;
  41. @:native("_hx_ssl_conf_set_servername_callback")
  42. public static function conf_set_servername_callback( conf : Dynamic, cb : Dynamic ) : Void;
  43. @:native("_hx_ssl_cert_load_defaults")
  44. public static function cert_load_defaults() : Dynamic;
  45. @:native("_hx_ssl_cert_load_file")
  46. public static function cert_load_file( file : String ) : Dynamic;
  47. @:native("_hx_ssl_cert_load_path")
  48. public static function cert_load_path( path : String ) : Dynamic;
  49. @:native("_hx_ssl_cert_get_subject")
  50. public static function cert_get_subject( cert : Dynamic, field : String ) : String;
  51. @:native("_hx_ssl_cert_get_issuer")
  52. public static function cert_get_issuer( cert : Dynamic, field : String ) : String;
  53. @:native("_hx_ssl_cert_get_altnames")
  54. public static function cert_get_altnames( cert : Dynamic ) : Array<String>;
  55. @:native("_hx_ssl_cert_get_notbefore")
  56. public static function cert_get_notbefore( cert : Dynamic ) : Array<Int>;
  57. @:native("_hx_ssl_cert_get_notafter")
  58. public static function cert_get_notafter( cert : Dynamic ) : Array<Int>;
  59. @:native("_hx_ssl_cert_get_next")
  60. public static function cert_get_next( cert : Dynamic ) : Dynamic;
  61. @:native("_hx_ssl_cert_add_pem")
  62. public static function cert_add_pem( cert : Dynamic, data : String ) : Dynamic;
  63. @:native("_hx_ssl_cert_add_der")
  64. public static function cert_add_der( cert : Dynamic, data : haxe.io.BytesData ) : Dynamic;
  65. @:native("_hx_ssl_key_from_der")
  66. public static function key_from_der( data : haxe.io.BytesData, pub : Bool ) : Dynamic;
  67. @:native("_hx_ssl_key_from_pem")
  68. public static function key_from_pem( data : String, pub : Bool, pass : String ) : Dynamic;
  69. @:native("_hx_ssl_dgst_make")
  70. public static function dgst_make( data : haxe.io.BytesData, alg : String ) : haxe.io.BytesData;
  71. @:native("_hx_ssl_dgst_sign")
  72. public static function dgst_sign( data : haxe.io.BytesData, key : Dynamic, alg : String ) : haxe.io.BytesData;
  73. @:native("_hx_ssl_dgst_verify")
  74. public static function dgst_verify( data : haxe.io.BytesData, sign : haxe.io.BytesData, key : Dynamic, alg : String ) : Bool;
  75. @:native("_hx_ssl_init")
  76. public static function init() : Void;
  77. }