Commit Graph

25623 Commits

Author SHA1 Message Date
Asanka Herath
fbf3864422 Windows: Script for generating exports lists for shim layer
This script analyzes the export lists for MIT Kerberos for Windows,
export lists for Heimdal DLLs and the symbol lists from the shim code
and generates the appropriate export definition (.DEF) files.

.DEF files that are generated are committed to the source tree because
otherwise having MIT KfW DLLs around would be a build requirement.  If
there is any change to the shim code, the export .DEF files should be
rebuilt using:

  nmake /f NTMakefile DEV=1 gen-defs

.. from the packages/windows/kfw_shim directory.  The new .DEF files
should then be commited.
2010-08-20 13:14:18 -04:00
Asanka Herath
8793628306 Windows: Shim library for ABI compatibility with MIT KfW
The shim code creates DLLs that intend to be ABI compatible with MIT
Kerberos for Windows DLLs.  At its current state, the shim isn't
complete and there are multiple functions that are missing.
2010-08-20 13:14:17 -04:00
Asanka Herath
c111770aed Windows: Use pushd and popd for recursive builds
This makes it possible to recurse into arbitrary directories instead
of just subdirectories.
2010-08-20 13:14:17 -04:00
Asanka Herath
7843607a49 Windows: Use 32-bit time_t on 32-bit builds 2010-08-20 13:14:16 -04:00
Asanka Herath
0f214582d5 Windows: Fix manifest attribute case 2010-08-20 13:14:16 -04:00
Asanka Herath
63597ca3fc Windows: Make application manifest available everywhere 2010-08-20 13:14:15 -04:00
Asanka Herath
08b297b785 Windows: Rename libgssapi.dll -> gssapi.dll 2010-08-20 13:14:15 -04:00
Asanka Herath
f88854effa Windows: Correct calling convention for krb5_free_unparsed_name() 2010-08-20 13:14:14 -04:00
Asanka Herath
225e142ac5 Windows: Use correct calling convention for com_err 2010-08-20 13:14:13 -04:00
Asanka Herath
4ea2e07b21 Windows: Build and validate manifests
Fix manifests to include manifestVersion attribute and introduce an
application manifest.  The application manifest will be included in
the eventual SDK so that applications that depend on Heimdal can
correctly reference the Heimdal assemblies.
2010-08-20 13:14:13 -04:00
Asanka Herath
0730c0b98f Windows: ASN1_LIB needs to be defined for Heimdal library 2010-08-20 13:14:12 -04:00
Asanka Herath
8d40619564 Windows: Add krb5_cc_copy_creds to the exports list 2010-08-20 13:14:12 -04:00
Asanka Herath
d98fd799c3 GSSAPI_DEPRECATED needs to be before the return type 2010-08-20 13:14:11 -04:00
Asanka Herath
3d83131be8 Export and calling convention annotation for lib/asn1 2010-08-20 13:14:10 -04:00
Asanka Herath
5dcc605f6b Fix calling conventions for Windows 2010-08-20 13:14:10 -04:00
Asanka Herath
12638c01a9 Windows: Build shared side-by-side assemblies for Heimdal 2010-08-20 13:10:50 -04:00
Asanka Herath
b3b43ff9cf Windows: Update version and copyright 2010-08-20 13:09:52 -04:00
Asanka Herath
2a2a662eca roken/parse_time-test.c: Don't pass in incorrect buffer size 2010-08-20 13:09:51 -04:00
Asanka Herath
aee2a6443d roken/test-mini_inetd.c: Use of rk_SOCK_INIT() etc. 2010-08-20 13:09:51 -04:00
Asanka Herath
745d9bcae7 Windows: Pull required declarations into roken.h.in 2010-08-20 13:09:50 -04:00
Asanka Herath
31b2dc9c48 roken/mini_inetd.c: Don't check against FD_SETSIZE unless necessary 2010-08-20 13:09:50 -04:00
Asanka Herath
63e3aedf8c Windows: Fix lib/hcrypto tests 2010-08-20 13:09:49 -04:00
Asanka Herath
481fe5bcf6 Windows: lib/roken tests now depend on DNSAPI 2010-08-20 13:09:48 -04:00
Asanka Herath
e3ce1ff01b lib/wind/test-normalize.c: Dump failing vectors
If a Unicode string fails a normalization test, dump it so we can
figure out why its failing.
2010-08-20 13:09:48 -04:00
Asanka Herath
2730cfc919 lib/hcrypto/test_*: Use "rb" when opening binary files 2010-08-20 13:09:47 -04:00
Asanka Herath
e88a1d83c6 test_crypto.in: Also test w32crypto 2010-08-20 13:09:47 -04:00
Asanka Herath
eafb187cd0 Declare RAND_w32crypto_method() 2010-08-20 13:09:46 -04:00
Asanka Herath
9b466f35fb Windows: RAND_file_name() should look up profile path
If RANDFILE and HOME environment variables aren't defined, failover to
looking up the user's profile path.  In particular, default to a file
named .rnd in the user's local (non-roamin) application data
directory.
2010-08-20 13:09:45 -04:00
Asanka Herath
12909ec109 lib/wind: Canonical ordering can't use unstable sort 2010-08-20 13:09:45 -04:00
Asanka Herath
7af1f40258 hcrypto/test_rand.c: Add w32crypto method
Also make it non-fatal to request a method that is unsupported.  This
makes it possible to only test methods that we are compiling.
2010-08-20 13:09:44 -04:00
Asanka Herath
f807cb8152 Windows: Update exports 2010-08-20 13:07:58 -04:00
Asanka Herath
ede3437ced Windows: Fix test on lib/editline 2010-08-20 13:06:58 -04:00
Asanka Herath
6ab44f06a3 Windows: Fix tests in lib/asn1 2010-08-20 13:06:57 -04:00
Asanka Herath
ac26475f2c Roll back asn1/gen_encode.c type safety patch 2010-08-20 13:06:57 -04:00
Asanka Herath
641eab32d8 Windows: Revise build of tools in lib 2010-08-20 13:06:56 -04:00
Asanka Herath
efd02d929a Windows: No Fortuna method 2010-08-20 13:06:55 -04:00
Asanka Herath
ba44354336 Windows: Check exported symbols
During a test run, cross check the Windows exports list against the
version-script files.  For the test to pass, all symbols on either
list should be accounted for.

If there are symbols that are specific to Windows or symbols that are
not included on Windows, they should be annotated in the .def file as
follows:

    ;!  non_windows_symbol

    	common_symbol

        windows_only_symbol ;!
2010-08-20 13:06:55 -04:00
Asanka Herath
cdcdc5cad5 Windows: Version information for binaries 2010-08-20 13:06:54 -04:00
Asanka Herath
d83611238a Windows: Build a single heimdal.dll
Heimdal.dll is a combination of libasn1, libwind, libhcrypto, libhx509
and libkrb5.
2010-08-20 13:06:54 -04:00
Asanka Herath
ea4d8dbfdb Windows: Use EXEPREP and DLLPREP macros for processing binaries
Once DLLs and EXEs are built, they need to have their manifests
processed and signed.  These steps are encapsulated in the EXEPREP and
DLLPREP Makefile macros.  Use them instead of invoking each processing
macro individually.
2010-08-20 13:04:06 -04:00
Asanka Herath
0d09c879f3 Reduce compiler warnings on Windows 2010-08-20 13:04:06 -04:00
Asanka Herath
f456b70013 Relocate roken WinSock declarations 2010-08-20 13:03:41 -04:00
Asanka Herath
04a7eaa170 Call ioctlsocket() indirectly
We were calling ioctlsocket() through a macro.  However, due to type
safety issues, we have to call it indirectly through rk_SOCK_IOCTL().
2010-08-20 13:03:40 -04:00
Asanka Herath
6b0baa2a8d Fix call to WSAStringToAddress()
String argument to WSAStringToAddress() is not const, while argument
to inet_pton() is.  Create a non-const string for the purpose of
calling WSAStringToAddress()
2010-08-20 13:03:40 -04:00
Asanka Herath
3a8922fe2d Change return type of checksum_type::checksum
struct checksum_type::checksum had a return value of krb5_enctype,
even though implementations returned krb5_error_code.  Change
declaration to match implementation.
2010-08-20 13:03:39 -04:00
Asanka Herath
381e946b9f Disable warnings we don't care about on Windows
We may care about them later, but for now we need to cut down on
noise.
2010-08-20 13:03:39 -04:00
Asanka Herath
5f87ea3bbf Let dlfcn.h return a function pointer on Windows 2010-08-20 13:03:38 -04:00
Asanka Herath
24cbddd4b9 Resolve warnings on Windows
Appease the compiler by resolving some of the reported warnings,
including:

- Control paths that don't return.

- Potentially uninitialized variables.

- Unused local variables.

- Unreachable code.

- Type safety.

- Synchronize declarations with definitions for functions.
2010-08-20 13:03:38 -04:00
Asanka Herath
869e970f5d Use rk_socket_t in lib/kadm5/init_c.c 2010-08-20 13:03:37 -04:00
Asanka Herath
dba793110b Fix unused variable on Windows for softp11.c 2010-08-20 13:03:36 -04:00