📄 cspublic.h
字号:
*/#define CS_DS_PASSWORD (CS_INT)9198/*** Properties for SSL*/#define CS_PROP_SSL_PROTOVERSION (CS_INT)9200#define CS_PROP_SSL_CIPHER (CS_INT)9201#define CS_PROP_SSL_LOCALID (CS_INT)9202#define CS_PROP_SSL_CA (CS_INT)9203#define CS_PROP_TLS_KEYREGEN (CS_INT)9205/*** CS_DS_SCOPE Values*/#define CS_SCOPE_COUNTRY (CS_INT)1#define CS_SCOPE_DMD (CS_INT)2#define CS_SCOPE_WORLD (CS_INT)3/*** CS_DS_SEARCH Values*/#define CS_SEARCH_OBJECT (CS_INT)1#define CS_SEARCH_ONE_LEVEL (CS_INT)2#define CS_SEARCH_SUBTREE (CS_INT)3 /*** Possible values for the CS_NETIO property.*/#define CS_SYNC_IO (CS_INT)8111#define CS_ASYNC_IO (CS_INT)8112#define CS_DEFER_IO (CS_INT)8113/*** Possible bit values for the CS_LOGIN_STATUS property.*/#define CS_CONSTAT_CONNECTED (CS_INT)0x1#define CS_CONSTAT_DEAD (CS_INT)0x2/*** Possible bit values for the CS_CUR_STATUS property.*/#define CS_CURSTAT_NONE (CS_INT)0x0#define CS_CURSTAT_DECLARED (CS_INT)0x1#define CS_CURSTAT_OPEN (CS_INT)0x2#define CS_CURSTAT_CLOSED (CS_INT)0x4#define CS_CURSTAT_RDONLY (CS_INT)0x8#define CS_CURSTAT_UPDATABLE (CS_INT)0x10#define CS_CURSTAT_ROWCOUNT (CS_INT)0x20#define CS_CURSTAT_DEALLOC (CS_INT)0x40/* ** Possible bit values for implicit cursor status*/#define CS_IMPCURSTAT_NONE (CS_INT)0x0#define CS_IMPCURSTAT_READROWS (CS_INT)0x1#define CS_IMPCURSTAT_CLOSED (CS_INT)0x2#define CS_IMPCURSTAT_SENDSUCCESS (CS_INT)0x4#define CS_IMPCURSTAT_SENDDONE (CS_INT)0x8/*** Possible values for the CS_TDS_VERSION property.*/#define CS_TDS_40 (CS_INT)7360#define CS_TDS_42 (CS_INT)7361#define CS_TDS_46 (CS_INT)7362#define CS_TDS_495 (CS_INT)7363#define CS_TDS_50 (CS_INT)7364/*** Possible values for the CS_BEHAVIOR property.*/#define CS_BEHAVIOR_100 (CS_INT)7370#define CS_BEHAVIOR_110 (CS_INT)7371#define CS_BEHAVIOR_120 (CS_INT)7372#define CS_BEHAVIOR_125 (CS_INT)7373/*** Possible values for the CS_PROP_SSL_PROTOVERSION property.**** If 2.0 handshake is desired with SSL 3.0 or TLS 1.0, or** CS_SSLVER_20HAND*/#define CS_SSLVER_20 (CS_INT) 1#define CS_SSLVER_30 (CS_INT) 2#define CS_SSLVER_TLS1 (CS_INT) 3#define CS_SSLVER_20HAND (CS_INT) 0x80000000/*** Structure used with the CS_PROP_SSL_LOCALID property.*/typedef struct _cs_sslid{ CS_CHAR *identity_file; CS_CHAR *identity_password;} CS_SSLIDENTITY;/*** Structure used to deal with certificates in the validate callback.*/typedef struct _cs_sslcertfield{ CS_VOID *value; CS_INT field_id; CS_INT length;} CS_SSLCERT_FIELD;typedef struct _cs_sslcert{ CS_INT field_count; CS_INT extension_count; CS_UINT start_date; CS_UINT end_date; CS_SSLCERT_FIELD *fieldptr; CS_SSLCERT_FIELD *extensionptr;} CS_SSLCERT;typedef CS_INT (CS_PUBLIC * CS_CERT_CB) PROTOTYPE(( CS_VOID *user_data, CS_SSLCERT *certptr, CS_INT cert_count, CS_INT valid ));/*** Defines for valid certificate fields.*/#define CS_SSLFLD_noMatch 0#define CS_SSLFLD_md2 1#define CS_SSLFLD_md4 2#define CS_SSLFLD_md5 3#define CS_SSLFLD_sha1 4#define CS_SSLFLD_rsaEncryption 5#define CS_SSLFLD_md2WithRSA 6#define CS_SSLFLD_md4WithRSA 7#define CS_SSLFLD_md5WithRSA 8#define CS_SSLFLD_sha1WithRSA 9#define CS_SSLFLD_dhKeyAgreement 10#define CS_SSLFLD_pbeWithMD2AndDES_CBC 11#define CS_SSLFLD_pbeWithMD5AndDES_CBC 12#define CS_SSLFLD_emailAddress 13#define CS_SSLFLD_unstructuredName 14#define CS_SSLFLD_contentType 15#define CS_SSLFLD_messageDigest 16#define CS_SSLFLD_signingTime 17#define CS_SSLFLD_counterSignature 18#define CS_SSLFLD_challengePassword 19#define CS_SSLFLD_unstructuredAddress 20#define CS_SSLFLD_extendedCertificateAttributes 21#define CS_SSLFLD_commonName 22#define CS_SSLFLD_surName 23#define CS_SSLFLD_serialNumber 24#define CS_SSLFLD_countryName 25#define CS_SSLFLD_localityName 26#define CS_SSLFLD_stateProvinceName 27#define CS_SSLFLD_streetAddress 28#define CS_SSLFLD_organizationName 29#define CS_SSLFLD_organizationalUnitName 30#define CS_SSLFLD_title 31#define CS_SSLFLD_description 32#define CS_SSLFLD_businessCategory 33#define CS_SSLFLD_postalAddress 34#define CS_SSLFLD_postalCode 35#define CS_SSLFLD_postOfficeBox 36#define CS_SSLFLD_physicalDeliveryOfficeName 37#define CS_SSLFLD_telephoneNumber 38#define CS_SSLFLD_telexNumber 39#define CS_SSLFLD_telexTerminalIdentifier 40#define CS_SSLFLD_facsimileTelephoneNumber 41#define CS_SSLFLD_x_121Address 42#define CS_SSLFLD_internationalISDNNumber 43#define CS_SSLFLD_registeredAddress 44#define CS_SSLFLD_destinationIndicator 45#define CS_SSLFLD_preferredDeliveryMethod 46#define CS_SSLFLD_presentationAddress 47#define CS_SSLFLD_supportedApplicationContext 48#define CS_SSLFLD_member 49#define CS_SSLFLD_owner 50#define CS_SSLFLD_roleOccupant 51#define CS_SSLFLD_mysteryPKCS7_PKCS5 52#define CS_SSLFLD_netscapeCertType 53#define CS_SSLFLD_netscapeBaseURL 54#define CS_SSLFLD_netscapeRevocationURL 55#define CS_SSLFLD_netscapeCARevocationURL 56#define CS_SSLFLD_netscapeCertRenewalURL 57#define CS_SSLFLD_netscapeCAPolicyURL 58#define CS_SSLFLD_netscapeSSLServerName 59#define CS_SSLFLD_netscapeComment 60#define CS_SSLFLD_subjectDirectoryAttributes 61#define CS_SSLFLD_subjectKeyIdentifier 62#define CS_SSLFLD_keyUsage 63#define CS_SSLFLD_privateKeyUsagePeriod 64#define CS_SSLFLD_subjectAltName 65#define CS_SSLFLD_issuerAltName 66#define CS_SSLFLD_basicConstraints 67#define CS_SSLFLD_crlNumber 68#define CS_SSLFLD_crlReason 69#define CS_SSLFLD_holdInstructionCode 70#define CS_SSLFLD_invalidityDate 71#define CS_SSLFLD_deltaCRLIndicator 72#define CS_SSLFLD_issuingDistributionPoint 73#define CS_SSLFLD_nameConstraints 74#define CS_SSLFLD_certificatePolicies 75#define CS_SSLFLD_policyMappings 76#define CS_SSLFLD_policyConstraints 77#define CS_SSLFLD_authorityKeyIdentifier 78#define CS_SSLFLD_extendedKeyUsage 79#define CS_SSLFLD_pkixSubjectInfoAccess 80#define CS_SSLFLD_pkixAuthorityInfoAccess 81#define CS_SSLFLD_pkixCPS 82#define CS_SSLFLD_pkixUserNotice 83#define CS_SSLFLD_pkixKPServerAuth 84#define CS_SSLFLD_pkixKPClientAuth 85#define CS_SSLFLD_pkixKPCodeSigning 86#define CS_SSLFLD_pkixKPEmailProtection 87#define CS_SSLFLD_pkixKPIPSECEndSystem 88#define CS_SSLFLD_pkixKPIPSECTunnel 89#define CS_SSLFLD_pkixKPIPSECUser 90#define CS_SSLFLD_pkixKPTimeStamping 91#define CS_SSLFLD_netscapeKPStepUp 92#define CS_SSLFLD_microsoftKPServerGatedCrypto 93#define CS_SSLFLD_sha1WithDSA 94#define CS_SSLFLD_dsa 95#define CS_SSLFLD_contentInfoData 96#define CS_SSLFLD_contentInfoSignedData 97#define CS_SSLFLD_contentInfoEnvelopedData 98#define CS_SSLFLD_contentInfoSignedAndEnvelopedData 99#define CS_SSLFLD_contentInfoDigestedData 100#define CS_SSLFLD_contentInfoEncryptedData 101#define CS_SSLFLD_keyBag 102#define CS_SSLFLD_pkcs8ShroudedKeyBag 103#define CS_SSLFLD_certBag 104#define CS_SSLFLD_crlBag 105#define CS_SSLFLD_secretBag 106#define CS_SSLFLD_safeContentBag 107#define CS_SSLFLD_pbeWithSHA1And128RC4 108#define CS_SSLFLD_pbeWithSHA1And40BitRC4 109#define CS_SSLFLD_pbeWithSHA1And3KeyTripleDESCBC 110#define CS_SSLFLD_pbeWithSHA1And2KeyTripleDESCBC 111#define CS_SSLFLD_pbeWithSHA1And128BitRC2CBC 112#define CS_SSLFLD_pbeWithSHA1And40BitRC2CBC 113#define CS_SSLFLD_desEDECBC3 114#define CS_SSLFLD_rc2CBC 115#define CS_SSLFLD_x509Certificate 116#define CS_SSLFLD_dhPublicNumber 117#define CS_SSLFLD_ecdhPublicNumber 118#define CS_SSLFLD_ecdhPrivateNumber 119#define CS_SSLFLD_ecPublicKey 120#define CS_SSLFLD_ecPrivateKey 121#define CS_SSLFLD_ecdsaWithSHA1 122#define CS_SSLFLD_ecdsaec163a01 123#define CS_SSLFLD_ecdsaec163a02 124#define CS_SSLFLD_ecdsaec155b01 125#define CS_SSLFLD_ecdsaec163b01 126#define CS_SSLFLD_ecdsaec210b01 127#define CS_SSLFLD_ecnraec163a01 128#define CS_SSLFLD_ecnraec163a02 129#define CS_SSLFLD_ecnraec155b01 130#define CS_SSLFLD_ecnraec163b01 131#define CS_SSLFLD_ecnraec210b01 132#define CS_SSLFLD_curve113a01 133#define CS_SSLFLD_curve163a01 134#define CS_SSLFLD_curve163a02 135#define CS_SSLFLD_curve163b01 136/*** Define values for SSL/TLS certificate validation checks*/#define CS_SSL_VALID_CERT 0#define CS_SSL_INVALID_BADCHAIN 1#define CS_SSL_INVALID_EXPCERT 2#define CS_SSL_INVALID_INCOMPLETE 3#define CS_SSL_INVALID_UNKNOWN 4#define CS_SSL_INVALID_UNTRUSTED 5#define CS_SSL_INVALID_MISSINGNAME 6#define CS_SSL_INVALID_MISMATCHNAME 7/********************************************************************************* Open Client/Server options.*******************************************************************************//*** The following is the list of all valid options:*/#define CS_OPT_DATEFIRST (CS_INT)5001 /* Set first day of week */#define CS_OPT_TEXTSIZE (CS_INT)5002 /* Text size */#define CS_OPT_STATS_TIME (CS_INT)5003 /* Server time statistics */#define CS_OPT_STATS_IO (CS_INT)5004 /* Server I/O statistics */#define CS_OPT_ROWCOUNT (CS_INT)5005 /* Maximum row count */#define CS_OPT_NATLANG (CS_INT)5006 /* National Language */#define CS_OPT_DATEFORMAT (CS_INT)5007 /* Date format */#define CS_OPT_ISOLATION (CS_INT)5008 /* Transaction isolation ** level */#define CS_OPT_AUTHON (CS_INT)5009 /* Set authority level on */#define CS_OPT_CHARSET (CS_INT)5010 /* Character set */#define CS_OPT_SHOWPLAN (CS_INT)5013 /* show execution plan */ #define CS_OPT_NOEXEC (CS_INT)5014 /* don't execute query */#define CS_OPT_ARITHIGNORE (CS_INT)5015 /* ignore arithmetic ** exceptions */#define CS_OPT_TRUNCIGNORE (CS_INT)5016 /* support ANSI null values */#define CS_OPT_ARITHABORT (CS_INT)5017 /* abort on arithmetic ** exceptions */#define CS_OPT_PARSEONLY (CS_INT)5018 /* parse only, return error ** msgs */#define CS_OPT_GETDATA (CS_INT)5020 /* return trigger data */#define CS_OPT_NOCOUNT (CS_INT)5021 /* don't print done count */#define CS_OPT_FORCEPLAN (CS_INT)5023 /* force variable substitute ** order */#define CS_OPT_FORMATONLY (CS_INT)5024 /* send format w/o row */#define CS_OPT_CHAINXACTS (CS_INT)5025 /* chained transaction mode */#define CS_OPT_CURCLOSEONXACT (CS_INT)5026 /* close cursor on end trans */#define CS_OPT_FIPSFLAG (CS_INT)5027 /* FIPS flag */#define CS_OPT_RESTREES (CS_INT)5028 /* return resolution trees */#define CS_OPT_IDENTITYON (CS_INT)5029 /* turn on explicit identity */#define CS_OPT_CURREAD (CS_INT)5030 /* Set session label ** @@ curread */#define CS_OPT_CURWRITE (CS_INT)5031 /* Set session label ** @@curwrite */#define CS_OPT_IDENTITYOFF (CS_INT)5032 /* turn off explicit identity */#define CS_OPT_AUTHOFF (CS_INT)5033 /* Set authority level off */#define CS_OPT_ANSINULL (CS_INT)5034 /* ANSI NULLS behavior */#define CS_OPT_QUOTED_IDENT (CS_INT)5035 /* Quoted identifiers */#define CS_OPT_ANSIPERM (CS_INT)5036 /* ANSI permission checking */#define CS_OPT_STR_RTRUNC (CS_INT)5037 /* ANSI right truncation */#define CS_OPT_SORTMERGE (CS_INT)5038 /* Sort merge join status */ #define CS_MIN_OPTION CS_OPT_DATEFIRST#define CS_MAX_OPTION CS_OPT_SORTMERGE/*** The supported options are summarized below with their defined values** for `ArgSize' and `OptionArg'. ArgSize specifies the domain of valid** values that are allowed.** ** Option ArgSize OptionArg** --------------- --------- ---------** CS_OPT_DATEFIRST 1 byte Defines below** CS_OPT_TEXTSIZE 4 bytes Size in bytes ** CS_OPT_ROWCOUNT 4 bytes Number of rows ** CS_OPT_NATLANG OptionArg Len National Lang (string)** CS_OPT_DATEFORMAT 1 byte Defines below** CS_OPT_ISOLATION 1 byte Defines below ** CS_OPT_AUTHON OptionArg Len Table Name (string)** CS_OPT_CHARSET OptionArg Len Character set (string)** CS_OPT_IDENTITYON OptionArg Len Table Name (string)** CS_OPT_CURREAD OptionArg Len Read Label(string)** CS_OPT_CURWRITE OptionArg Len Write Label(string)** CS_OPT_IDENTITYOFF OptionArg Len Table Name (string)** CS_OPT_AUTHOFF OptionArg Len Table Name (string)** (All remaining options) 1 byte Boolean value** ** All string values must be sent in 7 bit ASCII.***/ /* CS_OPT_DATEFIRST */#define CS_OPT_MONDAY (CS_INT)1#define CS_OPT_TUESDAY (CS_INT)2#define CS_OPT_WEDNESDAY (CS_INT)3#define CS_OPT_THURSDAY (CS_INT)4#define CS_OPT_FRIDAY (CS_INT)5#define CS_OPT_SATURDAY (CS_INT)6#define CS_OPT_SUNDAY (CS_INT)7/* CS_OPT_DATEFORMAT */#define CS_OPT_FMTMDY (CS_INT)1#define CS_OPT_FMTDMY (CS_INT)2#define CS_OPT_FMTYMD (CS_INT)3#define CS_OPT_FMTYDM (CS_INT)4#define CS_OPT_FMTMYD (CS_INT)5#define CS_OPT_FMTDYM (CS_INT)6/* CS_OPT_ISOLATION */#define CS_OPT_LEVEL0 (CS_INT)0#define CS_OPT_LEVEL1 (CS_INT)1#define CS_OPT_LEVEL2 (CS_INT)2#define CS_OPT_LEVEL3 (CS_INT)3/********************************************************************************* Open Client/Server capabilities.*******************************************************************************//*** Capability types.*/#define CS_CAP_REQUEST (CS_INT)1#define CS_CAP_RESPONSE (CS_INT)2/*** Special capability value to set/get all capability values at once.*/#define CS_ALL_CAPS (CS_INT)2700/*** Capability request values.*/#define CS_REQ_LANG (CS_INT)1#define CS_REQ_RPC (CS_INT)2#define CS_REQ_NOTIF (CS_INT)3#define CS_REQ_MSTMT (CS_INT)4#define CS_REQ_BCP (CS_INT)5#define CS_REQ_CURSOR (CS_INT)6#define CS_REQ_DYN (CS_INT)7#define CS_REQ_MSG (CS_INT)8#define CS_REQ_PARAM (CS_INT)9#define CS_DATA_INT1 (CS_INT)10#define CS_DATA_INT2 (CS_INT)11#define CS_DATA_INT4 (CS_INT)12#define CS_DATA_BIT (CS_INT)13#define CS_DATA_CHAR (CS_INT)14#define CS_DATA_VCHAR (CS_INT)15#define CS_DATA_BIN (CS_INT)16#define CS_DATA_VBIN (CS_INT)17#define CS_DATA_MNY8 (CS_INT)18#define CS_DATA_MNY4 (CS_INT)19#define CS_DATA_DATE8 (CS_INT)20#define CS_DATA_DATE4 (CS_INT)21#define CS_DATA_FLT4 (CS_INT)22#define CS_DATA_FLT8 (CS_INT)23#define CS_DATA_NUM (CS_INT)24#define CS_DATA_TEXT (CS_INT)25#define CS_DATA_IMAGE (CS_INT)26#define CS_DATA_DEC (CS_INT)27#define CS_DATA_LCHAR (CS_INT)28#define CS_DATA_LBIN (CS_INT)29#define CS_DATA_INTN (CS_INT)30#define CS_DATA_DATETIMEN (CS_INT)31#define CS_DATA_MONEYN (CS_INT)32#define CS_CSR_PREV (CS_INT)33#define CS_CSR_FIRST (CS_INT)34#define CS_CSR_LAST (CS_INT)35#define CS_CSR_ABS (CS_INT)36#define CS_CSR_REL (CS_INT)37#define CS_CSR_MULTI (CS_INT)38#define CS_CON_OOB (CS_INT)39#define CS_CON_INBAND (CS_INT)40#define CS_CON_LOGICAL (CS_INT)41#define CS_PROTO_TEXT (CS_INT)42#define CS_PROTO_BULK (CS_INT)43#define CS_REQ_URGNOTIF (CS_INT)44#define CS_DATA_SENSITIVITY (CS_INT)45#define CS_DATA_BOUNDARY (CS_INT)46#define CS_PROTO_DYNAMIC (CS_INT)47#define CS_PROTO_DYNPROC (CS_INT)48#define CS_DATA_FLTN (CS_INT)49#define CS_DATA_BITN (CS_INT)50#define CS_OPTION_GET (CS_INT)51#define CS_DATA_INT8 (CS_INT)52#define CS_DATA_VOID (CS_INT)53 #define CS_DOL_BULK (CS_INT)54#define CS_OBJECT_JAVA1 (CS_INT)55#define CS_OBJECT_CHAR (CS_INT)56#define CS_DATA_COLUMNSTATUS (CS_INT)57#define CS_OBJECT_BINARY (CS_INT)58#define CS_REQ_RESERVED1 (CS_INT)59#define CS_WIDETABLES (CS_INT)60#define CS_REQ_RESERVED2 (CS_INT)61#define CS_DATA_UINT2 (CS_INT)62#define CS_DATA_UINT4 (CS_INT)63#define CS_DATA_UINT8 (CS_INT)64#define CS_DATA_UINTN (CS_INT)65#define CS_CUR_IMPLICIT (CS_INT)66#define CS_DATA_UCHAR (CS_INT)67/*** Minimum and maximum request capability values.*/#define CS_MIN_REQ_CAP CS_REQ_LANG#define CS_MAX_REQ_CAP CS_DATA_UCHAR/*** Capability response values.*/#define CS_RES_NOMSG (CS_INT)1#define CS_RES_NOEED (CS_INT)2#define CS_RES_NOPARAM (CS_INT)3#define CS_DATA_NOINT1 (CS_INT)4#define CS_DATA_NOINT2 (CS_INT)5#define CS_DATA_NOINT4 (CS_INT)6#define CS_DATA_NOBIT (CS_INT)7#define CS_DATA_NOCHAR (CS_INT)8#define CS_DATA_NOVCHAR (CS_INT)9#define CS_DATA_NOBIN (CS_INT)10#define CS_DATA_NOVBIN (CS_INT)11#define CS_DATA_NOMNY8 (CS_INT)12#define CS_DATA_NOMNY4 (CS_INT)13#define CS_DATA_NODATE8 (CS_INT)14#define CS_DATA_NODATE4 (CS_INT)15#define CS_DATA_NOFLT4 (CS_INT)16#define CS_DATA_NOFLT8 (CS_INT)17#define CS_DATA_NONUM (CS_INT)18#define CS_DATA_NOTEXT (CS_INT)19#define CS_DATA_NOIMAGE (CS_INT)20#define CS_DATA_NODEC (CS_INT)21#define CS_DATA_NOLCHAR (CS_INT)22#define CS_DATA_NOLBIN (CS_INT)23#define CS_DATA_NOINTN (CS_INT)24#define CS_DATA_NODATETIMEN (CS_INT)25#define CS_DATA_NOMONEYN (CS_INT)26#define CS_CON_NOOOB (CS_INT)27#define CS_CON_NOINBAND (CS_INT)28#define CS_PROTO_NOTEXT (CS_INT)29#define CS_PROTO_NOBULK (CS_INT)30#define CS_DATA_NOSENSITIVITY (CS_INT)31#define CS_DATA_NOBOUNDARY (CS_INT)32#define CS_RES_NOTDSDEBUG (CS_INT)33#define CS_RES_NOSTRIPBLANKS (CS_INT)34#define CS_DATA_NOINT8 (CS_INT)35#define CS_OBJECT_NOJAVA1 (CS_INT)36#define CS_OBJECT_NOCHAR (CS_INT)37#define CS_DATA_NOZEROLEN (CS_INT)38#define CS_OBJECT_NOBINARY (CS_INT)39#define CS_RES_RESERVED (CS_INT)40#define CS_DATA_NOUINT2 (CS_INT)41#define CS_DATA_NOUINT4 (CS_INT)42#define CS_DATA_NOUINT8 (CS_INT)43#define CS_DATA_NOUINTN (CS_INT)44#define CS_NOWIDETABLES (CS_INT)45#define CS_DATA_NOUCHAR (CS_INT)46/*** Minimum and maximum response capability values.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -