diff options
author | Christian Grothoff <christian@grothoff.org> | 2012-12-13 09:22:15 +0000 |
---|---|---|
committer | Christian Grothoff <christian@grothoff.org> | 2012-12-13 09:22:15 +0000 |
commit | 23bbdf1b43cc34d3d52f6b342a6122198bb3d938 (patch) | |
tree | 3da19d11935aa83a5051a2a6c3b4d7dc7782b2d0 | |
parent | afae5a70d61a1aef2ba6e330bf8090ca47906818 (diff) |
-dos2unix
-rw-r--r-- | src/util/disk.c | 2 | ||||
-rw-r--r-- | src/util/w32cat.c | 178 |
2 files changed, 91 insertions, 89 deletions
diff --git a/src/util/disk.c b/src/util/disk.c index 8cb69d2a4e..d530e6e2ef 100644 --- a/src/util/disk.c +++ b/src/util/disk.c @@ -436,12 +436,14 @@ mktemp_name (const char *t) return fn; } + #if WINDOWS static char * mkdtemp (char *fn) { char *random_fn; char *tfn; + while (1) { tfn = GNUNET_strdup (fn); diff --git a/src/util/w32cat.c b/src/util/w32cat.c index 4c60c49062..292bd6d489 100644 --- a/src/util/w32cat.c +++ b/src/util/w32cat.c @@ -17,92 +17,92 @@ Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ -
-#include <stdio.h>
-#include <windows.h>
-
-int
-main (int argc, char **argv)
-{
- HANDLE stdi, stdo;
- BOOL b;
- wchar_t *commandlinew, **argvw;
- int argcw;
- int i;
-
- stdo = GetStdHandle (STD_OUTPUT_HANDLE);
- if (stdo == INVALID_HANDLE_VALUE || stdo == NULL)
- return 1;
-
- commandlinew = GetCommandLineW ();
- argvw = CommandLineToArgvW (commandlinew, &argcw);
- if (argvw == NULL)
- return 1;
-
- for (i = 1; i < argcw || argcw == 1; i++)
- {
- DWORD r, w;
- int is_dash = wcscmp (argvw[i], L"-") == 0;
- if (argcw == 1 || is_dash)
- {
- stdi = GetStdHandle (STD_INPUT_HANDLE);
- if (stdi == INVALID_HANDLE_VALUE)
- {
- fprintf (stderr, "cat: Failed to obtain stdin handle.\n");
- return 4;
- }
- if (stdi == NULL)
- {
- fprintf (stderr, "cat: Have no stdin.\n");
- return 5;
- }
- }
- else
- {
- stdi = CreateFileW (argvw[i], GENERIC_READ, FILE_SHARE_DELETE | FILE_SHARE_READ | FILE_SHARE_WRITE, NULL, OPEN_EXISTING, FILE_FLAG_SEQUENTIAL_SCAN, NULL);
- if (stdi == INVALID_HANDLE_VALUE)
- {
- wchar_t *msgbuf;
- DWORD le = GetLastError ();
- if (0 < FormatMessageW (FORMAT_MESSAGE_ALLOCATE_BUFFER | FORMAT_MESSAGE_FROM_SYSTEM, 0, le, 0, (wchar_t *) &msgbuf, 0, NULL))
- {
- fprintf (stderr, "cat: Failed to open file `%S'. Error %lu.\n", argvw[i], le);
- return 3;
- }
- fprintf (stderr, "cat: Failed to open file `%S'. Error %lu: %S\n", argvw[i], le, msgbuf);
- if (msgbuf != NULL)
- LocalFree (msgbuf);
- return 2;
- }
- }
- do
- {
- unsigned char c;
- b = ReadFile (stdi, &c, 1, &r, NULL);
- if (b && r > 0)
- {
- b = WriteFile (stdo, &c, 1, &w, NULL);
- if (b == 0)
- {
- wchar_t *msgbuf;
- DWORD le = GetLastError ();
- if (0 < FormatMessageW (FORMAT_MESSAGE_ALLOCATE_BUFFER | FORMAT_MESSAGE_FROM_SYSTEM, 0, le, 0, (wchar_t *) &msgbuf, 0, NULL))
- {
- fprintf (stderr, "cat: Failed to write into stdout. Error %lu.\n", le);
- return 3;
- }
- fprintf (stderr, "cat: Failed to write into stdout. Error %lu: %S\n", le, msgbuf);
- if (msgbuf != NULL)
- LocalFree (msgbuf);
- return 6;
- }
- }
- } while (b && r > 0);
- if (argcw == 1)
- break;
- if (!is_dash)
- CloseHandle (stdi);
- }
- LocalFree (argvw);
- return 0;
-}
+ +#include <stdio.h> +#include <windows.h> + +int +main (int argc, char **argv) +{ + HANDLE stdi, stdo; + BOOL b; + wchar_t *commandlinew, **argvw; + int argcw; + int i; + + stdo = GetStdHandle (STD_OUTPUT_HANDLE); + if (stdo == INVALID_HANDLE_VALUE || stdo == NULL) + return 1; + + commandlinew = GetCommandLineW (); + argvw = CommandLineToArgvW (commandlinew, &argcw); + if (argvw == NULL) + return 1; + + for (i = 1; i < argcw || argcw == 1; i++) + { + DWORD r, w; + int is_dash = wcscmp (argvw[i], L"-") == 0; + if (argcw == 1 || is_dash) + { + stdi = GetStdHandle (STD_INPUT_HANDLE); + if (stdi == INVALID_HANDLE_VALUE) + { + fprintf (stderr, "cat: Failed to obtain stdin handle.\n"); + return 4; + } + if (stdi == NULL) + { + fprintf (stderr, "cat: Have no stdin.\n"); + return 5; + } + } + else + { + stdi = CreateFileW (argvw[i], GENERIC_READ, FILE_SHARE_DELETE | FILE_SHARE_READ | FILE_SHARE_WRITE, NULL, OPEN_EXISTING, FILE_FLAG_SEQUENTIAL_SCAN, NULL); + if (stdi == INVALID_HANDLE_VALUE) + { + wchar_t *msgbuf; + DWORD le = GetLastError (); + if (0 < FormatMessageW (FORMAT_MESSAGE_ALLOCATE_BUFFER | FORMAT_MESSAGE_FROM_SYSTEM, 0, le, 0, (wchar_t *) &msgbuf, 0, NULL)) + { + fprintf (stderr, "cat: Failed to open file `%S'. Error %lu.\n", argvw[i], le); + return 3; + } + fprintf (stderr, "cat: Failed to open file `%S'. Error %lu: %S\n", argvw[i], le, msgbuf); + if (msgbuf != NULL) + LocalFree (msgbuf); + return 2; + } + } + do + { + unsigned char c; + b = ReadFile (stdi, &c, 1, &r, NULL); + if (b && r > 0) + { + b = WriteFile (stdo, &c, 1, &w, NULL); + if (b == 0) + { + wchar_t *msgbuf; + DWORD le = GetLastError (); + if (0 < FormatMessageW (FORMAT_MESSAGE_ALLOCATE_BUFFER | FORMAT_MESSAGE_FROM_SYSTEM, 0, le, 0, (wchar_t *) &msgbuf, 0, NULL)) + { + fprintf (stderr, "cat: Failed to write into stdout. Error %lu.\n", le); + return 3; + } + fprintf (stderr, "cat: Failed to write into stdout. Error %lu: %S\n", le, msgbuf); + if (msgbuf != NULL) + LocalFree (msgbuf); + return 6; + } + } + } while (b && r > 0); + if (argcw == 1) + break; + if (!is_dash) + CloseHandle (stdi); + } + LocalFree (argvw); + return 0; +} |