#include "perl_sysfs.h" MODULE = Linux::Sysfs::Attribute PACKAGE = Linux::Sysfs::Attribute struct sysfs_attribute* open(class, path) const char* path CODE: RETVAL = sysfs_open_attribute(path); OUTPUT: RETVAL void close(attr) struct sysfs_attribute* attr CODE: sysfs_close_attribute(attr); void read(attr) struct sysfs_attribute* attr CODE: if (sysfs_read_attribute(attr) == 0) { XSRETURN_YES; } else { XSRETURN_NO; } void write(attr, sv) struct sysfs_attribute* attr SV* sv PREINIT: char* value; STRLEN len; CODE: value = SvPV(sv, len); if (sysfs_write_attribute(attr, value, len) == 0) { XSRETURN_YES; } else { XSRETURN_NO; } char* value(attr) struct sysfs_attribute* attr CODE: RETVAL = attr->value; OUTPUT: RETVAL bool can_read(attr) struct sysfs_attribute* attr CODE: RETVAL = attr->method & SYSFS_METHOD_SHOW; OUTPUT: RETVAL bool can_write(attr) struct sysfs_attribute* attr CODE: RETVAL = attr->method & SYSFS_METHOD_STORE; OUTPUT: RETVAL char* name(attr) struct sysfs_attribute* attr CODE: RETVAL = attr->name; OUTPUT: RETVAL char* path(attr) struct sysfs_attribute* attr CODE: RETVAL = attr->path; OUTPUT: RETVAL