[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[GNUnet-SVN] r21362 - gnunet/src/transport
From: |
gnunet |
Subject: |
[GNUnet-SVN] r21362 - gnunet/src/transport |
Date: |
Tue, 8 May 2012 21:54:50 +0200 |
Author: grothoff
Date: 2012-05-08 21:54:50 +0200 (Tue, 08 May 2012)
New Revision: 21362
Modified:
gnunet/src/transport/gnunet-helper-transport-wlan-dummy.c
Log:
-make helper start more robust
Modified: gnunet/src/transport/gnunet-helper-transport-wlan-dummy.c
===================================================================
--- gnunet/src/transport/gnunet-helper-transport-wlan-dummy.c 2012-05-08
19:54:24 UTC (rev 21361)
+++ gnunet/src/transport/gnunet-helper-transport-wlan-dummy.c 2012-05-08
19:54:50 UTC (rev 21362)
@@ -222,37 +222,35 @@
}
/* make the fifos if needed */
- if (0 != stat (FIFO_FILE1, &st))
+ umask (0);
+ if ( (GNUNET_OK != GNUNET_DISK_directory_create_for_file (FIFO_FILE1)) ||
+ (GNUNET_OK != GNUNET_DISK_directory_create_for_file (FIFO_FILE2)) )
{
- if (0 == stat (FIFO_FILE2, &st))
+ FPRINTF (stderr, "Failed to create directory for file `%s'\n", FIFO_FILE1);
+ return 1;
+ }
+ if (0 == strcmp (argv[1], "1") )
+ {
+ if (0 != stat (FIFO_FILE1, &st))
{
- FPRINTF (stderr, "%s", "FIFO_FILE2 exists, but FIFO_FILE1 not\n");
- exit (1);
+ erg = mkfifo (FIFO_FILE1, 0666);
+ if ( (0 != erg) && (EEXIST != errno) )
+ FPRINTF (stderr, "Error in mkfifo(%s): %s\n", FIFO_FILE1,
+ strerror (errno));
}
- umask (0);
- erg = mkfifo (FIFO_FILE1, 0666);
- if (0 != erg)
- {
- FPRINTF (stderr, "Error in mkfifo(%s): %s\n", FIFO_FILE1,
- strerror (errno));
- }
- erg = mkfifo (FIFO_FILE2, 0666);
- if (0 != erg)
- {
- FPRINTF (stderr, "Error in mkfifo(%s): %s\n", FIFO_FILE2,
- strerror (errno));
- }
}
else
{
if (0 != stat (FIFO_FILE2, &st))
{
- FPRINTF (stderr, "%s", "FIFO_FILE1 exists, but FIFO_FILE2 not\n");
- exit (1);
+ erg = mkfifo (FIFO_FILE2, 0666);
+ if ( (0 != erg) && (EEXIST != errno) )
+ FPRINTF (stderr, "Error in mkfifo(%s): %s\n", FIFO_FILE2,
+ strerror (errno));
}
}
- if (0 != strcmp (argv[1], "1"))
+ if (0 == strcmp (argv[1], "1"))
{
first = 1;
fpin = fopen (FIFO_FILE1, "r");
@@ -261,7 +259,11 @@
FPRINTF (stderr, "fopen of read FIFO_FILE1 failed: %s\n", STRERROR
(errno));
goto end;
}
- fpout = fopen (FIFO_FILE2, "w");
+ if (NULL == (fpout = fopen (FIFO_FILE2, "w")))
+ {
+ erg = mkfifo (FIFO_FILE2, 0666);
+ fpout = fopen (FIFO_FILE2, "w");
+ }
if (NULL == fpout)
{
FPRINTF (stderr, "fopen of write FIFO_FILE2 failed: %s\n", STRERROR
(errno));
@@ -271,7 +273,11 @@
else
{
first = 0;
- fpout = fopen (FIFO_FILE1, "w");
+ if (NULL == (fpout = fopen (FIFO_FILE1, "w")))
+ {
+ erg = mkfifo (FIFO_FILE1, 0666);
+ fpout = fopen (FIFO_FILE1, "w");
+ }
if (NULL == fpout)
{
FPRINTF (stderr, "fopen of write FIFO_FILE1 failed: %s\n", STRERROR
(errno));
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [GNUnet-SVN] r21362 - gnunet/src/transport,
gnunet <=