devnum-util: add new devnum_is_zero() helper
This commit is contained in:
@@ -83,7 +83,7 @@ int device_path_make_canonical(mode_t mode, dev_t devnum, char **ret) {
|
||||
|
||||
assert(ret);
|
||||
|
||||
if (major(devnum) == 0 && minor(devnum) == 0)
|
||||
if (devnum_is_zero(devnum))
|
||||
/* A special hack to make sure our 'inaccessible' device nodes work. They won't have symlinks in
|
||||
* /dev/block/ and /dev/char/, hence we handle them specially here. */
|
||||
return device_path_make_inaccessible(mode, ret);
|
||||
|
||||
@@ -50,3 +50,7 @@ static inline char *format_devnum(dev_t d, char buf[static DEVNUM_STR_MAX]) {
|
||||
}
|
||||
|
||||
#define FORMAT_DEVNUM(d) format_devnum((d), (char[DEVNUM_STR_MAX]) {})
|
||||
|
||||
static inline bool devnum_is_zero(dev_t d) {
|
||||
return major(d) == 0 && minor(d) == 0;
|
||||
}
|
||||
|
||||
@@ -979,7 +979,7 @@ int get_ctty_devnr(pid_t pid, dev_t *d) {
|
||||
&ttynr) != 1)
|
||||
return -EIO;
|
||||
|
||||
if (major(ttynr) == 0 && minor(ttynr) == 0)
|
||||
if (devnum_is_zero(ttynr))
|
||||
return -ENXIO;
|
||||
|
||||
if (d)
|
||||
|
||||
@@ -15,7 +15,7 @@ int devname_from_devnum(mode_t mode, dev_t devnum, char **ret) {
|
||||
|
||||
assert(ret);
|
||||
|
||||
if (major(devnum) == 0 && minor(devnum) == 0)
|
||||
if (devnum_is_zero(devnum))
|
||||
return device_path_make_inaccessible(mode, ret);
|
||||
|
||||
r = device_new_from_mode_and_devnum(&dev, mode, devnum);
|
||||
|
||||
Reference in New Issue
Block a user