diff -uNr gnutls-1.2.8/doc/examples/ex-cert-select.c gnutls-20050919+win32_patches/doc/examples/ex-cert-select.c --- gnutls-1.2.8/doc/examples/ex-cert-select.c 2005-08-11 02:23:02.000000000 +0200 +++ gnutls-20050919+win32_patches/doc/examples/ex-cert-select.c 2005-09-21 18:48:54.391989000 +0200 @@ -3,11 +3,14 @@ #include #include #include -#include -#include -#include +#ifdef _WIN32 +# include +#else +# include +# include +# include +#endif #include -#include #include #include #include @@ -37,38 +40,33 @@ gnutls_x509_privkey_t key; /* Helper functions to load a certificate and key - * files into memory. They use mmap for simplicity. + * files into memory. */ -static gnutls_datum_t -mmap_file (const char *file) +static gnutls_datum load_file(const char *file) { - int fd; - gnutls_datum_t mmaped_file = { NULL, 0 }; - struct stat stat_st; + FILE *f; + gnutls_datum loaded_file = { NULL, 0 }; + long filelen; void *ptr; - fd = open (file, 0); - if (fd == -1) - return mmaped_file; - - fstat (fd, &stat_st); - - ptr = mmap (NULL, stat_st.st_size, PROT_READ, MAP_SHARED, fd, 0); - close (fd); - - if (ptr == MAP_FAILED) - return mmaped_file; - - mmaped_file.data = ptr; - mmaped_file.size = stat_st.st_size; + if (!(f = fopen(file, "r")) + || fseek(f, 0, SEEK_END) != 0 + || (filelen = ftell(f)) < 0 + || fseek(f, 0, SEEK_SET) != 0 + || !(ptr = malloc((size_t)filelen)) + || fread(ptr, 1, (size_t)filelen, f) < (size_t)filelen) + { + return loaded_file; + } - return mmaped_file; + loaded_file.data = ptr; + loaded_file.size = (unsigned int)filelen; + return loaded_file; } -static void -munmap_file (gnutls_datum_t data) +static void unload_file(gnutls_datum data) { - munmap (data.data, data.size); + free(data.data); } /* Load the certificate and the private key. @@ -79,7 +77,7 @@ int ret; gnutls_datum_t data; - data = mmap_file (CERT_FILE); + data = load_file (CERT_FILE); if (data.data == NULL) { fprintf (stderr, "*** Error loading cert file.\n"); @@ -95,9 +93,9 @@ exit (1); } - munmap_file (data); + unload_file (data); - data = mmap_file (KEY_FILE); + data = load_file (KEY_FILE); if (data.data == NULL) { fprintf (stderr, "*** Error loading key file.\n"); @@ -114,7 +112,7 @@ exit (1); } - munmap_file (data); + unload_file (data); } diff -uNr gnutls-1.2.8/doc/examples/ex-client1.c gnutls-20050919+win32_patches/doc/examples/ex-client1.c --- gnutls-1.2.8/doc/examples/ex-client1.c 2005-08-11 02:23:02.000000000 +0200 +++ gnutls-20050919+win32_patches/doc/examples/ex-client1.c 2005-09-21 18:59:29.431989000 +0200 @@ -3,9 +3,13 @@ #include #include #include -#include -#include -#include +#ifdef _WIN32 +# include +#else +# include +# include +# include +#endif #include #include diff -uNr gnutls-1.2.8/doc/examples/ex-client2.c gnutls-20050919+win32_patches/doc/examples/ex-client2.c --- gnutls-1.2.8/doc/examples/ex-client2.c 2005-08-13 02:23:03.000000000 +0200 +++ gnutls-20050919+win32_patches/doc/examples/ex-client2.c 2005-09-21 19:00:00.451989000 +0200 @@ -3,9 +3,13 @@ #include #include #include -#include -#include -#include +#ifdef _WIN32 +# include +#else +# include +# include +# include +#endif #include #include diff -uNr gnutls-1.2.8/doc/examples/ex-serv1.c gnutls-20050919+win32_patches/doc/examples/ex-serv1.c --- gnutls-1.2.8/doc/examples/ex-serv1.c 2005-08-11 02:23:02.000000000 +0200 +++ gnutls-20050919+win32_patches/doc/examples/ex-serv1.c 2005-09-21 19:48:40.681989000 +0200 @@ -3,9 +3,13 @@ #include #include #include -#include -#include -#include +#ifdef _WIN32 +# include +#else +# include +# include +# include +#endif #include #include #include @@ -126,8 +130,12 @@ sd = accept (listen_sd, (SA *) & sa_cli, &client_len); printf ("- connection from %s, port %d\n", - inet_ntop (AF_INET, &sa_cli.sin_addr, topbuf, - sizeof (topbuf)), ntohs (sa_cli.sin_port)); +#ifdef _WIN32 + inet_ntoa(sa_cli.sin_addr), +#else + inet_ntop (AF_INET, &sa_cli.sin_addr, topbuf, sizeof (topbuf)), +#endif + ntohs (sa_cli.sin_port)); gnutls_transport_set_ptr (session, (gnutls_transport_ptr_t) sd); ret = gnutls_handshake (session); @@ -147,7 +155,7 @@ i = 0; for (;;) { - bzero (buffer, MAX_BUF + 1); + memset (buffer, 0, MAX_BUF + 1); ret = gnutls_record_recv (session, buffer, MAX_BUF); if (ret == 0) diff -uNr gnutls-1.2.8/doc/examples/ex-serv-anon.c gnutls-20050919+win32_patches/doc/examples/ex-serv-anon.c --- gnutls-1.2.8/doc/examples/ex-serv-anon.c 2005-08-11 02:23:02.000000000 +0200 +++ gnutls-20050919+win32_patches/doc/examples/ex-serv-anon.c 2005-09-21 19:50:01.971989000 +0200 @@ -3,9 +3,13 @@ #include #include #include -#include -#include -#include +#ifdef _WIN32 +# include +#else +# include +# include +# include +#endif #include #include #include @@ -111,8 +115,12 @@ sd = accept (listen_sd, (SA *) & sa_cli, &client_len); printf ("- connection from %s, port %d\n", - inet_ntop (AF_INET, &sa_cli.sin_addr, topbuf, - sizeof (topbuf)), ntohs (sa_cli.sin_port)); +#ifdef _WIN32 + inet_ntoa(sa_cli.sin_addr), +#else + inet_ntop (AF_INET, &sa_cli.sin_addr, topbuf, sizeof (topbuf)), +#endif + ntohs (sa_cli.sin_port)); gnutls_transport_set_ptr (session, (gnutls_transport_ptr_t) sd); ret = gnutls_handshake (session); @@ -132,7 +140,7 @@ i = 0; for (;;) { - bzero (buffer, MAX_BUF + 1); + memset (buffer, 0, MAX_BUF + 1); ret = gnutls_record_recv (session, buffer, MAX_BUF); if (ret == 0) diff -uNr gnutls-1.2.8/doc/examples/ex-serv-export.c gnutls-20050919+win32_patches/doc/examples/ex-serv-export.c --- gnutls-1.2.8/doc/examples/ex-serv-export.c 2005-08-11 02:23:02.000000000 +0200 +++ gnutls-20050919+win32_patches/doc/examples/ex-serv-export.c 2005-09-21 19:51:05.311989000 +0200 @@ -3,9 +3,13 @@ #include #include #include -#include -#include -#include +#ifdef _WIN32 +# include +#else +# include +# include +# include +#endif #include #include #include @@ -171,8 +175,12 @@ sd = accept (listen_sd, (SA *) & sa_cli, &client_len); printf ("- connection from %s, port %d\n", - inet_ntop (AF_INET, &sa_cli.sin_addr, topbuf, - sizeof (topbuf)), ntohs (sa_cli.sin_port)); +#ifdef _WIN32 + inet_ntoa(sa_cli.sin_addr), +#else + inet_ntop (AF_INET, &sa_cli.sin_addr, topbuf, sizeof (topbuf)), +#endif + ntohs (sa_cli.sin_port)); gnutls_transport_set_ptr (session, (gnutls_transport_ptr_t) sd); ret = gnutls_handshake (session); @@ -191,7 +199,7 @@ i = 0; for (;;) { - bzero (buffer, MAX_BUF + 1); + memset (buffer, 0, MAX_BUF + 1); ret = gnutls_record_recv (session, buffer, MAX_BUF); if (ret == 0) diff -uNr gnutls-1.2.8/doc/examples/ex-serv-pgp.c gnutls-20050919+win32_patches/doc/examples/ex-serv-pgp.c --- gnutls-1.2.8/doc/examples/ex-serv-pgp.c 2005-08-11 02:23:02.000000000 +0200 +++ gnutls-20050919+win32_patches/doc/examples/ex-serv-pgp.c 2005-09-21 19:52:19.831989000 +0200 @@ -3,9 +3,13 @@ #include #include #include -#include -#include -#include +#ifdef _WIN32 +# include +#else +# include +# include +# include +#endif #include #include #include @@ -130,8 +134,12 @@ sd = accept (listen_sd, (SA *) & sa_cli, &client_len); printf ("- connection from %s, port %d\n", - inet_ntop (AF_INET, &sa_cli.sin_addr, topbuf, - sizeof (topbuf)), ntohs (sa_cli.sin_port)); +#ifdef _WIN32 + inet_ntoa(sa_cli.sin_addr), +#else + inet_ntop (AF_INET, &sa_cli.sin_addr, topbuf, sizeof (topbuf)), +#endif + ntohs (sa_cli.sin_port)); gnutls_transport_set_ptr (session, (gnutls_transport_ptr_t) sd); ret = gnutls_handshake (session); @@ -151,7 +159,7 @@ i = 0; for (;;) { - bzero (buffer, MAX_BUF + 1); + memset (buffer, 0, MAX_BUF + 1); ret = gnutls_record_recv (session, buffer, MAX_BUF); if (ret == 0) diff -uNr gnutls-1.2.8/doc/examples/ex-serv-srp.c gnutls-20050919+win32_patches/doc/examples/ex-serv-srp.c --- gnutls-1.2.8/doc/examples/ex-serv-srp.c 2005-08-11 02:23:02.000000000 +0200 +++ gnutls-20050919+win32_patches/doc/examples/ex-serv-srp.c 2005-09-21 19:53:15.651989000 +0200 @@ -3,9 +3,13 @@ #include #include #include -#include -#include -#include +#ifdef _WIN32 +# include +#else +# include +# include +# include +#endif #include #include #include @@ -115,8 +119,12 @@ sd = accept (listen_sd, (SA *) & sa_cli, &client_len); printf ("- connection from %s, port %d\n", - inet_ntop (AF_INET, &sa_cli.sin_addr, topbuf, - sizeof (topbuf)), ntohs (sa_cli.sin_port)); +#ifdef _WIN32 + inet_ntoa(sa_cli.sin_addr), +#else + inet_ntop (AF_INET, &sa_cli.sin_addr, topbuf, sizeof (topbuf)), +#endif + ntohs (sa_cli.sin_port)); gnutls_transport_set_ptr (session, (gnutls_transport_ptr_t) sd); ret = gnutls_handshake (session); @@ -135,7 +143,7 @@ i = 0; for (;;) { - bzero (buffer, MAX_BUF + 1); + memset (buffer, 0, MAX_BUF + 1); ret = gnutls_record_recv (session, buffer, MAX_BUF); if (ret == 0) diff -uNr gnutls-1.2.8/doc/examples/tcp.c gnutls-20050919+win32_patches/doc/examples/tcp.c --- gnutls-1.2.8/doc/examples/tcp.c 2005-08-12 12:13:40.000000000 +0200 +++ gnutls-20050919+win32_patches/doc/examples/tcp.c 2005-09-21 18:58:36.201989000 +0200 @@ -2,9 +2,14 @@ #include #include #include -#include -#include -#include +#ifdef _WIN32 +# include +# define SHUT_RDWR SD_BOTH +#else +# include +# include +# include +#endif #include #define SA struct sockaddr @@ -27,7 +32,11 @@ memset (&sa, '\0', sizeof (sa)); sa.sin_family = AF_INET; sa.sin_port = htons (atoi (PORT)); +#ifdef _WIN32 + sa.sin_addr.s_addr = inet_addr(SERVER); +#else inet_pton (AF_INET, SERVER, &sa.sin_addr); +#endif err = connect (sd, (SA *) & sa, sizeof (sa)); if (err < 0)