From: Keith Vetter Date: Thu, 16 Mar 1995 05:05:34 +0000 (+0000) Subject: Added 3 new files and changed the makefile in lib to be able to make a DLL X-Git-Tag: krb5-1.0-beta5~558 X-Git-Url: http://git.tremily.us/?a=commitdiff_plain;h=ddb7150c80d0299af2721c0b6eb304495f5233bc;p=krb5.git Added 3 new files and changed the makefile in lib to be able to make a DLL on the PC out of the source in crypto, krb5 and util\et. git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@5130 dc483132-0cff-0310-8789-dd5450dbe970 --- diff --git a/src/lib/ChangeLog b/src/lib/ChangeLog index e84f31e91..81546d011 100644 --- a/src/lib/ChangeLog +++ b/src/lib/ChangeLog @@ -1,3 +1,9 @@ +Wed Mar 15 20:45:33 1995 Keith Vetter (keithv@fusion.com) + + * libkrb5.def, winsock.def, win_glue.c: new files for making DLL. + * Makefile.in: On the PC it recurses into all subdirs and builds + libkrb5.dll. + Tue Feb 28 01:33:52 1995 John Gilmore (gnu at toad.com) * glue4.c: Avoid includes. diff --git a/src/lib/Makefile.in b/src/lib/Makefile.in index 06a2a7bb5..075710f9c 100644 --- a/src/lib/Makefile.in +++ b/src/lib/Makefile.in @@ -1,7 +1,93 @@ CFLAGS = $(CCOPTS) $(DEFS) LDFLAGS = -g -all:: +##DOSBUILDTOP = .. +##DOS!include $(BUILDTOP)\config\windows.in + +all:: all-$(WHAT) + +all-unix:: + +clean:: clean-$(WHAT) + +clean-unix:: + $(RM) libkrb5.a libkdb5.a libcrypto.a + $(RM) libgssapi_krb5.a libdes425.a libkrb425.a + +clean-windows:: + $(RM) libkrb5.dll libkrb5.lib libkrb5.bak winsock.lib +# +# Windows stuff to make libkrb5.dll and libkrb5.lib. Currently it +# combines crypto, krb5 and the util/et directories. +# +CLIB = crypto\crypto.lib +KLIB = krb5\krb5.lib +ETLIB = $(BUILDTOP)\util\et\comerr.lib +WLIB = .\winsock.lib +LIBS = $(CLIB) $(KLIB) $(ETLIB) $(WLIB) + +# +# Fast: is a faster way to make things on the PC. Unfortunately it requires +# the unix utility sed so it can't be part of the final production release. +# +fast: + $(RM) libkrb5.lib libkrb5.dll + cd crypto + $(MAKE) -$(MFLAGS) LIBCMD=rem + libdir crypto.lib + cd ..\krb5 + $(MAKE) -$(MFLAGS) LIBCMD=rem + libdir krb5.lib + cd .. + cd $(BUILDTOP)\util\et + $(MAKE) -$(MFLAGS) + cd ..\..\lib + link /co /seg:400 /noe /nologo win_glue, libkrb5.dll,nul, \ + $(LIBS) ldllcew libw,libkrb5.def + rc /nologo /p /k libkrb5.dll + implib /nologo libkrb5.lib libkrb5.dll + +libkrb5.lib:: libkrb5.dll + implib /nologo librkb5.lib libkrb5.dll + +libkrb5.dll:: $(LIBS) libkrb5.def win_glue.obj + link /co /seg:400 /noe /nol win_glue, libkrb5.dll,nul, \ + $(LIBS) ldllcew libw,libkrb5.def + rc /nologo /p /k libkrb5.dll + +winsock.lib: winsock.def + implib /nologo winsock.lib winsock.def + +all-windows:: + cd crypto + @echo Making in lib\crypto + -$(MAKE) -$(MFLAGS) LIBCMD=$(LIBCMD) + cd ..\krb5 + @echo Making in lib\krb5 + -$(MAKE) -$(MFLAGS) LIBCMD=$(LIBCMD) + cd ..\gssapi + @echo Making in lib\gssapi + -$(MAKE) -$(MFLAGS) LIBCMD=$(LIBCMD) + cd ..\des425 + @echo Making in lib\des425 + -$(MAKE) -$(MFLAGS) LIBCMD=$(LIBCMD) + cd .. + +all-windows:: libkrb5.lib + +clean-windows:: + cd crypto + @echo Making clean in lib\crypto + -$(MAKE) -$(MFLAGS) clean + cd ..\krb5 + @echo Making clean in lib\krb5 + -$(MAKE) -$(MFLAGS) clean + cd ..\gssapi + @echo Making clean in lib\gssapi + -$(MAKE) -$(MFLAGS) clean + cd ..\des425 + @echo Making clean in lib\des425 + -$(MAKE) -$(MFLAGS) clean + cd .. + @echo Making clean locally -clean:: - $(RM) libkrb5.a libkdb5.a libcrypto.a libgssapi_krb5.a libdes425.a libkrb425.a diff --git a/src/lib/crypto/ChangeLog b/src/lib/crypto/ChangeLog index fc069cdb4..b84541918 100644 --- a/src/lib/crypto/ChangeLog +++ b/src/lib/crypto/ChangeLog @@ -1,3 +1,7 @@ +Wed Mar 15 20:23:17 1995 Keith Vetter (keithv@fusion.com) + + * Makefile.in: cleaned up for the PC + Tue Mar 14 17:31:01 1995 Keith Vetter (keithv@fusion.com) * Makefile.in: removed all DLL stuff--it now happens up a directory. diff --git a/src/lib/crypto/Makefile.in b/src/lib/crypto/Makefile.in index 63968b12f..78191b1d8 100644 --- a/src/lib/crypto/Makefile.in +++ b/src/lib/crypto/Makefile.in @@ -54,55 +54,56 @@ check-unix:: all-windows:: cd crc32 - @echo Making in ..\crc32 + @echo Making in crypto\crc32 -$(MAKE) -$(MFLAGS) LIBCMD=$(LIBCMD) cd ..\des - @echo Making in des + @echo Making in crypto\des -$(MAKE) -$(MFLAGS) LIBCMD=$(LIBCMD) cd ..\md4 - @echo Making in ..\md4 + @echo Making in crypto\md4 -$(MAKE) -$(MFLAGS) LIBCMD=$(LIBCMD) cd ..\md5 - @echo Making in ..\md5 + @echo Making in crypto\md5 -$(MAKE) -$(MFLAGS) LIBCMD=$(LIBCMD) cd ..\os - @echo Making in ..\os + @echo Making in crypto\os -$(MAKE) -$(MFLAGS) LIBCMD=$(LIBCMD) cd .. clean-windows:: cd crc32 - @echo Making clean in ..\crc32 + @echo Making clean in crypto\crc32 -$(MAKE) -$(MFLAGS) clean cd ..\des - @echo Making clean in des + @echo Making clean in crypto\des -$(MAKE) -$(MFLAGS) clean cd ..\md4 - @echo Making clean in ..\md4 + @echo Making clean in crypto\md4 -$(MAKE) -$(MFLAGS) clean cd ..\md5 - @echo Making clean in ..\md5 + @echo Making clean in crypto\md5 -$(MAKE) -$(MFLAGS) clean cd ..\os - @echo Making clean in ..\os + @echo Making clean in crypto\os -$(MAKE) -$(MFLAGS) clean cd .. - + @echo Making clean locally check-windows:: cd crc32 - @echo Making check in ..\crc32 + @echo Making check in crypto\crc32 -$(MAKE) -$(MFLAGS) check cd ..\des - @echo Making check in des + @echo Making check in crypto\des -$(MAKE) -$(MFLAGS) check cd ..\md4 - @echo Making check in ..\md4 + @echo Making check in crypto\md4 -$(MAKE) -$(MFLAGS) check cd ..\md5 - @echo Making check in ..\md5 + @echo Making check in crypto\md5 -$(MAKE) -$(MFLAGS) check cd ..\os - @echo Making check in ..\os + @echo Making check in crypto\os -$(MAKE) -$(MFLAGS) check cd .. + diff --git a/src/lib/gssapi/ChangeLog b/src/lib/gssapi/ChangeLog index 2bd94d756..4f010d12a 100644 --- a/src/lib/gssapi/ChangeLog +++ b/src/lib/gssapi/ChangeLog @@ -1,3 +1,7 @@ +Wed Mar 15 20:23:17 1995 Keith Vetter (keithv@fusion.com) + + * Makefile.in: cleaned up for the PC + Mon Feb 20 21:38:20 1995 Keith Vetter (keithv@fusion.com) * Makefile.in: made to work on the PC diff --git a/src/lib/gssapi/Makefile.in b/src/lib/gssapi/Makefile.in index 06c409113..17b1612ed 100644 --- a/src/lib/gssapi/Makefile.in +++ b/src/lib/gssapi/Makefile.in @@ -24,20 +24,20 @@ clean-unix:: all-windows:: cd generic - @echo Making in ..\generic + @echo Making in gssapi\generic -$(MAKE) -$(MFLAGS) LIB=$(LIB) cd ..\krb5 - @echo Making in krb5 + @echo Making in gssapi\krb5 -$(MAKE) -$(MFLAGS) LIB=$(LIB) cd .. clean-windows:: cd generic - @echo Making clean in ..\generic + @echo Making clean in gssapi\generic -$(MAKE) -$(MFLAGS) clean cd ..\krb5 - @echo Making clean in krb5 + @echo Making clean in gssapi\krb5 -$(MAKE) -$(MFLAGS) clean cd .. - + @echo Making clean locally diff --git a/src/lib/krb5/ChangeLog b/src/lib/krb5/ChangeLog index 5854c130e..2f3e0b628 100644 --- a/src/lib/krb5/ChangeLog +++ b/src/lib/krb5/ChangeLog @@ -1,3 +1,7 @@ +Wed Mar 15 20:23:17 1995 Keith Vetter (keithv@fusion.com) + + * Makefile.in: cleaned up for the PC + Wed Mar 15 12:26:21 1995 Keith Vetter (keithv@fusion.com) * Makefile.in: made so it recurses into the subdirs for the PC. diff --git a/src/lib/krb5/Makefile.in b/src/lib/krb5/Makefile.in index a9d85fb35..bd8358753 100644 --- a/src/lib/krb5/Makefile.in +++ b/src/lib/krb5/Makefile.in @@ -47,61 +47,61 @@ clean-windows:: all-windows:: cd ASN.1 - @echo Making in ASN.1 - -$(MAKE) -$(MFLAGS) LIBCMD="$(LIBCMD)" + @echo Making in lib\asn.1 + -$(MAKE) -$(MFLAGS) LIBCMD=$(LIBCMD) cd ..\CCACHE - @echo Making in CCACHE - -$(MAKE) -$(MFLAGS) LIBCMD="$(LIBCMD)" + @echo Making in lib\ccache + -$(MAKE) -$(MFLAGS) LIBCMD=$(LIBCMD) cd ..\ERROR_TA - @echo Making in ERROR_TA - -$(MAKE) -$(MFLAGS) LIBCMD="$(LIBCMD)" + @echo Making in lib\error_ta + -$(MAKE) -$(MFLAGS) LIBCMD=$(LIBCMD) cd ..\FREE - @echo Making in FREE - -$(MAKE) -$(MFLAGS) LIBCMD="$(LIBCMD)" + @echo Making in lib\free + -$(MAKE) -$(MFLAGS) LIBCMD=$(LIBCMD) cd ..\KEYTAB - @echo Making in KEYTAB - -$(MAKE) -$(MFLAGS) LIBCMD="$(LIBCMD)" + @echo Making in lib\keytab + -$(MAKE) -$(MFLAGS) LIBCMD=$(LIBCMD) cd ..\KRB - @echo Making in KRB - -$(MAKE) -$(MFLAGS) LIBCMD="$(LIBCMD)" + @echo Making in lib\krb + -$(MAKE) -$(MFLAGS) LIBCMD=$(LIBCMD) cd ..\OS - @echo Making in OS - -$(MAKE) -$(MFLAGS) LIBCMD="$(LIBCMD)" + @echo Making in lib\os + -$(MAKE) -$(MFLAGS) LIBCMD=$(LIBCMD) cd ..\POSIX - @echo Making in POSIX - -$(MAKE) -$(MFLAGS) LIBCMD="$(LIBCMD)" + @echo Making in lib\posix + -$(MAKE) -$(MFLAGS) LIBCMD=$(LIBCMD) cd ..\RCACHE - @echo Making in RCACHE - -$(MAKE) -$(MFLAGS) LIBCMD="$(LIBCMD)" + @echo Making in lib\rcache + -$(MAKE) -$(MFLAGS) LIBCMD=$(LIBCMD) cd .. clean-windows:: cd ASN.1 - @echo Making clean in ASN.1 + @echo Making clean in lib\asn.1 -$(MAKE) -$(MFLAGS) clean cd ..\CCACHE - @echo Making clean in CCACHE + @echo Making clean in lib\ccache -$(MAKE) -$(MFLAGS) clean cd ..\ERROR_TA - @echo Making clean in ERROR_TA + @echo Making clean in lib\error_ta -$(MAKE) -$(MFLAGS) clean cd ..\FREE - @echo Making clean in FREE + @echo Making clean in lib\free -$(MAKE) -$(MFLAGS) clean cd ..\KEYTAB - @echo Making clean in KEYTAB + @echo Making clean in lib\keytab -$(MAKE) -$(MFLAGS) clean cd ..\KRB - @echo Making clean in KRB + @echo Making clean in lib\krb -$(MAKE) -$(MFLAGS) clean cd ..\OS - @echo Making clean in OS + @echo Making clean in lib\os -$(MAKE) -$(MFLAGS) clean cd ..\POSIX - @echo Making clean in POSIX + @echo Making clean in lib\posix -$(MAKE) -$(MFLAGS) clean cd ..\RCACHE - @echo Making clean in RCACHE + @echo Making clean in lib\rcache -$(MAKE) -$(MFLAGS) clean cd .. @echo Making clean locally diff --git a/src/lib/krb5/ccache/ChangeLog b/src/lib/krb5/ccache/ChangeLog index 1738c1f01..6c836f48f 100644 --- a/src/lib/krb5/ccache/ChangeLog +++ b/src/lib/krb5/ccache/ChangeLog @@ -1,3 +1,7 @@ +Wed Mar 15 20:23:17 1995 Keith Vetter (keithv@fusion.com) + + * Makefile.in: cleaned up for the PC + Tue Mar 7 19:53:05 1995 Mark Eichin * configure.in: take out ISODE_DEFS. diff --git a/src/lib/krb5/ccache/Makefile.in b/src/lib/krb5/ccache/Makefile.in index 856726192..8ecc63f7a 100644 --- a/src/lib/krb5/ccache/Makefile.in +++ b/src/lib/krb5/ccache/Makefile.in @@ -19,7 +19,7 @@ all-unix:: all-windows:: cd FILE - @echo Making in CCACHE\FILE + @echo Making in ccache\file -$(MAKE) -$(MFLAGS) LIBCMD=$(LIBCMD) cd .. @@ -29,7 +29,8 @@ clean-unix:: clean-windows:: cd FILE - @echo Making clean in CCACHE\FILE + @echo Making clean in ccache\file -$(MAKE) -$(MFLAGS) clean cd .. - + @echo Making clean locally + diff --git a/src/lib/krb5/keytab/ChangeLog b/src/lib/krb5/keytab/ChangeLog index fd024cc2e..68a83b9f2 100644 --- a/src/lib/krb5/keytab/ChangeLog +++ b/src/lib/krb5/keytab/ChangeLog @@ -1,3 +1,7 @@ +Wed Mar 15 20:23:17 1995 Keith Vetter (keithv@fusion.com) + + * Makefile.in: cleaned up for the PC + Tue Mar 7 21:40:18 1995 Keith Vetter (keithv@fusion.com) * Makefile.in: changed library name for the PC. diff --git a/src/lib/krb5/keytab/Makefile.in b/src/lib/krb5/keytab/Makefile.in index 52312bfc3..659d94fcc 100644 --- a/src/lib/krb5/keytab/Makefile.in +++ b/src/lib/krb5/keytab/Makefile.in @@ -27,7 +27,7 @@ all-unix:: all-windows:: cd file - @echo Making in .\file + @echo Making in keytab\file -$(MAKE) -$(MFLAGS) LIBCMD=$(LIBCMD) cd .. @@ -37,6 +37,8 @@ clean-unix:: clean-windows:: cd file - @echo Making clean in .\file + @echo Making clean in keytab\file -$(MAKE) -$(MFLAGS) clean cd .. + @echo Making clean locally + diff --git a/src/lib/libkrb5.def b/src/lib/libkrb5.def new file mode 100644 index 000000000..74368eaf2 --- /dev/null +++ b/src/lib/libkrb5.def @@ -0,0 +1,391 @@ +;----------------------------- +; LIBKRB5.DEF - module definition file +;----------------------------- + +LIBRARY LIBKRB5 +DESCRIPTION 'DLL for Kerberos 5' +EXETYPE WINDOWS +CODE PRELOAD MOVEABLE DISCARDABLE +DATA PRELOAD MOVEABLE SINGLE +HEAPSIZE 8192 + +EXPORTS + WEP @1 RESIDENTNAME + LIBMAIN @2 + ASN12KRB5_BUF @3 + ASN1BUF_CREATE @4 + ASN1BUF_DESTROY @5 + ASN1BUF_ENSURE_SPACE @6 + ASN1BUF_EXPAND @7 + ASN1BUF_FREE @8 + ASN1BUF_HEX_UNPARSE @9 + ASN1BUF_IMBED @10 + ASN1BUF_INSERT_CHARSTRING @11 + ASN1BUF_INSERT_OCTET @12 + ASN1BUF_INSERT_OCTETSTRING @13 + ASN1BUF_LEN @14 + ASN1BUF_REMAINS @15 + ASN1BUF_REMOVE_CHARSTRING @16 + ASN1BUF_REMOVE_OCTET @17 + ASN1BUF_REMOVE_OCTETSTRING @18 + ASN1BUF_SIZE @19 + ASN1BUF_SYNC @20 + ASN1BUF_UNPARSE @21 + ASN1BUF_WRAP_DATA @22 + ASN1_DECODE_ADDRTYPE @23 + ASN1_DECODE_AP_OPTIONS @24 + ASN1_DECODE_AUTHDATATYPE @25 + ASN1_DECODE_AUTHDATA_ELT @26 + ASN1_DECODE_AUTHORIZATION_DATA @27 + ASN1_DECODE_CHARSTRING @28 + ASN1_DECODE_CHECKSUM @29 + ASN1_DECODE_CKSUMTYPE @30 + ASN1_DECODE_ENCRYPTED_DATA @31 + ASN1_DECODE_ENCRYPTION_KEY @32 + ASN1_DECODE_ENCTYPE @33 + ASN1_DECODE_ENC_KDC_REP_PART @34 + ASN1_DECODE_GENERALSTRING @35 + ASN1_DECODE_GENERALTIME @36 + ASN1_DECODE_HOST_ADDRESS @37 + ASN1_DECODE_HOST_ADDRESSES @38 + ASN1_DECODE_IA5STRING @39 + ASN1_DECODE_INT @40 + ASN1_DECODE_INT32 @41 + ASN1_DECODE_INTEGER @42 + ASN1_DECODE_KDC_OPTIONS @43 + ASN1_DECODE_KDC_REP @44 + ASN1_DECODE_KDC_REQ @45 + ASN1_DECODE_KDC_REQ_BODY @46 + ASN1_DECODE_KERBEROS_TIME @47 + ASN1_DECODE_KEYTYPE @48 + ASN1_DECODE_KRB5_FLAGS @49 + ASN1_DECODE_KRB_CRED_INFO @50 + ASN1_DECODE_KRB_SAFE_BODY @51 + ASN1_DECODE_KVNO @52 + ASN1_DECODE_LAST_REQ @53 + ASN1_DECODE_LAST_REQ_ENTRY @54 + ASN1_DECODE_MSGTYPE @55 + ASN1_DECODE_NULL @56 + ASN1_DECODE_OCTET @57 + ASN1_DECODE_OCTETSTRING @58 + ASN1_DECODE_PASSWDSEQUENCE @59 + ASN1_DECODE_PA_DATA @60 + ASN1_DECODE_PRINCIPAL_NAME @61 + ASN1_DECODE_PRINTABLESTRING @62 + ASN1_DECODE_REALM @63 + ASN1_DECODE_SEQUENCE_OF_ENCTYPE @64 + ASN1_DECODE_SEQUENCE_OF_KRB_CRED_INFO @65 + ASN1_DECODE_SEQUENCE_OF_PASSWDSEQUENCE @66 + ASN1_DECODE_SEQUENCE_OF_PA_DATA @67 + ASN1_DECODE_SEQUENCE_OF_TICKET @68 + ASN1_DECODE_TICKET @69 + ASN1_DECODE_TICKET_FLAGS @70 + ASN1_DECODE_TRANSITED_ENCODING @71 + ASN1_DECODE_UI_2 @72 + ASN1_DECODE_UI_4 @73 + ASN1_DECODE_UNSIGNED_INTEGER @74 + ASN1_ENCODE_AP_OPTIONS @75 + ASN1_ENCODE_AUTHORIZATION_DATA @76 + ASN1_ENCODE_CHARSTRING @77 + ASN1_ENCODE_CHECKSUM @78 + ASN1_ENCODE_ENCRYPTED_DATA @79 + ASN1_ENCODE_ENCRYPTION_KEY @80 + ASN1_ENCODE_ENC_KDC_REP_PART @81 + ASN1_ENCODE_GENERALSTRING @82 + ASN1_ENCODE_GENERALTIME @83 + ASN1_ENCODE_HOST_ADDRESS @84 + ASN1_ENCODE_HOST_ADDRESSES @85 + ASN1_ENCODE_IA5STRING @86 + ASN1_ENCODE_INTEGER @87 + ASN1_ENCODE_KDC_OPTIONS @88 + ASN1_ENCODE_KDC_REP @89 + ASN1_ENCODE_KDC_REQ @90 + ASN1_ENCODE_KDC_REQ_BODY @91 + ASN1_ENCODE_KERBEROS_TIME @92 + ASN1_ENCODE_KRB5_AUTHDATA_ELT @93 + ASN1_ENCODE_KRB5_FLAGS @94 + ASN1_ENCODE_KRB_CRED_INFO @95 + ASN1_ENCODE_KRB_SAFE_BODY @96 + ASN1_ENCODE_LAST_REQ @97 + ASN1_ENCODE_LAST_REQ_ENTRY @98 + ASN1_ENCODE_NULL @99 + ASN1_ENCODE_OCTETSTRING @100 + ASN1_ENCODE_PASSWDSEQUENCE @101 + ASN1_ENCODE_PA_DATA @102 + ASN1_ENCODE_PRINCIPAL_NAME @103 + ASN1_ENCODE_PRINTABLESTRING @104 + ASN1_ENCODE_REALM @105 + ASN1_ENCODE_SEQUENCE_OF_ENCTYPE @106 + ASN1_ENCODE_SEQUENCE_OF_KRB_CRED_INFO @107 + ASN1_ENCODE_SEQUENCE_OF_PASSWDSEQUENCE @108 + ASN1_ENCODE_SEQUENCE_OF_PA_DATA @109 + ASN1_ENCODE_SEQUENCE_OF_TICKET @110 + ASN1_ENCODE_TICKET @111 + ASN1_ENCODE_TICKET_FLAGS @112 + ASN1_ENCODE_TRANSITED_ENCODING @113 + ASN1_ENCODE_UI_4 @114 + ASN1_ENCODE_UNSIGNED_INTEGER @115 + ASN1_GET_ID @116 + ASN1_GET_LENGTH @117 + ASN1_GET_SEQUENCE @118 + ASN1_GET_TAG @119 + ASN1_KRB5_REALM_COPY @120 + ASN1_MAKE_ETAG @121 + ASN1_MAKE_ID @122 + ASN1_MAKE_LENGTH @123 + ASN1_MAKE_SEQUENCE @124 + ASN1_MAKE_SET @125 + ASN1_MAKE_STRING @126 + ASN1_MAKE_TAG @127 + DECODE_KRB5_AP_REP @128 + DECODE_KRB5_AP_REP_ENC_PART @129 + DECODE_KRB5_AP_REQ @130 + DECODE_KRB5_AS_REP @131 + DECODE_KRB5_AS_REQ @132 + DECODE_KRB5_AUTHDATA @133 + DECODE_KRB5_AUTHENTICATOR @134 + DECODE_KRB5_CRED @135 + DECODE_KRB5_ENCRYPTION_KEY @136 + DECODE_KRB5_ENC_CRED_PART @137 + DECODE_KRB5_ENC_KDC_REP_PART @138 + DECODE_KRB5_ENC_PRIV_PART @139 + DECODE_KRB5_ENC_TKT_PART @140 + DECODE_KRB5_ERROR @141 + DECODE_KRB5_KDC_REQ_BODY @142 + DECODE_KRB5_PRIV @143 + DECODE_KRB5_PWD_DATA @144 + DECODE_KRB5_PWD_SEQUENCE @145 + DECODE_KRB5_SAFE @146 + DECODE_KRB5_TGS_REP @147 + DECODE_KRB5_TGS_REQ @148 + DECODE_KRB5_TICKET @149 + ENCODE_KRB5_AP_REP @150 + ENCODE_KRB5_AP_REP_ENC_PART @151 + ENCODE_KRB5_AP_REQ @152 + ENCODE_KRB5_AS_REP @153 + ENCODE_KRB5_AS_REQ @154 + ENCODE_KRB5_AUTHDATA @155 + ENCODE_KRB5_AUTHENTICATOR @156 + ENCODE_KRB5_CRED @157 + ENCODE_KRB5_ENCRYPTION_KEY @158 + ENCODE_KRB5_ENC_CRED_PART @159 + ENCODE_KRB5_ENC_KDC_REP_PART @160 + ENCODE_KRB5_ENC_PRIV_PART @161 + ENCODE_KRB5_ENC_TKT_PART @162 + ENCODE_KRB5_ERROR @163 + ENCODE_KRB5_KDC_REQ_BODY @164 + ENCODE_KRB5_PRIV @165 + ENCODE_KRB5_PWD_DATA @166 + ENCODE_KRB5_PWD_SEQUENCE @167 + ENCODE_KRB5_SAFE @168 + ENCODE_KRB5_TGS_REP @169 + ENCODE_KRB5_TGS_REQ @170 + ENCODE_KRB5_TICKET @171 + GET_SECURID_PADATA @172 + GET_UNIXTIME_PADATA @173 + KEYTAB_KEYPROC @174 + KRB5_425_CONV_PRINCIPAL @175 + KRB5_524_CONV_PRINCIPAL @176 + KRB5_ADDRESS_COMPARE @177 + KRB5_ADDRESS_ORDER @178 + KRB5_ADDRESS_SEARCH @179 + KRB5_APPEND_ADDRESSES @180 + KRB5_AUTH_TO_REP @181 + KRB5_CHECK_TRANSITED_LIST @182 + KRB5_COPY_ADDRESSES @183 + KRB5_COPY_AUTHDATA @184 + KRB5_COPY_AUTHENTICATOR @185 + KRB5_COPY_CHECKSUM @186 + KRB5_COPY_CREDS @187 + KRB5_COPY_DATA @188 + KRB5_COPY_KEYBLOCK @189 + KRB5_COPY_KEYBLOCK_CONTENTS @190 + KRB5_COPY_PRINCIPAL @191 + KRB5_COPY_TICKET @192 + KRB5_DECODE_KDC_REP @193 + KRB5_DECRYPT_TKT_PART @194 + KRB5_ENCODE_KDC_REP @195 + KRB5_ENCRYPT_TKT_PART @196 + KRB5_FREE_ADDRESS @197 + KRB5_FREE_ADDRESSES @198 + KRB5_FREE_AP_REP @199 + KRB5_FREE_AP_REP_ENC_PART @200 + KRB5_FREE_AP_REQ @201 + KRB5_FREE_AUTHDATA @202 + KRB5_FREE_AUTHENTICATOR @203 + KRB5_FREE_AUTHENTICATOR_CONTENTS @204 + KRB5_FREE_CHECKSUM @205 + KRB5_FREE_CONTEXT @206 + KRB5_FREE_CRED @207 + KRB5_FREE_CREDS @208 + KRB5_FREE_CRED_CONTENTS @209 + KRB5_FREE_CRED_ENC_PART @210 + KRB5_FREE_ENC_KDC_REP_PART @211 + KRB5_FREE_ENC_TKT_PART @212 + KRB5_FREE_ERROR @213 + KRB5_FREE_KDC_REP @214 + KRB5_FREE_KDC_REQ @215 + KRB5_FREE_KEYBLOCK @216 + KRB5_FREE_LAST_REQ @217 + KRB5_FREE_PA_DATA @218 + KRB5_FREE_PRINCIPAL @219 + KRB5_FREE_PRIV @220 + KRB5_FREE_PRIV_ENC_PART @221 + KRB5_FREE_PWD_DATA @222 + KRB5_FREE_PWD_SEQUENCES @223 + KRB5_FREE_REALM_TREE @224 + KRB5_FREE_SAFE @225 + KRB5_FREE_TGT_CREDS @226 + KRB5_FREE_TICKET @227 + KRB5_FREE_TICKETS @228 + KRB5_FREE_TKT_AUTHENT @229 + KRB5_FULLADDR_ORDER @230 + KRB5_GENERATE_SEQ_NUMBER @231 + KRB5_GENERATE_SUBKEY @232 + KRB5_GET_CREDENTIALS @233 + KRB5_GET_CRED_FROM_KDC @234 + KRB5_GET_CRED_VIA_2TGT @235 + KRB5_GET_CRED_VIA_TGT @236 + KRB5_GET_DEFAULT_IN_TKT_ETYPES @237 + KRB5_GET_FOR_CREDS @238 + KRB5_GET_IN_TKT @239 + KRB5_GET_IN_TKT_WITH_KEYTAB @240 + KRB5_GET_IN_TKT_WITH_PASSWORD @241 + KRB5_GET_IN_TKT_WITH_SKEY @242 + KRB5_GET_SERVER_RCACHE @243 + KRB5_INIT_CONTEXT @244 + KRB5_INIT_ETS @245 + KRB5_KDC_REP_DECRYPT_PROC @246 + KRB5_KTFILEINT_CLOSE @247 + KRB5_KTFILEINT_DELETE_ENTRY @248 + KRB5_KTFILEINT_FIND_SLOT @249 + KRB5_KTFILEINT_INTERNAL_READ_ENTRY @250 + KRB5_KTFILEINT_OPENR @251 + KRB5_KTFILEINT_OPENW @252 + KRB5_KTFILEINT_READ_ENTRY @253 + KRB5_KTFILEINT_SIZE_ENTRY @254 + KRB5_KTFILEINT_WRITE_ENTRY @255 + KRB5_KTFILE_ADD @256 + KRB5_KTFILE_CLOSE @257 + KRB5_KTFILE_END_GET @258 + KRB5_KTFILE_GET_ENTRY @259 + KRB5_KTFILE_GET_NAME @260 + KRB5_KTFILE_GET_NEXT @261 + KRB5_KTFILE_REMOVE @262 + KRB5_KTFILE_RESOLVE @263 + KRB5_KTFILE_START_SEQ_GET @264 + KRB5_KTFILE_WRESOLVE @265 + KRB5_KT_ADD_ENTRY @266 + KRB5_KT_DEFAULT @267 + KRB5_KT_FREE_ENTRY @268 + KRB5_KT_READ_SERVICE_KEY @269 + KRB5_KT_REGISTER @270 + KRB5_KT_REMOVE_ENTRY @271 + KRB5_KT_RESOLVE @272 + KRB5_MK_CRED @273 + KRB5_MK_ERROR @274 + KRB5_MK_PRIV @275 + KRB5_MK_REP @276 + KRB5_MK_REQ @277 + KRB5_MK_REQ_EXTENDED @278 + KRB5_MK_SAFE @279 + KRB5_OBTAIN_PADATA @280 + KRB5_PARSE_NAME @281 + KRB5_PRINCIPAL2SALT @282 + KRB5_PRINCIPAL2SALT_INTERNAL @283 + KRB5_PRINCIPAL2SALT_NOREALM @284 + KRB5_PRINCIPAL_COMPARE @285 + KRB5_RC_DEFAULT @286 + KRB5_RC_DEFAULT_NAME @287 + KRB5_RC_DEFAULT_TYPE @288 + KRB5_RC_DFL_CLOSE @289 + KRB5_RC_DFL_CLOSE_NO_FREE @290 + KRB5_RC_DFL_DESTROY @291 + KRB5_RC_DFL_EXPUNGE @292 + KRB5_RC_DFL_GET_NAME @293 + KRB5_RC_DFL_GET_SPAN @294 + KRB5_RC_DFL_INIT @295 + KRB5_RC_DFL_RECOVER @296 + KRB5_RC_DFL_RESOLVE @297 + KRB5_RC_DFL_STORE @298 + KRB5_RC_FREE_ENTRY @299 + KRB5_RC_GET_TYPE @300 + KRB5_RC_IO_CLOSE @301 + KRB5_RC_IO_CREAT @302 + KRB5_RC_IO_DESTROY @303 + KRB5_RC_IO_MARK @304 + KRB5_RC_IO_MOVE @305 + KRB5_RC_IO_OPEN @306 + KRB5_RC_IO_READ @307 + KRB5_RC_IO_SIZE @308 + KRB5_RC_IO_SYNC @309 + KRB5_RC_IO_UNMARK @310 + KRB5_RC_IO_WRITE @311 + KRB5_RC_REGISTER_TYPE @312 + KRB5_RC_RESOLVE_FULL @313 + KRB5_RC_RESOLVE_TYPE @314 + KRB5_RD_CRED @315 + KRB5_RD_ERROR @316 + KRB5_RD_PRIV @317 + KRB5_RD_REP @318 + KRB5_RD_REQ @319 + KRB5_RD_REQ_DECODED @320 + KRB5_RD_REQ_SIMPLE @321 + KRB5_RD_SAFE @322 + KRB5_REALM_COMPARE @323 + KRB5_RECVAUTH @324 + KRB5_SENDAUTH @325 + KRB5_SEND_TGS @326 + KRB5_SET_DEFAULT_IN_TKT_ETYPES @327 + KRB5_TGTNAME @328 + KRB5_UNPARSE_NAME @329 + KRB5_UNPARSE_NAME_EXT @330 + KRB5_VERIFY_PADATA @331 + KRB5_WALK_REALM_TREE @332 + PWD_KEYPROC @333 + SKEY_KEYPROC @334 + VERIFY_SECURID_PADATA @335 + VERIFY_UNIXTIME_PADATA @336 + KRB5_SNAME_TO_PRINCIPAL @337 +;Crypto routines + CRC32_SUM_FUNC @338 + KRB5_RANDOM_CONFOUNDER @339 + MAKE_KEY_SCHED @340 + MD4_CRYPTO_SUM_FUNC @341 + MD4_SUM_FUNC @342 + MD4FINAL @343 + MD4INIT @344 + MD4UPDATE @345 + MD5_CRYPTO_SUM_FUNC @346 + MD5_SUM_FUNC @347 + MD5FINAL @348 + MD5INIT @349 + MD5UPDATE @350 + MIT_DES_CBC_CHECKSUM @351 + MIT_DES_CBC_CKSUM @352 + MIT_DES_CBC_ENCRYPT @353 + MIT_DES_CHECK_KEY_PARITY @354 + MIT_DES_CRC_DECRYPT_FUNC @355 + MIT_DES_CRC_ENCRYPT_FUNC @356 + MIT_DES_ECB_ENCRYPT @357 + MIT_DES_FINISH_KEY @358 + MIT_DES_FINISH_RANDOM_KEY @359 + MIT_DES_FIXUP_KEY_PARITY @360 + MIT_DES_GENERATE_RANDOM_BLOCK @361 + MIT_DES_INIT_RANDOM_KEY @362 + MIT_DES_INIT_RANDOM_NUMBER_GENERATOR @363 + MIT_DES_IS_WEAK_KEY @364 + MIT_DES_KEY_SCHED @365 + MIT_DES_MD5_DECRYPT_FUNC @366 + MIT_DES_MD5_ENCRYPT_FUNC @367 + MIT_DES_NEW_RANDOM_KEY @368 + MIT_DES_PROCESS_KEY @369 + MIT_DES_RANDOM_KEY @370 + MIT_DES_SET_RANDOM_GENERATOR_SEED @371 + MIT_DES_SET_SEQUENCE_NUMBER @372 + MIT_DES_STRING_TO_KEY @373 + MIT_RAW_DES_DECRYPT_FUNC @374 + MIT_RAW_DES_ENCRYPT_FUNC @375 +;Com_err routines + ERROR_MESSAGE @379 + _com_err @380 diff --git a/src/lib/win_glue.c b/src/lib/win_glue.c new file mode 100644 index 000000000..ae4947238 --- /dev/null +++ b/src/lib/win_glue.c @@ -0,0 +1,54 @@ +/* + * WinSock support. + * + * Do the WinSock initialization call, keeping all the hair here. + * + * This routine is called by SOCKET_INITIALIZE in include/c-windows.h. + * The code is pretty much copied from winsock.txt from winsock-1.1, + * available from: + * ftp://sunsite.unc.edu/pub/micro/pc-stuff/ms-windows/winsock/winsock-1.1 + */ + +/* We can't include winsock.h directly because of /Za (stdc) options */ +#define NEED_SOCKETS +#include "krb5.h" + +int +win_socket_initialize() +{ + WORD wVersionRequested; + WSADATA wsaData; + int err; + + wVersionRequested = 0x0101; /* We need version 1.1 */ + + err = WSAStartup (wVersionRequested, &wsaData); + if (err != 0) + return err; /* Library can't initialize */ + + if (wVersionRequested != wsaData.wVersion) { + /* DLL couldn't support our version of the spec */ + WSACleanup (); + return -104; /* FIXME -- better error? */ + } + + return 0; +} + +BOOL CALLBACK +LibMain (hInst, wDataSeg, cbHeap, CmdLine) +HINSTANCE hInst; +WORD wDataSeg; +WORD cbHeap; +LPSTR CmdLine; +{ + win_socket_initialize (); + return 1; +} + +int CALLBACK __export +WEP(nParam) + int nParam; +{ + return 1; +} diff --git a/src/lib/winsock.def b/src/lib/winsock.def new file mode 100644 index 000000000..cada77985 --- /dev/null +++ b/src/lib/winsock.def @@ -0,0 +1,90 @@ +; +; File: winsock.def +; System: MS-Windows 3.x +; Summary: Module definition file for Windows Sockets DLL. +; +; This file is from +; ftp://sunsite.unc.edu/pub/micro/pc-stuff/ms-windows/winsock/winsock-1.1 +; except that we made all the routine names uppercase, to match what +; MicroSoft C does when you declare an interface routine PASCAL +; (the way all these routines are declared in .../include/winsock.h). +; + +LIBRARY WINSOCK ; Application's module name + +DESCRIPTION 'BSD Socket API for Windows' + +EXETYPE WINDOWS ; required for all windows applications + +STUB 'WINSTUB.EXE' ; generates error message if application + ; is run without Windows + +;CODE can be FIXED in memory because of potential upcalls +CODE PRELOAD FIXED + +;DATA must be SINGLE and at a FIXED location since this is a DLL +DATA PRELOAD FIXED SINGLE + +HEAPSIZE 1024 +STACKSIZE 16384 + +; All functions that will be called by any Windows routine +; must be exported. Any additional exports beyond those defined +; here must have ordinal numbers 1000 or above. + +EXPORTS + ACCEPT @1 + BIND @2 + CLOSESOCKET @3 + CONNECT @4 + GETPEERNAME @5 + GETSOCKNAME @6 + GETSOCKOPT @7 + HTONL @8 + HTONS @9 + INET_ADDR @10 + INET_NTOA @11 + IOCTLSOCKET @12 + LISTEN @13 + NTOHL @14 + NTOHS @15 + RECV @16 + RECVFROM @17 + SELECT @18 + SEND @19 + SENDTO @20 + SETSOCKOPT @21 + SHUTDOWN @22 + SOCKET @23 + + GETHOSTBYADDR @51 + GETHOSTBYNAME @52 + GETPROTOBYNAME @53 + GETPROTOBYNUMBER @54 + GETSERVBYNAME @55 + GETSERVBYPORT @56 + GETHOSTNAME @57 + + WSAASYNCSELECT @101 + WSAASYNCGETHOSTBYADDR @102 + WSAASYNCGETHOSTBYNAME @103 + WSAASYNCGETPROTOBYNUMBER @104 + WSAASYNCGETPROTOBYNAME @105 + WSAASYNCGETSERVBYPORT @106 + WSAASYNCGETSERVBYNAME @107 + WSACANCELASYNCREQUEST @108 + WSASETBLOCKINGHOOK @109 + WSAUNHOOKBLOCKINGHOOK @110 + WSAGETLASTERROR @111 + WSASETLASTERROR @112 + WSACANCELBLOCKINGCALL @113 + WSAISBLOCKING @114 + WSASTARTUP @115 + WSACLEANUP @116 + + __WSAFDISSET @151 + + WEP @500 RESIDENTNAME + +;eof +