libudev-private.h revision c532d8a00cacacc6775effb7aadca680b1d39ccd
/***
This file is part of systemd.
Copyright 2008-2012 Kay Sievers <kay@vrfy.org>
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.
systemd is distributed in the hope that it will be useful, but
WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Lesser General Public License for more details.
You should have received a copy of the GNU Lesser General Public License
along with systemd; If not, see <http://www.gnu.org/licenses/>.
***/
#ifndef _LIBUDEV_PRIVATE_H_
#define _LIBUDEV_PRIVATE_H_
#include <signal.h>
#include <stdint.h>
#include <stdbool.h>
#include "libudev.h"
#include "macro.h"
#include "util.h"
#include "mkdir.h"
#include "strxcpyx.h"
#define READ_END 0
#define WRITE_END 1
/* libudev.c */
/* 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);
/* 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);
void util_remove_trailing_chars(char *path, char c);
unsigned int util_string_hash32(const char *key);
/* libudev-util-private.c */
int util_resolve_subsys_kernel(struct udev *udev, const char *string, char *result, size_t maxsize, int read_value);
#endif