summaryrefslogtreecommitdiffstats
path: root/usr.sbin/newsyslog
diff options
context:
space:
mode:
authorgad <gad@FreeBSD.org>2003-10-04 02:24:47 +0000
committergad <gad@FreeBSD.org>2003-10-04 02:24:47 +0000
commit420e26096448ac273dab52190262aa9d55cb6c91 (patch)
tree2055a98f6ac1ddfc80b5781cbbef9b8f1bdb9df4 /usr.sbin/newsyslog
parentba561864b3b7f6714310c9eca8d377bf1b1b6efc (diff)
downloadFreeBSD-src-420e26096448ac273dab52190262aa9d55cb6c91.zip
FreeBSD-src-420e26096448ac273dab52190262aa9d55cb6c91.tar.gz
Handle a 'const' parameter without using __DECONST().
MFC after: 14 days
Diffstat (limited to 'usr.sbin/newsyslog')
-rw-r--r--usr.sbin/newsyslog/ptimes.c22
1 files changed, 14 insertions, 8 deletions
diff --git a/usr.sbin/newsyslog/ptimes.c b/usr.sbin/newsyslog/ptimes.c
index 4b63d6b..c24eb5a 100644
--- a/usr.sbin/newsyslog/ptimes.c
+++ b/usr.sbin/newsyslog/ptimes.c
@@ -221,7 +221,8 @@ static int
parseDWM(struct ptime_data *ptime, const char *s)
{
int daysmon, Dseen, WMseen;
- char *t;
+ const char *endval;
+ char *tmp;
long l;
struct tm tm;
@@ -232,6 +233,7 @@ parseDWM(struct ptime_data *ptime, const char *s)
WMseen = Dseen = 0;
ptime->tmspec = TSPEC_HOUROFDAY;
for (;;) {
+ endval = NULL;
switch (*s) {
case 'D':
if (Dseen)
@@ -239,9 +241,10 @@ parseDWM(struct ptime_data *ptime, const char *s)
Dseen++;
ptime->tmspec |= TSPEC_HOUROFDAY;
s++;
- l = strtol(s, &t, 10);
+ l = strtol(s, &tmp, 10);
if (l < 0 || l > 23)
return (-1);
+ endval = tmp;
tm.tm_hour = l;
break;
@@ -251,9 +254,10 @@ parseDWM(struct ptime_data *ptime, const char *s)
WMseen++;
ptime->tmspec |= TSPEC_DAYOFWEEK;
s++;
- l = strtol(s, &t, 10);
+ l = strtol(s, &tmp, 10);
if (l < 0 || l > 6)
return (-1);
+ endval = tmp;
if (l != tm.tm_wday) {
int save;
@@ -283,15 +287,15 @@ parseDWM(struct ptime_data *ptime, const char *s)
/* User wants the last day of the month. */
ptime->tmspec |= TSPEC_LDAYOFMONTH;
tm.tm_mday = daysmon;
- s++;
- t = __DECONST(char *,s);
+ endval = s + 1;
} else {
- l = strtol(s, &t, 10);
+ l = strtol(s, &tmp, 10);
if (l < 1 || l > 31)
return (-1);
if (l > daysmon)
return (-1);
+ endval = tmp;
tm.tm_mday = l;
}
break;
@@ -301,10 +305,12 @@ parseDWM(struct ptime_data *ptime, const char *s)
break;
}
- if (*t == '\0' || isspace(*t))
+ if (endval == NULL)
+ return (-1);
+ else if (*endval == '\0' || isspace(*endval))
break;
else
- s = t;
+ s = endval;
}
ptime->tm = tm;
OpenPOWER on IntegriCloud