File linkt_fd_open_fix.diff of Package linkt
diff -Nur linkt-0.8rc3.orig/linkt/bin.cpp linkt-0.8rc3/linkt/bin.cpp
--- linkt-0.8rc3.orig/linkt/bin.cpp 2004-11-10 17:01:16.000000000 +0100
+++ linkt-0.8rc3/linkt/bin.cpp 2008-06-02 23:24:02.000000000 +0200
@@ -218,7 +218,7 @@
}
}
- if ((fd = open(tmp,O_WRONLY|O_CREAT)) == -1)
+ if ((fd = open(tmp,O_WRONLY|O_CREAT,0777)) == -1)
return;
// Zugriffsrechte einstellen
@@ -319,7 +319,7 @@
}
}
- if ((fd = open(tmp,O_WRONLY|O_CREAT)) == -1)
+ if ((fd = open(tmp,O_WRONLY|O_CREAT,0777)) == -1)
return;
// Zugriffsrechte einstellen
@@ -612,7 +612,7 @@
filename = (char *) strdup(tmp);
}
- if ((fd = open(filename,O_WRONLY|O_CREAT|O_TRUNC)) == -1)
+ if ((fd = open(filename,O_WRONLY|O_CREAT|O_TRUNC,0777)) == -1)
{
((Channel *)chan)->sendString( "#NO#\xD" );
return;
diff -Nur linkt-0.8rc3.orig/linkt/channel.cpp linkt-0.8rc3/linkt/channel.cpp
--- linkt-0.8rc3.orig/linkt/channel.cpp 2004-11-11 14:34:37.000000000 +0100
+++ linkt-0.8rc3/linkt/channel.cpp 2008-06-02 23:25:28.000000000 +0200
@@ -1925,7 +1925,7 @@
}
}
else
- if ((filerx_fd = open(tmp, O_WRONLY|O_CREAT|O_TRUNC)) == -1)
+ if ((filerx_fd = open(tmp, O_WRONLY|O_CREAT|O_TRUNC,0777)) == -1)
{
printf("%s\n",strerror(errno));
KMessageBox::error( this,
@@ -2221,7 +2221,7 @@
if ((fd = open(tmp, O_WRONLY|O_APPEND)) == -1)
if (errno == ENOENT)
- if ((fd = open(tmp, O_WRONLY|O_CREAT|O_APPEND)) == -1)
+ if ((fd = open(tmp, O_WRONLY|O_CREAT|O_APPEND,0777)) == -1)
return;
else
{
diff -Nur linkt-0.8rc3.orig/linkt/didadit.cpp linkt-0.8rc3/linkt/didadit.cpp
--- linkt-0.8rc3.orig/linkt/didadit.cpp 2004-11-10 17:01:29.000000000 +0100
+++ linkt-0.8rc3/linkt/didadit.cpp 2008-06-02 23:26:31.000000000 +0200
@@ -804,7 +804,7 @@
sprintf(tmp, "%s/%s", conf->getDirABin().latin1(), filename.latin1());
- if ((fd_data = open(tmp, O_WRONLY|O_CREAT)) == -1)
+ if ((fd_data = open(tmp, O_WRONLY|O_CREAT,0777)) == -1)
{
strcpy(tmp, error_cannotopen);
SendBlock( tmp, strlen(tmp), RBLOCK_ERR );
@@ -1077,7 +1077,7 @@
sprintf(tmp, "%s/%s.r", conf->getDirABin().latin1(), filename.latin1());
- if ((fd_r = open(tmp, O_RDWR|O_CREAT)) == -1)
+ if ((fd_r = open(tmp, O_RDWR|O_CREAT,0777)) == -1)
return;
// Zugriffsrechte einstellen
diff -Nur linkt-0.8rc3.orig/linkt/gpg.cpp linkt-0.8rc3/linkt/gpg.cpp
--- linkt-0.8rc3.orig/linkt/gpg.cpp 2004-11-11 14:34:39.000000000 +0100
+++ linkt-0.8rc3/linkt/gpg.cpp 2008-06-02 23:36:21.000000000 +0200
@@ -311,7 +311,7 @@
outfile = (char *) strdup(tmp);
// Text ins Infile packen
- if ((fd = open(infile, O_WRONLY|O_CREAT|O_TRUNC)) == -1)
+ if ((fd = open(infile, O_WRONLY|O_CREAT|O_TRUNC,0777)) == -1)
{
free(infile);
infile = NULL;
@@ -623,7 +623,7 @@
if (filename != NULL)
free(filename);
filename = (char *) strdup( getUniqueFilename() );
- fd = open( filename, O_WRONLY|O_CREAT|O_TRUNC );
+ fd = open( filename, O_WRONLY|O_CREAT|O_TRUNC, 0777 );
fchmod( fd, S_IRUSR|S_IWUSR );
}
type = TYPE_SIGNATURE;
@@ -644,7 +644,7 @@
if (filename != NULL)
free(filename);
filename = (char *) strdup( getUniqueFilename() );
- fd = open( filename, O_WRONLY|O_CREAT|O_TRUNC );
+ fd = open( filename, O_WRONLY|O_CREAT|O_TRUNC, 0777 );
fchmod( fd, S_IRUSR|S_IWUSR );
}
type = TYPE_PUBKEY;
diff -Nur linkt-0.8rc3.orig/linkt/userinfo.cpp linkt-0.8rc3/linkt/userinfo.cpp
--- linkt-0.8rc3.orig/linkt/userinfo.cpp 2002-04-30 20:47:33.000000000 +0200
+++ linkt-0.8rc3/linkt/userinfo.cpp 2008-06-02 23:30:23.000000000 +0200
@@ -219,7 +219,7 @@
filename += "/"+call;
- f = open( filename.latin1(), (O_WRONLY|O_CREAT) );
+ f = open( filename.latin1(), (O_WRONLY|O_CREAT),0777 );
/* Zugriffsrechte einstellen */
fchmod(f,S_IRUSR|S_IWUSR);
diff -Nur linkt-0.8rc3.orig/linkt/yapp.cpp linkt-0.8rc3/linkt/yapp.cpp
--- linkt-0.8rc3.orig/linkt/yapp.cpp 2004-11-10 17:01:33.000000000 +0100
+++ linkt-0.8rc3/linkt/yapp.cpp 2008-06-02 23:30:47.000000000 +0200
@@ -776,7 +776,7 @@
filename = conf->getDirABin()+"/"+shortname;
}
- if ((fd = open(filename.latin1(), O_RDWR | O_APPEND | O_CREAT)) == -1)
+ if ((fd = open(filename.latin1(), O_RDWR | O_APPEND | O_CREAT,0777)) == -1)
{
SendNR("Invalid filename");
sendMessage( "<LinKT>: YAPP-RX: Cannot open datafile. Aborted.\r" );