Skip to content

Commit e72fd56

Browse files
authored
Use phantom primitive for TLS_method return type (#144)
TLS_method returns const SSL_METHOD *, an opaque struct pointer. Pointer[None] is for void * or always-null; this is neither. Closes #131
1 parent 34f0315 commit e72fd56

1 file changed

Lines changed: 4 additions & 2 deletions

File tree

ssl/net/ssl_context.pony

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,8 +10,9 @@ use @SSL_CTX_ctrl[ILong](
1010
op: I32,
1111
arg: ILong,
1212
parg: Pointer[None])
13-
use @TLS_method[Pointer[None]]() if "openssl_1.1.x" or "openssl_3.0.x" or "openssl_4.0.x" or "libressl"
14-
use @SSL_CTX_new[Pointer[_SSLContext]](method: Pointer[None])
13+
use @TLS_method[Pointer[_SSLMethod]]()
14+
if "openssl_1.1.x" or "openssl_3.0.x" or "openssl_4.0.x" or "libressl"
15+
use @SSL_CTX_new[Pointer[_SSLContext]](method: Pointer[_SSLMethod])
1516
use @SSL_CTX_free[None](ctx: Pointer[_SSLContext] tag)
1617
use @SSL_CTX_clear_options[U64](ctx: Pointer[_SSLContext] tag, opts: U64) if "openssl_3.0.x" or "openssl_4.0.x"
1718
use @SSL_CTX_clear_options[ULong](ctx: Pointer[_SSLContext] tag, opts: ULong)
@@ -70,6 +71,7 @@ use @SSL_CTX_set_alpn_protos[I32](
7071
protos_len: U32)
7172
if "openssl_1.1.x" or "openssl_3.0.x" or "openssl_4.0.x" or "libressl"
7273

74+
primitive _SSLMethod
7375
primitive _SSLContext
7476
primitive _X509Store
7577
primitive _CertStore

0 commit comments

Comments
 (0)