1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
|
$NetBSD: patch-at,v 1.3 2004/12/15 13:18:02 taca Exp $
--- yatd/entry.c.orig 2001-07-09 12:32:52.000000000 +0900
+++ yatd/entry.c
@@ -106,6 +106,7 @@ struct SYS_DAT SysData = {
{ 0, 0 }, /* flags */
+ 0, /* allow_xtnd */
};
/* Autherization-User state commands */
@@ -338,7 +339,7 @@ int CheckArgs(argc, argv)
LOG_LOCAL4, LOG_LOCAL5, LOG_LOCAL6, LOG_LOCAL7,
};
- while ((c = getopt(argc, argv, "d01234567s:")) != EOF) {
+ while ((c = getopt(argc, argv, "d01234567s:x")) != EOF) {
switch (c) {
case 'd': /* DEBUG option */
SysData.fDebug = 1;
@@ -346,6 +347,9 @@ int CheckArgs(argc, argv)
case 's': /* System Directory */
strcpy(SysData.szSysDir, optarg);
break;
+ case 'x':
+ SysData.allow_xtnd = 1;
+ break;
default:
if ((c < '0') || ('7' < c)) {
fprintf(stderr, "Usage: %.256s [-d]\n", argv[0]);
@@ -431,7 +435,7 @@ int main (argc, argv)
Msg2Cli(SUCCESS, "%.512s @%.256s",
szGreeting , SysData.szMyHost);
#else
- Msg2Cli(SUCCESS, "%.512s <%u.%u@%.256s>",
+ Msg2Cli(SUCCESS, "%.512s <%u.%ld@%.256s>",
szGreeting,
SysData.pid, SysData.timeStart, SysData.szMyHost);
#endif
@@ -560,34 +564,30 @@ int main (argc, argv)
#ifdef HAVE_SIGACTION
static void signal_handler(int signum){
- CONST char * pMsg;
int codeErr;
/* sigaction - handler is not re-entrant */
- /*
+#if 0
static int fSigHandled = 0;
if (fSigHandled){
return ;
}
fSigHandled = 1;
SigBlock();
- */
+#endif
- pMsg = NULL;
syslog( LOG_DEBUG , "signal_handler call ");
switch (signum) {
case SIGALRM:
codeErr = ERRYS_TIMEOUT;
+ WARNING(codeErr, 0, NULL);
break;
- case SIGHUP:
- case SIGTERM:
default:
codeErr = ERRYS_SIGNAL;
- pMsg = "#%d";
+ WARNING(codeErr, 0, "#%d", signum);
break;
}
- WARNING(codeErr, 0, pMsg, signum);
if (SysData.Flags.pidFile)
DelPidFile(1);
@@ -602,7 +602,7 @@ static void signal_handler(int signum){
}
#endif
- ErrSetData(codeErr, 0, pMsg, signum);
+ ErrSetData(codeErr, 0, (codeErr == ERRYS_SIGNAL)? "#%d": NULL, signum);
Msg2Cli(FAILURE, NULL);
exit(1);
|