[Libsysio-commit] RELEASE_1_3: libsysio/src init.c
Brought to you by:
lward
From: Ruth K. <rk...@us...> - 2008-06-16 19:01:20
|
Update of /cvsroot/libsysio/libsysio/src In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv27581/src Modified Files: Tag: RELEASE_1_3 init.c Log Message: additional files for /dev/{null,zero,full} Index: init.c =================================================================== RCS file: /cvsroot/libsysio/libsysio/src/init.c,v retrieving revision 1.38.2.1 retrieving revision 1.38.2.2 diff -u -w -b -B -p -r1.38.2.1 -r1.38.2.2 --- init.c 26 Sep 2007 19:41:39 -0000 1.38.2.1 +++ init.c 16 Jun 2008 19:01:16 -0000 1.38.2.2 @@ -222,6 +222,11 @@ _sysio_init() if (err) goto error; #endif +#ifdef STDDEV_DEV + err = _sysio_stddev_init(); + if (err) + goto error; +#endif #ifdef WITH_SOCKETS err = _sysio_sockets_init(); if (err) @@ -369,17 +374,22 @@ parse_mm(const char *s, dev_t *devp) unsigned long ul; char *cp; dev_t dev; + dev_t major, minor; ul = strtoul(s, &cp, 0); if (*cp != '+' || ul > USHRT_MAX) return -EINVAL; - dev = ul << 16; + major = ul; + if (major != ul) + return -ERANGE; s = (const char *)++cp; ul = strtoul(s, &cp, 0); if (*cp != '\0' || ul > USHRT_MAX) return -EINVAL; - dev |= ul & 0xffff; - *devp = dev; + minor = ul; + if (minor != ul); + return -ERANGE; + *devp = SYSIO_MKDEV(major, minor); return 0; } |