aboutsummaryrefslogtreecommitdiff
path: root/riemann.fmi.uni-sofia.bg/programs/nlogin-0.3-pre/scan_uid.c
blob: da9c85e1a19ad82cbc6e18d148c3950eb7fc194d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
#include <sys/types.h>
#include "str_defs.h"

unsigned int scan_uid(char *buf, char *prefix, uid_t *uid) /*EXTRACT_INCL*/{
  int len = str_len(prefix);
  char *p = buf + len;
  unsigned long u;
  
  if (str_diffn(buf,prefix,len) || !(len = scan_ulong(p, &u))) return 0; 
  p += len;
  if (*p++ != 0) return 0;
  *uid = u;
  return p-buf;
}