#include <ctype.h>
#include <string.h>
#include <stdio.h>
+
#include "prototypes.h"
+#include "string/strchr/strrspn.h"
+
/*
* valid_field - insure that a field contains all legal characters
* makes it possible to change the field to empty, by
* entering a space. --marekm
*/
-
- while (newf < cp && isspace (cp[-1])) {
- cp--;
- }
- *cp = '\0';
+ *strrspn(newf, " \t\n") = '\0';
cp = newf;
while (isspace (*cp)) {
#include "string/sprintf/xasprintf.h"
#include "string/strchr/stpcspn.h"
#include "string/strchr/stpspn.h"
+#include "string/strchr/strrspn.h"
/*
#else /* USE_ECONF */
static void def_load (void)
{
- int i;
FILE *fp;
char buf[1024], *name, *value, *s;
/*
* Trim trailing whitespace.
*/
- for (i = (ptrdiff_t) strlen (buf) - 1; i >= 0; --i) {
- if (!isspace (buf[i])) {
- break;
- }
- }
- i++;
- buf[i] = '\0';
+ *strrspn(buf, " \t\n") = '\0';
/*
* Break the line into two fields.
#include <arpa/inet.h> /* for inet_ntoa() */
#include "sizeof.h"
+#include "string/strchr/strrspn.h"
#if !defined(MAXHOSTNAMELEN) || (MAXHOSTNAMELEN < 64)
#undef MAXHOSTNAMELEN
if (line[0] == '#') {
continue; /* comment line */
}
- while (end > 0 && isspace (line[end - 1])) {
- end--;
- }
- line[end] = '\0'; /* strip trailing whitespace */
+ *strrspn(line, " \t\n") = '\0';
if (line[0] == '\0') { /* skip blank lines */
continue;
}
*/
#include <config.h>
+
#include <errno.h>
#include <grp.h>
#include <pwd.h>
#include <stdio.h>
#include <sys/types.h>
+
#include "defines.h"
#include "prototypes.h"
+#include "string/strchr/strrspn.h"
+
#ifndef SUAUTHFILE
#define SUAUTHFILE "/etc/suauth"
continue;
}
- while (endline > 0 && (temp[endline - 1] == ' '
- || temp[endline - 1] == '\t'
- || temp[endline - 1] == '\n'))
- endline--;
- temp[endline] = '\0';
+ *strrspn(temp, " \t\n") = '\0';
posn = 0;
while (temp[posn] == ' ' || temp[posn] == '\t')