2018-12-06 20:12:07 +00:00
|
|
|
diff --git a/src/cstdio.c b/src/cstdio.c
|
2023-01-19 22:54:26 +00:00
|
|
|
index d444057..5327c77 100644
|
2018-12-06 20:12:07 +00:00
|
|
|
--- a/src/cstdio.c
|
|
|
|
+++ b/src/cstdio.c
|
|
|
|
@@ -15,6 +15,7 @@ static /*const*/char rcsid[]=
|
|
|
|
#include "variables.h"
|
|
|
|
#include "shell.h"
|
|
|
|
#include "cstdio.h"
|
|
|
|
+#include "common.h"
|
|
|
|
|
|
|
|
static uchar rcbuf[STDBUF],*rcbufp,*rcbufend; /* buffer for custom stdio */
|
|
|
|
static off_t blasttell;
|
|
|
|
diff --git a/src/foldinfo.c b/src/foldinfo.c
|
2023-01-19 22:54:26 +00:00
|
|
|
index 48b83e2..88d6228 100644
|
2018-12-06 20:12:07 +00:00
|
|
|
--- a/src/foldinfo.c
|
|
|
|
+++ b/src/foldinfo.c
|
2023-01-19 22:54:26 +00:00
|
|
|
@@ -19,6 +19,7 @@ static /*const*/char rcsid[]=
|
2018-12-06 20:12:07 +00:00
|
|
|
#include "goodies.h"
|
|
|
|
#include "locking.h"
|
|
|
|
#include "foldinfo.h"
|
|
|
|
+#include "acommon.h"
|
|
|
|
|
|
|
|
static const char
|
|
|
|
maildirtmp[]=MAILDIRtmp,maildircur[]=MAILDIRcur;
|
2023-01-19 22:54:26 +00:00
|
|
|
@@ -186,8 +187,8 @@ int screenmailbox(chp,egid,doautoforward)
|
2018-12-06 20:12:07 +00:00
|
|
|
if(!stat(buf,&stbuf))
|
|
|
|
{ unsigned wwsdir;
|
|
|
|
accspooldir=(wwsdir= /* world writable spool dir? */
|
|
|
|
- ((S_IWGRP|S_IXGRP|S_IWOTH|S_IXOTH)&stbuf.st_mode)==
|
|
|
|
- (S_IWGRP|S_IXGRP|S_IWOTH|S_IXOTH)
|
|
|
|
+ (((S_IWGRP|S_IXGRP|S_IWOTH|S_IXOTH)&stbuf.st_mode)==
|
|
|
|
+ (S_IWGRP|S_IXGRP|S_IWOTH|S_IXOTH))
|
|
|
|
<<1| /* note it in bit 1 */
|
|
|
|
uid==stbuf.st_uid); /* we own the spool dir, note it in bit 0 */
|
|
|
|
if((CAN_toggle_sgid||accspooldir)&&privileged)
|
|
|
|
diff --git a/src/lmtp.c b/src/lmtp.c
|
2023-01-19 22:54:26 +00:00
|
|
|
index 60b7a2d..41e3c1a 100644
|
2018-12-06 20:12:07 +00:00
|
|
|
--- a/src/lmtp.c
|
|
|
|
+++ b/src/lmtp.c
|
2023-01-19 22:54:26 +00:00
|
|
|
@@ -52,7 +52,7 @@ static int lreaddyn P((void));
|
2018-12-06 20:12:07 +00:00
|
|
|
int childserverpid;
|
2023-01-19 22:54:26 +00:00
|
|
|
char detaildelim='\0';
|
2018-12-06 20:12:07 +00:00
|
|
|
|
|
|
|
-static ctopfd;
|
|
|
|
+static int ctopfd;
|
|
|
|
static char*overread;
|
|
|
|
static size_t overlen;
|
|
|
|
|
|
|
|
diff --git a/src/locking.c b/src/locking.c
|
2023-01-19 22:54:26 +00:00
|
|
|
index a5a0238..c6882ea 100644
|
2018-12-06 20:12:07 +00:00
|
|
|
--- a/src/locking.c
|
|
|
|
+++ b/src/locking.c
|
|
|
|
@@ -95,7 +95,10 @@ faillock: nlog("Lock failure on");logqnl(name);
|
|
|
|
permanent=nfsTRY;
|
|
|
|
ds: ssleep((unsigned)locksleep);
|
|
|
|
ce: if(nextexit)
|
|
|
|
-term: { free(name); /* drop the preallocated buffer */
|
|
|
|
+term: {
|
|
|
|
+ if(nextexit)
|
|
|
|
+ elog(whilstwfor),elog("lockfile"),logqnl(name);
|
|
|
|
+ free(name); /* drop the preallocated buffer */
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
@@ -103,7 +106,7 @@ term: { free(name); /* drop the preallocated buffer */
|
|
|
|
setegid(gid); /* we put back our regular permissions */
|
|
|
|
lcking&=~lck_DELAYSIG;
|
|
|
|
if(nextexit)
|
|
|
|
- elog(whilstwfor),elog("lockfile"),logqnl(name),Terminate();
|
|
|
|
+ Terminate();
|
|
|
|
return !!*lockp;
|
|
|
|
}
|
|
|
|
|