@@ -918,49 +918,91 @@ private static function getCurlOptValueType(int $curlOpt): ?Type
918
918
}
919
919
}
920
920
921
+ $ nullableStringConstants = [
922
+ 'CURLOPT_ACCEPT_ENCODING ' ,
923
+ 'CURLOPT_CUSTOMREQUEST ' ,
924
+ 'CURLOPT_DNS_INTERFACE ' ,
925
+ 'CURLOPT_DNS_LOCAL_IP4 ' ,
926
+ 'CURLOPT_DNS_LOCAL_IP6 ' ,
927
+ 'CURLOPT_DOH_URL ' ,
928
+ 'CURLOPT_FTP_ACCOUNT ' ,
929
+ 'CURLOPT_FTPPORT ' ,
930
+ 'CURLOPT_HSTS ' ,
931
+ 'CURLOPT_KRBLEVEL ' ,
932
+ 'CURLOPT_RANGE ' ,
933
+ 'CURLOPT_RTSP_SESSION_ID ' ,
934
+ 'CURLOPT_UNIX_SOCKET_PATH ' ,
935
+ 'CURLOPT_XOAUTH2_BEARER ' ,
936
+ ];
937
+ foreach ($ nullableStringConstants as $ constName ) {
938
+ if (defined ($ constName ) && constant ($ constName ) === $ curlOpt ) {
939
+ return new UnionType ([
940
+ new NullType (),
941
+ TypeCombinator::intersect (
942
+ new StringType (),
943
+ new AccessoryNonEmptyStringType (),
944
+ ),
945
+ ]);
946
+ }
947
+ }
948
+
921
949
$ nonEmptyStringConstants = [
922
950
'CURLOPT_ABSTRACT_UNIX_SOCKET ' ,
951
+ 'CURLOPT_ALTSVC ' ,
952
+ 'CURLOPT_AWS_SIGV4 ' ,
923
953
'CURLOPT_CAINFO ' ,
924
954
'CURLOPT_CAPATH ' ,
925
955
'CURLOPT_COOKIE ' ,
926
956
'CURLOPT_COOKIEJAR ' ,
927
957
'CURLOPT_COOKIELIST ' ,
928
- 'CURLOPT_CUSTOMREQUEST ' ,
929
958
'CURLOPT_DEFAULT_PROTOCOL ' ,
930
- 'CURLOPT_DNS_INTERFACE ' ,
931
- 'CURLOPT_DNS_LOCAL_IP4 ' ,
932
- 'CURLOPT_DNS_LOCAL_IP6 ' ,
959
+ 'CURLOPT_DNS_SERVERS ' ,
933
960
'CURLOPT_EGDSOCKET ' ,
934
- 'CURLOPT_FTPPORT ' ,
961
+ 'CURLOPT_FTP_ALTERNATIVE_TO_USER ' ,
935
962
'CURLOPT_INTERFACE ' ,
936
963
'CURLOPT_KEYPASSWD ' ,
937
964
'CURLOPT_KRB4LEVEL ' ,
938
965
'CURLOPT_LOGIN_OPTIONS ' ,
966
+ 'CURLOPT_MAIL_AUTH ' ,
967
+ 'CURLOPT_MAIL_FROM ' ,
968
+ 'CURLOPT_NOPROXY ' ,
969
+ 'CURLOPT_PASSWORD ' ,
939
970
'CURLOPT_PINNEDPUBLICKEY ' ,
940
- 'CURLOPT_PROXY_SERVICE_NAME ' ,
971
+ 'CURLOPT_PROTOCOLS_STR ' ,
941
972
'CURLOPT_PROXY_CAINFO ' ,
942
973
'CURLOPT_PROXY_CAPATH ' ,
943
974
'CURLOPT_PROXY_CRLFILE ' ,
975
+ 'CURLOPT_PROXY_ISSUERCERT ' ,
944
976
'CURLOPT_PROXY_KEYPASSWD ' ,
945
977
'CURLOPT_PROXY_PINNEDPUBLICKEY ' ,
978
+ 'CURLOPT_PROXY_SERVICE_NAME ' ,
979
+ 'CURLOPT_PROXY_SSL_CIPHER_LIST ' ,
946
980
'CURLOPT_PROXY_SSLCERT ' ,
947
981
'CURLOPT_PROXY_SSLCERTTYPE ' ,
948
- 'CURLOPT_PROXY_SSL_CIPHER_LIST ' ,
949
- 'CURLOPT_PROXY_TLS13_CIPHERS ' ,
950
982
'CURLOPT_PROXY_SSLKEY ' ,
951
983
'CURLOPT_PROXY_SSLKEYTYPE ' ,
984
+ 'CURLOPT_PROXY_TLS13_CIPHERS ' ,
952
985
'CURLOPT_PROXY_TLSAUTH_PASSWORD ' ,
953
986
'CURLOPT_PROXY_TLSAUTH_TYPE ' ,
954
987
'CURLOPT_PROXY_TLSAUTH_USERNAME ' ,
988
+ 'CURLOPT_PROXYPASSWORD ' ,
989
+ 'CURLOPT_PROXYUSERNAME ' ,
955
990
'CURLOPT_PROXYUSERPWD ' ,
956
991
'CURLOPT_RANDOM_FILE ' ,
957
- 'CURLOPT_RANGE ' ,
992
+ 'CURLOPT_REDIR_PROTOCOLS_STR ' ,
958
993
'CURLOPT_REFERER ' ,
994
+ 'CURLOPT_REQUEST_TARGET ' ,
995
+ 'CURLOPT_RTSP_STREAM_URI ' ,
996
+ 'CURLOPT_RTSP_TRANSPORT ' ,
997
+ 'CURLOPT_SASL_AUTHZID ' ,
959
998
'CURLOPT_SERVICE_NAME ' ,
999
+ 'CURLOPT_SOCKS5_GSSAPI_SERVICE ' ,
960
1000
'CURLOPT_SSH_HOST_PUBLIC_KEY_MD5 ' ,
961
- 'CURLOPT_SSH_PUBLIC_KEYFILE ' ,
1001
+ 'CURLOPT_SSH_HOST_PUBLIC_KEY_SHA256 ' ,
962
1002
'CURLOPT_SSH_PRIVATE_KEYFILE ' ,
1003
+ 'CURLOPT_SSH_PUBLIC_KEYFILE ' ,
963
1004
'CURLOPT_SSL_CIPHER_LIST ' ,
1005
+ 'CURLOPT_SSL_EC_CURVES ' ,
964
1006
'CURLOPT_SSLCERT ' ,
965
1007
'CURLOPT_SSLCERTPASSWD ' ,
966
1008
'CURLOPT_SSLCERTTYPE ' ,
@@ -970,13 +1012,14 @@ private static function getCurlOptValueType(int $curlOpt): ?Type
970
1012
'CURLOPT_SSLKEYPASSWD ' ,
971
1013
'CURLOPT_SSLKEYTYPE ' ,
972
1014
'CURLOPT_TLS13_CIPHERS ' ,
973
- 'CURLOPT_UNIX_SOCKET_PATH ' ,
1015
+ 'CURLOPT_TLSAUTH_PASSWORD ' ,
1016
+ 'CURLOPT_TLSAUTH_TYPE ' ,
1017
+ 'CURLOPT_TLSAUTH_USERNAME ' ,
1018
+ 'CURLOPT_TRANSFER_ENCODING ' ,
974
1019
'CURLOPT_URL ' ,
975
1020
'CURLOPT_USERAGENT ' ,
976
1021
'CURLOPT_USERNAME ' ,
977
- 'CURLOPT_PASSWORD ' ,
978
1022
'CURLOPT_USERPWD ' ,
979
- 'CURLOPT_XOAUTH2_BEARER ' ,
980
1023
];
981
1024
foreach ($ nonEmptyStringConstants as $ constName ) {
982
1025
if (defined ($ constName ) && constant ($ constName ) === $ curlOpt ) {
0 commit comments