libudev.h   libudev.h 
skipping to change at line 31 skipping to change at line 31
#define _LIBUDEV_H_ #define _LIBUDEV_H_
#include <stdarg.h> #include <stdarg.h>
#include <sys/stat.h> #include <sys/stat.h>
/* this will stay as long as the DeviceKit integration of udev is work in p rogress */ /* this will stay as long as the DeviceKit integration of udev is work in p rogress */
#if !defined _LIBUDEV_COMPILATION && !defined LIBUDEV_I_KNOW_THE_API_IS_SUB JECT_TO_CHANGE #if !defined _LIBUDEV_COMPILATION && !defined LIBUDEV_I_KNOW_THE_API_IS_SUB JECT_TO_CHANGE
#error "#define LIBUDEV_I_KNOW_THE_API_IS_SUBJECT_TO_CHANGE is needed to us e this experimental library version" #error "#define LIBUDEV_I_KNOW_THE_API_IS_SUBJECT_TO_CHANGE is needed to us e this experimental library version"
#endif #endif
/* library context */
struct udev; struct udev;
extern struct udev *udev_new(void); extern struct udev *udev_new(void);
extern struct udev *udev_ref(struct udev *udev); extern struct udev *udev_ref(struct udev *udev);
extern void udev_unref(struct udev *udev); extern void udev_unref(struct udev *udev);
extern void udev_set_log_fn(struct udev *udev, extern void udev_set_log_fn(struct udev *udev,
void (*log_fn)(struct udev *udev, void (*log_fn)(struct udev *udev,
int priority, const char *file, i nt line, const char *fn, int priority, const char *file, i nt line, const char *fn,
const char *format, va_list args) ); const char *format, va_list args) );
extern int udev_get_log_priority(struct udev *udev); extern int udev_get_log_priority(struct udev *udev);
extern void udev_set_log_priority(struct udev *udev, int priority); extern void udev_set_log_priority(struct udev *udev, int priority);
extern const char *udev_get_sys_path(struct udev *udev); extern const char *udev_get_sys_path(struct udev *udev);
extern const char *udev_get_dev_path(struct udev *udev); extern const char *udev_get_dev_path(struct udev *udev);
extern void *udev_get_userdata(struct udev *udev);
extern void udev_set_userdata(struct udev *udev, void *userdata);
/* selinux glue */
extern void udev_selinux_resetfscreatecon(struct udev *udev); extern void udev_selinux_resetfscreatecon(struct udev *udev);
extern void udev_selinux_setfscreatecon(struct udev *udev, const char *file , unsigned int mode); extern void udev_selinux_setfscreatecon(struct udev *udev, const char *file , unsigned int mode);
extern void udev_selinux_lsetfilecon(struct udev *udev, const char *file, u nsigned int mode); extern void udev_selinux_lsetfilecon(struct udev *udev, const char *file, u nsigned int mode);
/* list iteration */
struct udev_list_entry;
extern struct udev_list_entry *udev_list_entry_get_next(struct udev_list_en
try *list_entry);
extern struct udev_list_entry *udev_list_entry_get_by_name(struct udev_list
_entry *list_entry, const char *name);
extern const char *udev_list_entry_get_name(struct udev_list_entry *list_en
try);
extern const char *udev_list_entry_get_value(struct udev_list_entry *list_e
ntry);
#define udev_list_entry_foreach(entry, first) \
for (entry = first; \
entry != NULL; \
entry = udev_list_entry_get_next(entry))
/* sys devices */
struct udev_device; struct udev_device;
extern struct udev_device *udev_device_new_from_devpath(struct udev *udev, extern struct udev_device *udev_device_new_from_syspath(struct udev *udev,
const char *devpath); const char *syspath);
extern struct udev_device *udev_device_new_from_parent(struct udev_device * extern struct udev_device *udev_device_new_from_devnum(struct udev *udev, c
udev_device); har type, dev_t devnum);
extern struct udev_device *udev_device_get_parent(struct udev_device *udev_
device);
extern struct udev_device *udev_device_ref(struct udev_device *udev_device) ; extern struct udev_device *udev_device_ref(struct udev_device *udev_device) ;
extern void udev_device_unref(struct udev_device *udev_device); extern void udev_device_unref(struct udev_device *udev_device);
extern struct udev *udev_device_get_udev(struct udev_device *udev_device); extern struct udev *udev_device_get_udev(struct udev_device *udev_device);
extern const char *udev_device_get_devpath(struct udev_device *udev_device) ; extern const char *udev_device_get_devpath(struct udev_device *udev_device) ;
extern const char *udev_device_get_subsystem(struct udev_device *udev_devic e); extern const char *udev_device_get_subsystem(struct udev_device *udev_devic e);
extern const char *udev_device_get_syspath(struct udev_device *udev_device) ; extern const char *udev_device_get_syspath(struct udev_device *udev_device) ;
extern const char *udev_device_get_sysname(struct udev_device *udev_device) ; extern const char *udev_device_get_sysname(struct udev_device *udev_device) ;
extern const char *udev_device_get_devname(struct udev_device *udev_device) extern const char *udev_device_get_devnode(struct udev_device *udev_device)
; ;
extern int udev_device_get_devlinks(struct udev_device *udev_device, extern struct udev_list_entry *udev_device_get_devlinks_list_entry(struct u
int (*cb)(struct udev_device *udev_devic dev_device *udev_device);
e, extern struct udev_list_entry *udev_device_get_properties_list_entry(struct
const char *value, void *data) udev_device *udev_device);
,
void *data);
extern int udev_device_get_properties(struct udev_device *udev_device,
int (*cb)(struct udev_device *udev_dev
ice,
const char *key, const char
*value, void *data),
void *data);
extern const char *udev_device_get_driver(struct udev_device *udev_device); extern const char *udev_device_get_driver(struct udev_device *udev_device);
extern dev_t udev_device_get_devnum(struct udev_device *udev_device); extern dev_t udev_device_get_devnum(struct udev_device *udev_device);
extern const char *udev_device_get_action(struct udev_device *udev_device); extern const char *udev_device_get_action(struct udev_device *udev_device);
extern unsigned long long int udev_device_get_seqnum(struct udev_device *ud ev_device); extern unsigned long long int udev_device_get_seqnum(struct udev_device *ud ev_device);
extern const char *udev_device_get_attr_value(struct udev_device *udev_devi ce, const char *attr);
extern int udev_enumerate_devices(struct udev *udev, const char *subsystem, /* udev and kernel device events */
int (*cb)(struct udev *udev,
const char *devpath, const char
*subsystem, const char *name, void *data),
void *data);
struct udev_monitor; struct udev_monitor;
extern struct udev_monitor *udev_monitor_new_from_socket(struct udev *udev, const char *socket_path); extern struct udev_monitor *udev_monitor_new_from_socket(struct udev *udev, const char *socket_path);
extern struct udev_monitor *udev_monitor_new_from_netlink(struct udev *udev ); extern struct udev_monitor *udev_monitor_new_from_netlink(struct udev *udev );
extern int udev_monitor_enable_receiving(struct udev_monitor *udev_monitor) ; extern int udev_monitor_enable_receiving(struct udev_monitor *udev_monitor) ;
extern struct udev_monitor *udev_monitor_ref(struct udev_monitor *udev_moni tor); extern struct udev_monitor *udev_monitor_ref(struct udev_monitor *udev_moni tor);
extern void udev_monitor_unref(struct udev_monitor *udev_monitor); extern void udev_monitor_unref(struct udev_monitor *udev_monitor);
extern struct udev *udev_monitor_get_udev(struct udev_monitor *udev_monitor ); extern struct udev *udev_monitor_get_udev(struct udev_monitor *udev_monitor );
extern int udev_monitor_get_fd(struct udev_monitor *udev_monitor); extern int udev_monitor_get_fd(struct udev_monitor *udev_monitor);
extern struct udev_device *udev_monitor_receive_device(struct udev_monitor *udev_monitor); extern struct udev_device *udev_monitor_receive_device(struct udev_monitor *udev_monitor);
/* sys enumeration */
struct udev_enumerate;
extern struct udev_enumerate *udev_enumerate_new(struct udev *udev);
extern struct udev_enumerate *udev_enumerate_ref(struct udev_enumerate *ude
v_enumerate);
extern void udev_enumerate_unref(struct udev_enumerate *udev_enumerate);
extern struct udev *udev_enumerate_get_udev(struct udev_enumerate *udev_enu
merate);
extern int udev_enumerate_add_match_subsystem(struct udev_enumerate *udev_e
numerate, const char *subsystem);
extern int udev_enumerate_add_nomatch_subsystem(struct udev_enumerate *udev
_enumerate, const char *subsystem);
extern int udev_enumerate_add_match_attr(struct udev_enumerate *udev_enumer
ate, const char *attr, const char *value);
extern int udev_enumerate_add_nomatch_attr(struct udev_enumerate *udev_enum
erate, const char *attr, const char *value);
extern int udev_enumerate_add_device(struct udev_enumerate *udev_enumerate,
struct udev_device *udev_device);
extern int udev_enumerate_scan_devices(struct udev_enumerate *udev_enumerat
e);
extern int udev_enumerate_scan_subsystems(struct udev_enumerate *udev_enume
rate);
extern struct udev_list_entry *udev_enumerate_get_list_entry(struct udev_en
umerate *udev_enumerate);
/* event queue */
struct udev_queue;
extern struct udev_queue *udev_queue_new(struct udev *udev);
extern struct udev_queue *udev_queue_ref(struct udev_queue *udev_queue);
extern void udev_queue_unref(struct udev_queue *udev_queue);
extern struct udev *udev_queue_get_udev(struct udev_queue *udev_queue);
extern unsigned long long int udev_queue_get_kernel_seqnum(struct udev_queu
e *udev_queue);
extern unsigned long long int udev_queue_get_udev_seqnum(struct udev_queue
*udev_queue);
extern int udev_queue_get_queue_is_empty(struct udev_queue *udev_queue);
extern int udev_queue_get_seqnum_is_finished(struct udev_queue *udev_queue,
unsigned long long int seqnum);
extern struct udev_list_entry *udev_queue_get_queued_list_entry(struct udev
_queue *udev_queue);
extern struct udev_list_entry *udev_queue_get_failed_list_entry(struct udev
_queue *udev_queue);
#endif #endif
 End of changes. 8 change blocks. 
24 lines changed or deleted 77 lines changed or added

This html diff was produced by rfcdiff 1.41. The latest version is available from http://tools.ietf.org/tools/rfcdiff/