chiark / gitweb /
libudev: add userdata pointer
[elogind.git] / udev / lib / libudev.c
index d1dd9e4838251bca244f82c3a6eea722a5417a3e..3ff6cabbb01a7ed5e785502be10e14671a2569d0 100644 (file)
@@ -17,8 +17,6 @@
  * along with this program.  If not, see <http://www.gnu.org/licenses/>.
  */
 
-#include "config.h"
-
 #include <stdio.h>
 #include <stdlib.h>
 #include <stddef.h>
 
 #include "libudev.h"
 #include "libudev-private.h"
-#include "../udev.h"
 
 struct udev {
        int refcount;
        void (*log_fn)(struct udev *udev,
                       int priority, const char *file, int line, const char *fn,
                       const char *format, va_list args);
+       void *userdata;
        char *sys_path;
        char *dev_path;
        char *rules_path;
@@ -92,6 +90,20 @@ static void selinux_init(struct udev *udev)
 #endif
 }
 
+void *udev_get_userdata(struct udev *udev)
+{
+       if (udev == NULL)
+               return NULL;
+       return udev->userdata;
+}
+
+void udev_set_userdata(struct udev *udev, void *userdata)
+{
+       if (udev == NULL)
+               return;
+       udev->userdata = userdata;
+}
+
 static void selinux_exit(struct udev *udev)
 {
 #ifdef USE_SELINUX
@@ -201,7 +213,7 @@ struct udev *udev_new(void)
                goto err;
        f = fopen(config_file, "r");
        if (f != NULL) {
-               char line[LINE_SIZE];
+               char line[UTIL_LINE_SIZE];
                int line_nr = 0;
 
                while (fgets(line, sizeof(line), f)) {