chiark / gitweb /
parse_uid: return -ENXIO for -1 uids
[elogind.git] / src / shared / util.c
index e75f6c9df33c7f8439f3172e47a7dcf7bcebe9eb..9b5a47ab6fb6d3735937945c156d7a526171adfe 100644 (file)
@@ -282,11 +282,11 @@ int parse_uid(const char *s, uid_t* ret_uid) {
 
         /* Some libc APIs use (uid_t) -1 as special placeholder */
         if (uid == (uid_t) 0xFFFFFFFF)
-                return -EINVAL;
+                return -ENXIO;
 
         /* A long time ago UIDs where 16bit, hence explicitly avoid the 16bit -1 too */
         if (uid == (uid_t) 0xFFFF)
-                return -EINVAL;
+                return -ENXIO;
 
         *ret_uid = uid;
         return 0;