xref: /original-bsd/usr.bin/mail/temp.c (revision 57530171)
1 /*
2  * Copyright (c) 1980 Regents of the University of California.
3  * All rights reserved.
4  *
5  * Redistribution and use in source and binary forms are permitted
6  * provided that this notice is preserved and that due credit is given
7  * to the University of California at Berkeley. The name of the University
8  * may not be used to endorse or promote products derived from this
9  * software without specific prior written permission. This software
10  * is provided ``as is'' without express or implied warranty.
11  */
12 
13 #ifdef notdef
14 static char sccsid[] = "@(#)temp.c	5.4 (Berkeley) 02/18/88";
15 #endif /* notdef */
16 
17 #include "rcv.h"
18 
19 /*
20  * Mail -- a mail program
21  *
22  * Give names to all the temporary files that we will need.
23  */
24 
25 char	tempMail[14];
26 char	tempQuit[14];
27 char	tempEdit[14];
28 char	tempSet[14];
29 char	tempResid[14];
30 char	tempMesg[14];
31 
32 tinit()
33 {
34 	register char *cp;
35 	char uname[PATHSIZE];
36 	register int pid;
37 	uid_t getuid();
38 
39 	pid = getpid();
40 	sprintf(tempMail, "/tmp/Rs%05d", pid);
41 	sprintf(tempResid, "/tmp/Rq%05d", pid);
42 	sprintf(tempQuit, "/tmp/Rm%05d", pid);
43 	sprintf(tempEdit, "/tmp/Re%05d", pid);
44 	sprintf(tempSet, "/tmp/Rx%05d", pid);
45 	sprintf(tempMesg, "/tmp/Rx%05d", pid);
46 
47 	if (strlen(myname) != 0) {
48 		uid = getuserid(myname);
49 		if (uid == -1) {
50 			printf("\"%s\" is not a user of this system\n",
51 			    myname);
52 			exit(1);
53 		}
54 	}
55 	else {
56 		uid = getuid();
57 		if (username(uid, uname) < 0) {
58 			strcpy(myname, "ubluit");
59 			if (rcvmode) {
60 				printf("Who are you!?\n");
61 				exit(1);
62 			}
63 		} else
64 			strcpy(myname, uname);
65 	}
66 	if ((cp = value("HOME")) == NOSTR)
67 		cp = ".";
68 	strcpy(homedir, cp);
69 	findmail();
70 	strcpy(copy(homedir, mbox), "/mbox");
71 	strcpy(copy(homedir, mailrc), "/.mailrc");
72 	strcpy(copy(homedir, deadletter), "/dead.letter");
73 	if (debug) {
74 		printf("uid = %d, user = %s, mailname = %s\n",
75 		    uid, myname, mailname);
76 		printf("deadletter = %s, mailrc = %s, mbox = %s\n",
77 		    deadletter, mailrc, mbox);
78 	}
79 }
80