diff --git a/appl/popper/pop_dropcopy.c b/appl/popper/pop_dropcopy.c index 9f067d851..d1c78d9a3 100644 --- a/appl/popper/pop_dropcopy.c +++ b/appl/popper/pop_dropcopy.c @@ -41,8 +41,7 @@ pop_dropcopy(POP *p, struct passwd *pwp) /* First create a unique file. Would prefer mkstemp, but Ultrix...*/ strcpy(template,POP_TMPDROP); - mktemp(template); - if ( (tf=fopen(template,"w+")) == NULL ) { /* failure, bail out */ + if ((tf=fdopen(mkstemp(template),"w+")) == NULL) { /* failure, bail out */ pop_log(p,POP_PRIORITY, "Unable to create temporary temporary maildrop '%s': %s",template, strerror(errno)); diff --git a/appl/popper/pop_xmit.c b/appl/popper/pop_xmit.c index b73172086..88c43e13b 100644 --- a/appl/popper/pop_xmit.c +++ b/appl/popper/pop_xmit.c @@ -24,18 +24,17 @@ pop_xmit (POP *p) int id, pid; /* Create a temporary file into which to copy the user's message */ - mktemp(strcpy(temp_xmit,POP_TMPXMIT)); -#ifdef DEBUG - if(p->debug) - pop_log(p, POP_DEBUG, - "Creating temporary file for sending a mail message \"%s\"\n", - temp_xmit); -#endif /* DEBUG */ - if ((tmp = fopen(temp_xmit, "w+")) == NULL) + if ((tmp = fdopen(mkstemp(temp_xmit), "w+")) == NULL) return (pop_msg(p, POP_FAILURE, "Unable to create temporary message file \"%s\": %s", temp_xmit, strerror(errno))); +#ifdef DEBUG + if(p->debug) + pop_log(p, POP_DEBUG, + "Creating temporary file for sending a mail message \"%s\"\n", + temp_xmit); +#endif /* DEBUG */ /* Tell the client to start sending the message */ pop_msg(p,POP_SUCCESS,"Start sending the message.");