rev |
line source |
yuuji@0
|
1 /* ========================================================================
|
yuuji@0
|
2 * Copyright 1988-2006 University of Washington
|
yuuji@0
|
3 *
|
yuuji@0
|
4 * Licensed under the Apache License, Version 2.0 (the "License");
|
yuuji@0
|
5 * you may not use this file except in compliance with the License.
|
yuuji@0
|
6 * You may obtain a copy of the License at
|
yuuji@0
|
7 *
|
yuuji@0
|
8 * http://www.apache.org/licenses/LICENSE-2.0
|
yuuji@0
|
9 *
|
yuuji@0
|
10 *
|
yuuji@0
|
11 * ========================================================================
|
yuuji@0
|
12 */
|
yuuji@0
|
13
|
yuuji@0
|
14 /*
|
yuuji@0
|
15 * Program: WCE environment routines
|
yuuji@0
|
16 *
|
yuuji@0
|
17 * Author: Mark Crispin
|
yuuji@0
|
18 * Networks and Distributed Computing
|
yuuji@0
|
19 * Computing & Communications
|
yuuji@0
|
20 * University of Washington
|
yuuji@0
|
21 * Administration Building, AG-44
|
yuuji@0
|
22 * Seattle, WA 98195
|
yuuji@0
|
23 * Internet: MRC@CAC.Washington.EDU
|
yuuji@0
|
24 *
|
yuuji@0
|
25 * Date: 1 August 1988
|
yuuji@0
|
26 * Last Edited: 30 August 2006
|
yuuji@0
|
27 */
|
yuuji@0
|
28
|
yuuji@0
|
29
|
yuuji@0
|
30 #define SUBSCRIPTIONFILE(t) sprintf (t,"%s\\MAILBOX.LST",myhomedir ())
|
yuuji@0
|
31 #define SUBSCRIPTIONTEMP(t) sprintf (t,"%s\\MAILBOX.TMP",myhomedir ())
|
yuuji@0
|
32
|
yuuji@0
|
33 #define L_SET SEEK_SET
|
yuuji@0
|
34
|
yuuji@0
|
35 /* Function prototypes */
|
yuuji@0
|
36
|
yuuji@0
|
37 #include "env.h"
|
yuuji@0
|
38
|
yuuji@0
|
39 static char *defaultDrive (void);
|
yuuji@0
|
40 static char *homeDrive (void);
|
yuuji@0
|
41 static char *homePath (char *path);
|
yuuji@0
|
42 char *sysinbox ();
|
yuuji@0
|
43 long random ();
|
yuuji@0
|
44 unsigned long unix_crlfcpy (char **dst,unsigned long *dstl,char *src,
|
yuuji@0
|
45 unsigned long srcl);
|
yuuji@0
|
46 unsigned long unix_crlflen (STRING *s);
|
yuuji@0
|
47 #define getpid random
|
yuuji@0
|
48
|
yuuji@0
|
49
|
yuuji@0
|
50 /* syslog() emulation */
|
yuuji@0
|
51
|
yuuji@0
|
52 #define LOG_MAIL (2<<3) /* mail system */
|
yuuji@0
|
53 #define LOG_DAEMON (3<<3) /* system daemons */
|
yuuji@0
|
54 #define LOG_AUTH (4<<3) /* security/authorization messages */
|
yuuji@0
|
55 #define LOG_EMERG 0 /* system is unusable */
|
yuuji@0
|
56 #define LOG_ALERT 1 /* action must be taken immediately */
|
yuuji@0
|
57 #define LOG_CRIT 2 /* critical conditions */
|
yuuji@0
|
58 #define LOG_ERR 3 /* error conditions */
|
yuuji@0
|
59 #define LOG_WARNING 4 /* warning conditions */
|
yuuji@0
|
60 #define LOG_NOTICE 5 /* normal but signification condition */
|
yuuji@0
|
61 #define LOG_INFO 6 /* informational */
|
yuuji@0
|
62 #define LOG_DEBUG 7 /* debug-level messages */
|
yuuji@0
|
63 #define LOG_PID 0x01 /* log the pid with each message */
|
yuuji@0
|
64 #define LOG_CONS 0x02 /* log on the console if errors in sending */
|
yuuji@0
|
65 #define LOG_ODELAY 0x04 /* delay open until syslog() is called */
|
yuuji@0
|
66 #define LOG_NDELAY 0x08 /* don't delay open */
|
yuuji@0
|
67 #define LOG_NOWAIT 0x10 /* if forking to log on console, don't wait() */
|
yuuji@0
|
68
|
yuuji@0
|
69 void openlog (const char *ident,int logopt,int facility);
|
yuuji@0
|
70 void syslog (int priority,const char *message,...);
|