libudev-private.h revision 289a1821a4a7636ce42a6c7adc3a9bb49421a5ea
/*
* libudev - interface to udev device information
*
* Copyright (C) 2008-2010 Kay Sievers <kay.sievers@vrfy.org>
*
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*/
#ifndef _LIBUDEV_PRIVATE_H_
#define _LIBUDEV_PRIVATE_H_
#include <syslog.h>
#include <signal.h>
#include <stdint.h>
#include <stdbool.h>
#include "libudev.h"
#define ARRAY_SIZE(x) (sizeof(x) / sizeof((x)[0]))
#define READ_END 0
#define WRITE_END 1
do { \
} while (0)
#ifdef ENABLE_LOGGING
# ifdef ENABLE_DEBUG
# else
# endif
#else
#endif
static inline void udev_log_init(const char *program_name)
{
}
static inline void udev_log_close(void)
{
closelog();
}
/* libudev.c */
const char *format, ...)
/* libudev-device.c */
struct udev_list_entry *udev_device_add_property(struct udev_device *udev_device, const char *key, const char *value);
void udev_device_add_property_from_string_parse(struct udev_device *udev_device, const char *property);
void udev_device_set_usec_initialized(struct udev_device *udev_device, unsigned long long usec_initialized);
/* libudev-device-private.c */
/* libudev-monitor.c - netlink/unix socket communication */
int udev_monitor_allow_unicast_sender(struct udev_monitor *udev_monitor, struct udev_monitor *sender);
/* libudev-list.c */
struct udev_list_node {
};
struct udev_list {
struct udev_list_node node;
struct udev_list_entry **entries;
unsigned int entries_cur;
unsigned int entries_max;
bool unique;
};
struct udev_list_entry *udev_list_entry_add(struct udev_list *list, const char *name, const char *value);
/* libudev-queue.c */
/* libudev-queue-private.c */
int udev_queue_export_device_queued(struct udev_queue_export *udev_queue_export, struct udev_device *udev_device);
int udev_queue_export_device_finished(struct udev_queue_export *udev_queue_export, struct udev_device *udev_device);
/* libudev-util.c */
#define UTIL_PATH_SIZE 1024
#define UTIL_NAME_SIZE 512
#define UTIL_LINE_SIZE 16384
#define UDEV_ALLOWED_CHARS_INPUT "/ $%?,"
ssize_t util_get_sys_core_link_value(struct udev *udev, const char *slink, const char *syspath, char *value, size_t size);
int util_log_priority(const char *priority);
size_t util_path_decode(char *s);
void util_remove_trailing_chars(char *path, char c);
unsigned int util_string_hash32(const char *key);
/* libudev-util-private.c */
unsigned long long now_usec(void);
#ifndef WITH_SELINUX
static inline void udev_selinux_lsetfilecon(struct udev *udev, const char *file, unsigned int mode) {}
static inline void udev_selinux_setfscreatecon(struct udev *udev, const char *file, unsigned int mode) {}
static inline void udev_selinux_setfscreateconat(struct udev *udev, int dfd, const char *file, unsigned int mode) {}
#else
void udev_selinux_setfscreateconat(struct udev *udev, int dfd, const char *file, unsigned int mode);
#endif
#endif