diff options
Diffstat (limited to 'src/libs6net/s6net_ident_reply_parse.c')
| -rw-r--r-- | src/libs6net/s6net_ident_reply_parse.c | 18 |
1 files changed, 9 insertions, 9 deletions
diff --git a/src/libs6net/s6net_ident_reply_parse.c b/src/libs6net/s6net_ident_reply_parse.c index dd3e84c..f2e3308 100644 --- a/src/libs6net/s6net_ident_reply_parse.c +++ b/src/libs6net/s6net_ident_reply_parse.c @@ -1,16 +1,16 @@ /* ISC license. */ -#include <sys/types.h> +#include <string.h> #include <stdint.h> #include <errno.h> -#include <skalibs/uint16.h> +#include <skalibs/types.h> #include <skalibs/bytestr.h> #include <skalibs/error.h> #include <s6-networking/ident.h> static size_t skipspace (char const *s) { - register size_t n = 0 ; + size_t n = 0 ; while ((s[n] == ' ') || (s[n] == '\t')) n++ ; return n ; } @@ -33,8 +33,8 @@ ssize_t s6net_ident_reply_parse (char const *s, uint16_t rp, uint16_t lp) n += skipspace(s+n) ; if (!s[n]) goto err ; if (s[n++] != ':') goto err ; n += skipspace(s+n) ; if (!s[n]) goto err ; - if (!str_diffn(s+n, "ERROR", 5)) goto ERROR ; - if (!str_diffn(s+n, "USERID", 6)) goto USERID ; + if (!strncmp(s+n, "ERROR", 5)) goto ERROR ; + if (!strncmp(s+n, "USERID", 6)) goto USERID ; err: return (errno = EPROTO, -1) ; @@ -43,10 +43,10 @@ ssize_t s6net_ident_reply_parse (char const *s, uint16_t rp, uint16_t lp) n += skipspace(s+n) ; if (!s[n]) goto err ; if (s[n++] != ':') goto err ; n += skipspace(s+n) ; if (!s[n]) goto err ; - if (!str_diffn(s+n, "INVALID-PORT", 12)) return (errno = EINVAL, 0) ; - if (!str_diffn(s+n, "NO-USER", 7)) return (errno = ESRCH, 0) ; - if (!str_diffn(s+n, "HIDDEN-USER", 11)) return (errno = EPERM, 0) ; - if (!str_diffn(s+n, "UNKNOWN-ERROR", 13)) return (errno = EIO, 0) ; + if (!strncmp(s+n, "INVALID-PORT", 12)) return (errno = EINVAL, 0) ; + if (!strncmp(s+n, "NO-USER", 7)) return (errno = ESRCH, 0) ; + if (!strncmp(s+n, "HIDDEN-USER", 11)) return (errno = EPERM, 0) ; + if (!strncmp(s+n, "UNKNOWN-ERROR", 13)) return (errno = EIO, 0) ; if (s[n] == 'X') return (errno = EEXIST, 0) ; goto err ; |
