Move includes into subdirectory
authorJo-Philipp Wich <jow@openwrt.org>
Wed, 4 Sep 2013 10:46:11 +0000 (12:46 +0200)
committerJo-Philipp Wich <jow@openwrt.org>
Wed, 4 Sep 2013 10:46:11 +0000 (12:46 +0200)
17 files changed:
CMakeLists.txt
exec.c
exec.h [deleted file]
file.c
include/rpcd/exec.h [new file with mode: 0644]
include/rpcd/plugin.h [new file with mode: 0644]
include/rpcd/session.h [new file with mode: 0644]
include/rpcd/uci.h [new file with mode: 0644]
iwinfo.c
luci2.c
main.c
plugin.c
plugin.h [deleted file]
session.c
session.h [deleted file]
uci.c
uci.h [deleted file]

index f448a72d93a8ca67777f7c9732e9a9d0a7958236..cbdf743936ad30a47a860ffde2830eb511b324ca 100644 (file)
@@ -1,7 +1,7 @@
 cmake_minimum_required(VERSION 2.6)
 
 PROJECT(rpcd C)
-ADD_DEFINITIONS(-Os -Wall -Werror --std=gnu99 -g3 -Wmissing-declarations)
+ADD_DEFINITIONS(-Os -Wall -Werror --std=gnu99 -g3 -Wmissing-declarations -Iinclude)
 
 OPTION(FILE_SUPPORT "File plugin support" ON)
 OPTION(LUCI2_SUPPORT "LuCI2 plugin support" ON)
diff --git a/exec.c b/exec.c
index c03e450a6cd46db22c8b7cdc4f0f6a719fec8fb3..a5f6561cbefb405d9de9fcf03750c93d2a9cf6d1 100644 (file)
--- a/exec.c
+++ b/exec.c
@@ -26,7 +26,7 @@
 #include <sys/stat.h>
 #include <sys/wait.h>
 
-#include "exec.h"
+#include <rpcd/exec.h>
 
 static int
 rpc_errno_status(void)
diff --git a/exec.h b/exec.h
deleted file mode 100644 (file)
index 05ba3ca..0000000
--- a/exec.h
+++ /dev/null
@@ -1,86 +0,0 @@
-/*
- * rpcd - UBUS RPC server
- *
- *   Copyright (C) 2013 Jo-Philipp Wich <jow@openwrt.org>
- *
- * Permission to use, copy, modify, and/or distribute this software for any
- * purpose with or without fee is hereby granted, provided that the above
- * copyright notice and this permission notice appear in all copies.
- *
- * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
- * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
- * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
- * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
- * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
- * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
- * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
- */
-
-#ifndef __RPC_EXEC_H
-#define __RPC_EXEC_H
-
-#include <libubus.h>
-#include <libubox/blobmsg.h>
-#include <libubox/ustream.h>
-
-#define RPC_EXEC_MAX_SIZE              (4096 * 64)
-#define RPC_EXEC_MAX_RUNTIME   (30 * 1000)
-
-#define ustream_for_each_read_buffer(stream, ptr, len) \
-       for (ptr = ustream_get_read_buf(stream, &len);     \
-            ptr != NULL && len > 0;                       \
-            ustream_consume(stream, len), ptr = ustream_get_read_buf(stream, &len))
-
-#define ustream_declare_read(us, fd, name)                    \
-       do {                                                      \
-               us.stream.string_data   = true;                       \
-               us.stream.r.buffer_len  = 4096;                       \
-               us.stream.r.max_buffers = RPC_EXEC_MAX_SIZE / 4096;   \
-               us.stream.notify_read   = rpc_exec_##name##_read_cb;  \
-               us.stream.notify_state  = rpc_exec_##name##_state_cb; \
-               ustream_fd_init(&us, fd);                             \
-       } while(0)
-
-#define ustream_declare_write(us, fd, name)                   \
-       do {                                                      \
-               us.stream.string_data   = true;                       \
-               us.stream.w.buffer_len  = 4096;                       \
-               us.stream.w.max_buffers = RPC_EXEC_MAX_SIZE / 4096;   \
-               us.stream.notify_write  = rpc_exec_##name##_write_cb; \
-               ustream_fd_init(&us, fd);                             \
-       } while(0)
-
-
-typedef int (*rpc_exec_write_cb_t)(struct ustream *, void *);
-typedef int (*rpc_exec_read_cb_t)(struct blob_buf *, char *, int, void *);
-typedef int (*rpc_exec_done_cb_t)(struct blob_buf *, int, void *);
-
-struct rpc_exec_context {
-       struct ubus_context *context;
-       struct ubus_request_data request;
-       struct uloop_timeout timeout;
-       struct uloop_process process;
-       struct ustream_fd ipipe;
-       struct ustream_fd opipe;
-       struct ustream_fd epipe;
-       int outlen;
-       char *out;
-       int errlen;
-       char *err;
-       int stat;
-       void *priv;
-       bool blob_array;
-       void *blob_cookie;
-       struct blob_buf blob;
-       rpc_exec_write_cb_t stdin_cb;
-       rpc_exec_read_cb_t stdout_cb;
-       rpc_exec_read_cb_t stderr_cb;
-       rpc_exec_done_cb_t finish_cb;
-};
-
-int rpc_exec(const char **args, rpc_exec_write_cb_t in,
-             rpc_exec_read_cb_t out, rpc_exec_read_cb_t err,
-             rpc_exec_done_cb_t end, void *priv, struct ubus_context *ctx,
-             struct ubus_request_data *req);
-
-#endif
diff --git a/file.c b/file.c
index b1cfe99d5c55dce11272d06ce0a76aa407db5243..4a8a5c8064d1fee950d1d20d4e4fcf16c8540e1d 100644 (file)
--- a/file.c
+++ b/file.c
@@ -29,7 +29,7 @@
 #include <libubox/blobmsg.h>
 #include <libubox/ustream.h>
 
-#include "plugin.h"
+#include <rpcd/plugin.h>
 
 /* limit of sys & proc files */
 #define RPC_FILE_MIN_SIZE              (128)
diff --git a/include/rpcd/exec.h b/include/rpcd/exec.h
new file mode 100644 (file)
index 0000000..05ba3ca
--- /dev/null
@@ -0,0 +1,86 @@
+/*
+ * rpcd - UBUS RPC server
+ *
+ *   Copyright (C) 2013 Jo-Philipp Wich <jow@openwrt.org>
+ *
+ * Permission to use, copy, modify, and/or distribute this software for any
+ * purpose with or without fee is hereby granted, provided that the above
+ * copyright notice and this permission notice appear in all copies.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
+ * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
+ * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
+ * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
+ * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
+ * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
+ * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
+ */
+
+#ifndef __RPC_EXEC_H
+#define __RPC_EXEC_H
+
+#include <libubus.h>
+#include <libubox/blobmsg.h>
+#include <libubox/ustream.h>
+
+#define RPC_EXEC_MAX_SIZE              (4096 * 64)
+#define RPC_EXEC_MAX_RUNTIME   (30 * 1000)
+
+#define ustream_for_each_read_buffer(stream, ptr, len) \
+       for (ptr = ustream_get_read_buf(stream, &len);     \
+            ptr != NULL && len > 0;                       \
+            ustream_consume(stream, len), ptr = ustream_get_read_buf(stream, &len))
+
+#define ustream_declare_read(us, fd, name)                    \
+       do {                                                      \
+               us.stream.string_data   = true;                       \
+               us.stream.r.buffer_len  = 4096;                       \
+               us.stream.r.max_buffers = RPC_EXEC_MAX_SIZE / 4096;   \
+               us.stream.notify_read   = rpc_exec_##name##_read_cb;  \
+               us.stream.notify_state  = rpc_exec_##name##_state_cb; \
+               ustream_fd_init(&us, fd);                             \
+       } while(0)
+
+#define ustream_declare_write(us, fd, name)                   \
+       do {                                                      \
+               us.stream.string_data   = true;                       \
+               us.stream.w.buffer_len  = 4096;                       \
+               us.stream.w.max_buffers = RPC_EXEC_MAX_SIZE / 4096;   \
+               us.stream.notify_write  = rpc_exec_##name##_write_cb; \
+               ustream_fd_init(&us, fd);                             \
+       } while(0)
+
+
+typedef int (*rpc_exec_write_cb_t)(struct ustream *, void *);
+typedef int (*rpc_exec_read_cb_t)(struct blob_buf *, char *, int, void *);
+typedef int (*rpc_exec_done_cb_t)(struct blob_buf *, int, void *);
+
+struct rpc_exec_context {
+       struct ubus_context *context;
+       struct ubus_request_data request;
+       struct uloop_timeout timeout;
+       struct uloop_process process;
+       struct ustream_fd ipipe;
+       struct ustream_fd opipe;
+       struct ustream_fd epipe;
+       int outlen;
+       char *out;
+       int errlen;
+       char *err;
+       int stat;
+       void *priv;
+       bool blob_array;
+       void *blob_cookie;
+       struct blob_buf blob;
+       rpc_exec_write_cb_t stdin_cb;
+       rpc_exec_read_cb_t stdout_cb;
+       rpc_exec_read_cb_t stderr_cb;
+       rpc_exec_done_cb_t finish_cb;
+};
+
+int rpc_exec(const char **args, rpc_exec_write_cb_t in,
+             rpc_exec_read_cb_t out, rpc_exec_read_cb_t err,
+             rpc_exec_done_cb_t end, void *priv, struct ubus_context *ctx,
+             struct ubus_request_data *req);
+
+#endif
diff --git a/include/rpcd/plugin.h b/include/rpcd/plugin.h
new file mode 100644 (file)
index 0000000..6b3d244
--- /dev/null
@@ -0,0 +1,65 @@
+/*
+ * rpcd - UBUS RPC server
+ *
+ *   Copyright (C) 2013 Jo-Philipp Wich <jow@openwrt.org>
+ *
+ * Permission to use, copy, modify, and/or distribute this software for any
+ * purpose with or without fee is hereby granted, provided that the above
+ * copyright notice and this permission notice appear in all copies.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
+ * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
+ * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
+ * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
+ * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
+ * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
+ * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
+ */
+
+#ifndef __RPC_PLUGIN_H
+#define __RPC_PLUGIN_H
+
+#define _GNU_SOURCE /* asprintf() */
+
+#include <dlfcn.h>
+#include <stdio.h>
+#include <fcntl.h>
+#include <unistd.h>
+#include <limits.h>
+#include <dirent.h>
+#include <sys/stat.h>
+#include <sys/wait.h>
+#include <sys/types.h>
+
+#include <libubox/blobmsg_json.h>
+#include <libubus.h>
+
+#include "exec.h"
+#include "session.h"
+
+/* location of plugin executables */
+#define RPC_PLUGIN_DIRECTORY        "/usr/libexec/rpcd"
+
+/* location of plugin libraries */
+#define RPC_LIBRARY_DIRECTORY       "/usr/lib/rpcd"
+
+struct rpc_daemon_ops {
+    bool (*session_access)(const char *sid, const char *scope,
+                           const char *object, const char *function);
+    void (*session_create_cb)(struct rpc_session_cb *cb);
+    void (*session_destroy_cb)(struct rpc_session_cb *cb);
+    int (*exec)(const char **args,
+                rpc_exec_write_cb_t in, rpc_exec_read_cb_t out,
+                rpc_exec_read_cb_t err, rpc_exec_done_cb_t end,
+                void *priv, struct ubus_context *ctx,
+                struct ubus_request_data *req);
+};
+
+struct rpc_plugin {
+    struct list_head list;
+    int (*init)(const struct rpc_daemon_ops *ops, struct ubus_context *ctx);
+};
+
+int rpc_plugin_api_init(struct ubus_context *ctx);
+
+#endif
diff --git a/include/rpcd/session.h b/include/rpcd/session.h
new file mode 100644 (file)
index 0000000..59b2864
--- /dev/null
@@ -0,0 +1,71 @@
+/*
+ * rpcd - UBUS RPC server
+ *
+ *   Copyright (C) 2013 Felix Fietkau <nbd@openwrt.org>
+ *   Copyright (C) 2013 Jo-Philipp Wich <jow@openwrt.org>
+ *
+ * Permission to use, copy, modify, and/or distribute this software for any
+ * purpose with or without fee is hereby granted, provided that the above
+ * copyright notice and this permission notice appear in all copies.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
+ * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
+ * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
+ * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
+ * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
+ * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
+ * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
+ */
+
+#ifndef __RPC_SESSION_H
+#define __RPC_SESSION_H
+
+#include <libubox/avl.h>
+#include <libubox/blobmsg_json.h>
+
+#define RPC_SID_LEN    32
+#define RPC_DEFAULT_SESSION_TIMEOUT    300
+
+struct rpc_session {
+       struct avl_node avl;
+       char id[RPC_SID_LEN + 1];
+
+       struct uloop_timeout t;
+       struct avl_tree data;
+       struct avl_tree acls;
+
+       int timeout;
+};
+
+struct rpc_session_data {
+       struct avl_node avl;
+       struct blob_attr attr[];
+};
+
+struct rpc_session_acl_scope {
+       struct avl_node avl;
+       struct avl_tree acls;
+};
+
+struct rpc_session_acl {
+       struct avl_node avl;
+       const char *object;
+       const char *function;
+       int sort_len;
+};
+
+int rpc_session_api_init(struct ubus_context *ctx);
+
+bool rpc_session_access(const char *sid, const char *scope,
+                        const char *object, const char *function);
+
+struct rpc_session_cb {
+       struct list_head list;
+       void (*cb)(struct rpc_session *, void *);
+       void *priv;
+};
+
+void rpc_session_create_cb(struct rpc_session_cb *cb);
+void rpc_session_destroy_cb(struct rpc_session_cb *cb);
+
+#endif
diff --git a/include/rpcd/uci.h b/include/rpcd/uci.h
new file mode 100644 (file)
index 0000000..a4f79e2
--- /dev/null
@@ -0,0 +1,35 @@
+/*
+ * rpcd - UBUS RPC server
+ *
+ *   Copyright (C) 2013 Jo-Philipp Wich <jow@openwrt.org>
+ *
+ * Permission to use, copy, modify, and/or distribute this software for any
+ * purpose with or without fee is hereby granted, provided that the above
+ * copyright notice and this permission notice appear in all copies.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
+ * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
+ * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
+ * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
+ * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
+ * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
+ * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
+ */
+
+#ifndef __RPC_UCI_H
+#define __RPC_UCI_H
+
+#include <glob.h>
+#include <limits.h>
+#include <dirent.h>
+#include <unistd.h>
+#include <sys/stat.h>
+#include <sys/types.h>
+
+#include <inttypes.h>
+#include <libubus.h>
+#include <uci.h>
+
+int rpc_uci_api_init(struct ubus_context *ctx);
+
+#endif
index 78f4485027ba01239d4403017dba35a3c27076fa..3faf66207d90492bd38761f7d173c69492030566 100644 (file)
--- a/iwinfo.c
+++ b/iwinfo.c
@@ -22,7 +22,7 @@
 #include <iwinfo.h>
 #include <iwinfo/utils.h>
 
-#include "plugin.h"
+#include <rpcd/plugin.h>
 
 
 static struct blob_buf buf;
diff --git a/luci2.c b/luci2.c
index 50381a2760d7b8add5ae579fa009febec588d67e..f136c56eaf87e7f5cfa62dec47bfe4f15fedf606 100644 (file)
--- a/luci2.c
+++ b/luci2.c
@@ -34,7 +34,7 @@
 #include <libubus.h>
 #include <uci.h>
 
-#include "plugin.h"
+#include <rpcd/plugin.h>
 
 /* limit of log size buffer */
 #define RPC_LUCI2_MAX_LOGSIZE          (128 * 1024)
diff --git a/main.c b/main.c
index efaa114aded0f8aa6d9fab6852f56fc5fd7316a5..7335780bba067f383166ab871be6150058d66cca 100644 (file)
--- a/main.c
+++ b/main.c
@@ -23,9 +23,9 @@
 #include <libubus.h>
 #include <signal.h>
 
-#include "session.h"
-#include "uci.h"
-#include "plugin.h"
+#include <rpcd/session.h>
+#include <rpcd/uci.h>
+#include <rpcd/plugin.h>
 
 static struct ubus_context *ctx;
 
index afc138315b7219030b7e7fb83065d57e6596fecc..2d5b6c1cb2d0fccd2b4483df3beebb2c5450e4cf 100644 (file)
--- a/plugin.c
+++ b/plugin.c
@@ -16,7 +16,7 @@
  * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
  */
 
-#include "plugin.h"
+#include <rpcd/plugin.h>
 
 static struct blob_buf buf;
 
diff --git a/plugin.h b/plugin.h
deleted file mode 100644 (file)
index 6b3d244..0000000
--- a/plugin.h
+++ /dev/null
@@ -1,65 +0,0 @@
-/*
- * rpcd - UBUS RPC server
- *
- *   Copyright (C) 2013 Jo-Philipp Wich <jow@openwrt.org>
- *
- * Permission to use, copy, modify, and/or distribute this software for any
- * purpose with or without fee is hereby granted, provided that the above
- * copyright notice and this permission notice appear in all copies.
- *
- * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
- * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
- * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
- * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
- * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
- * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
- * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
- */
-
-#ifndef __RPC_PLUGIN_H
-#define __RPC_PLUGIN_H
-
-#define _GNU_SOURCE /* asprintf() */
-
-#include <dlfcn.h>
-#include <stdio.h>
-#include <fcntl.h>
-#include <unistd.h>
-#include <limits.h>
-#include <dirent.h>
-#include <sys/stat.h>
-#include <sys/wait.h>
-#include <sys/types.h>
-
-#include <libubox/blobmsg_json.h>
-#include <libubus.h>
-
-#include "exec.h"
-#include "session.h"
-
-/* location of plugin executables */
-#define RPC_PLUGIN_DIRECTORY        "/usr/libexec/rpcd"
-
-/* location of plugin libraries */
-#define RPC_LIBRARY_DIRECTORY       "/usr/lib/rpcd"
-
-struct rpc_daemon_ops {
-    bool (*session_access)(const char *sid, const char *scope,
-                           const char *object, const char *function);
-    void (*session_create_cb)(struct rpc_session_cb *cb);
-    void (*session_destroy_cb)(struct rpc_session_cb *cb);
-    int (*exec)(const char **args,
-                rpc_exec_write_cb_t in, rpc_exec_read_cb_t out,
-                rpc_exec_read_cb_t err, rpc_exec_done_cb_t end,
-                void *priv, struct ubus_context *ctx,
-                struct ubus_request_data *req);
-};
-
-struct rpc_plugin {
-    struct list_head list;
-    int (*init)(const struct rpc_daemon_ops *ops, struct ubus_context *ctx);
-};
-
-int rpc_plugin_api_init(struct ubus_context *ctx);
-
-#endif
index 6cc4ffe883dfd249569aa361f0837bde4c46d510..c8da5a4d7183ff480c8f30b803920a12377b3252 100644 (file)
--- a/session.c
+++ b/session.c
@@ -22,7 +22,7 @@
 #include <libubus.h>
 #include <fnmatch.h>
 
-#include "session.h"
+#include <rpcd/session.h>
 
 static struct avl_tree sessions;
 static struct blob_buf buf;
diff --git a/session.h b/session.h
deleted file mode 100644 (file)
index 59b2864..0000000
--- a/session.h
+++ /dev/null
@@ -1,71 +0,0 @@
-/*
- * rpcd - UBUS RPC server
- *
- *   Copyright (C) 2013 Felix Fietkau <nbd@openwrt.org>
- *   Copyright (C) 2013 Jo-Philipp Wich <jow@openwrt.org>
- *
- * Permission to use, copy, modify, and/or distribute this software for any
- * purpose with or without fee is hereby granted, provided that the above
- * copyright notice and this permission notice appear in all copies.
- *
- * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
- * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
- * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
- * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
- * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
- * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
- * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
- */
-
-#ifndef __RPC_SESSION_H
-#define __RPC_SESSION_H
-
-#include <libubox/avl.h>
-#include <libubox/blobmsg_json.h>
-
-#define RPC_SID_LEN    32
-#define RPC_DEFAULT_SESSION_TIMEOUT    300
-
-struct rpc_session {
-       struct avl_node avl;
-       char id[RPC_SID_LEN + 1];
-
-       struct uloop_timeout t;
-       struct avl_tree data;
-       struct avl_tree acls;
-
-       int timeout;
-};
-
-struct rpc_session_data {
-       struct avl_node avl;
-       struct blob_attr attr[];
-};
-
-struct rpc_session_acl_scope {
-       struct avl_node avl;
-       struct avl_tree acls;
-};
-
-struct rpc_session_acl {
-       struct avl_node avl;
-       const char *object;
-       const char *function;
-       int sort_len;
-};
-
-int rpc_session_api_init(struct ubus_context *ctx);
-
-bool rpc_session_access(const char *sid, const char *scope,
-                        const char *object, const char *function);
-
-struct rpc_session_cb {
-       struct list_head list;
-       void (*cb)(struct rpc_session *, void *);
-       void *priv;
-};
-
-void rpc_session_create_cb(struct rpc_session_cb *cb);
-void rpc_session_destroy_cb(struct rpc_session_cb *cb);
-
-#endif
diff --git a/uci.c b/uci.c
index 34c6830742dcdb52956d26a88a865e15162e7661..3fd187d65e8227f5debbe01436c68f302285dc40 100644 (file)
--- a/uci.c
+++ b/uci.c
@@ -16,8 +16,8 @@
  * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
  */
 
-#include "uci.h"
-#include "session.h"
+#include <rpcd/uci.h>
+#include <rpcd/session.h>
 
 static struct blob_buf buf;
 static struct uci_context *cursor;
diff --git a/uci.h b/uci.h
deleted file mode 100644 (file)
index a4f79e2..0000000
--- a/uci.h
+++ /dev/null
@@ -1,35 +0,0 @@
-/*
- * rpcd - UBUS RPC server
- *
- *   Copyright (C) 2013 Jo-Philipp Wich <jow@openwrt.org>
- *
- * Permission to use, copy, modify, and/or distribute this software for any
- * purpose with or without fee is hereby granted, provided that the above
- * copyright notice and this permission notice appear in all copies.
- *
- * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
- * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
- * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
- * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
- * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
- * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
- * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
- */
-
-#ifndef __RPC_UCI_H
-#define __RPC_UCI_H
-
-#include <glob.h>
-#include <limits.h>
-#include <dirent.h>
-#include <unistd.h>
-#include <sys/stat.h>
-#include <sys/types.h>
-
-#include <inttypes.h>
-#include <libubus.h>
-#include <uci.h>
-
-int rpc_uci_api_init(struct ubus_context *ctx);
-
-#endif