#define _PATH_SYS_CLASS "/sys/class"
#define _PATH_SYS_SCSI "/sys/bus/scsi"
#define _PATH_SYS_CPU_BYTEORDER "/sys/kernel/cpu_byteorder"
+#define _PATH_SYS_ADDRESS_BITS "/sys/kernel/address_bits"
#define _PATH_SYS_SELINUX "/sys/fs/selinux"
#define _PATH_SYS_APPARMOR "/sys/kernel/security/apparmor"
};
extern enum sysfs_byteorder sysfs_get_byteorder(struct path_cxt *pc);
+extern int sysfs_get_address_bits(struct path_cxt *pc);
#endif /* UTIL_LINUX_SYSFS_H */
return ret;
}
+int sysfs_get_address_bits(struct path_cxt *pc)
+{
+ int rc;
+ int address_bits;
+
+ rc = ul_path_scanf(pc, _PATH_SYS_ADDRESS_BITS, "%d", &address_bits);
+ if (rc < 0)
+ return rc;
+ if (address_bits < 0)
+ return -EINVAL;
+ return address_bits;
+}
+
#ifdef TEST_PROGRAM_SYSFS
#include <errno.h>