Skip to content

Commit b037e19

Browse files
committed
Make sure to reopen error log if server name is being substituted (Issue #1277)
1 parent ad4d0be commit b037e19

2 files changed

Lines changed: 19 additions & 4 deletions

File tree

scheduler/conf.c

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -988,6 +988,17 @@ cupsdReadConfiguration(void)
988988

989989
ServerNameIsIP = !*slash;
990990

991+
/*
992+
* If the ErrorLog value contains "%s", close the current log file (if any)
993+
* so that the proper ServerName value is used when logging.
994+
*/
995+
996+
if (ErrorLog && strstr(ErrorLog, "%s") && ErrorFile && ErrorFile != LogStderr)
997+
{
998+
cupsFileClose(ErrorFile);
999+
ErrorFile = NULL;
1000+
}
1001+
9911002
/*
9921003
* Make sure ServerAdmin is initialized...
9931004
*/

scheduler/log.c

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -149,11 +149,12 @@ cupsdCheckLogFile(cups_file_t **lf, /* IO - Log file */
149149
cupsConcatString(filename, "/", sizeof(filename));
150150
}
151151
else
152+
{
152153
filename[0] = '\0';
154+
}
153155

154-
for (logptr = logname, ptr = filename + strlen(filename);
155-
*logptr && ptr < (filename + sizeof(filename) - 1);
156-
logptr ++)
156+
for (logptr = logname, ptr = filename + strlen(filename); *logptr && ptr < (filename + sizeof(filename) - 1); logptr ++)
157+
{
157158
if (*logptr == '%')
158159
{
159160
/*
@@ -167,7 +168,7 @@ cupsdCheckLogFile(cups_file_t **lf, /* IO - Log file */
167168
* Insert the server name...
168169
*/
169170

170-
cupsCopyString(ptr, ServerName, sizeof(filename) - (size_t)(ptr - filename));
171+
cupsCopyString(ptr, ServerName ? ServerName : "localhost", sizeof(filename) - (size_t)(ptr - filename));
171172
ptr += strlen(ptr);
172173
}
173174
else
@@ -180,7 +181,10 @@ cupsdCheckLogFile(cups_file_t **lf, /* IO - Log file */
180181
}
181182
}
182183
else
184+
{
183185
*ptr++ = *logptr;
186+
}
187+
}
184188

185189
*ptr = '\0';
186190
}

0 commit comments

Comments
 (0)