diff --git a/include/rbac/object.h b/include/rbac/object.h
new file mode 100644
index 0000000..34b6d0c
--- /dev/null
+++ b/include/rbac/object.h
@@ -0,0 +1,40 @@
+/**
+ * \file
+ *
+ * \author Georg Hopp
+ *
+ * \copyright
+ * Copyright © 2012 Georg Hopp
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * This program 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 General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see .
+ */
+
+#ifndef __RBAC_OBJECT_H__
+#define __RBAC_OBJECT_H__
+
+#include
+
+#include "class.h"
+#include "storage/storage.h"
+
+
+CLASS(RbacObject) {
+ char * name;
+ size_t nname;
+};
+
+#endif // __RBAC_OBJECT_H__
+
+// vim: set ts=4 sw=4:
+
diff --git a/include/rbac/operation.h b/include/rbac/operation.h
new file mode 100644
index 0000000..05bf232
--- /dev/null
+++ b/include/rbac/operation.h
@@ -0,0 +1,40 @@
+/**
+ * \file
+ *
+ * \author Georg Hopp
+ *
+ * \copyright
+ * Copyright © 2012 Georg Hopp
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * This program 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 General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see .
+ */
+
+#ifndef __RBAC_OPERATION_H__
+#define __RBAC_OPERATION_H__
+
+#include
+
+#include "class.h"
+
+
+CLASS(RbacOperation) {
+ char * name;
+ size_t nname;
+};
+
+
+#endif // __RBAC_OPERATION_H__
+
+// vim: set ts=4 sw=4:
+
diff --git a/include/rbac/permission.h b/include/rbac/permission.h
new file mode 100644
index 0000000..39d4815
--- /dev/null
+++ b/include/rbac/permission.h
@@ -0,0 +1,40 @@
+/**
+ * \file
+ *
+ * \author Georg Hopp
+ *
+ * \copyright
+ * Copyright © 2012 Georg Hopp
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * This program 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 General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see .
+ */
+
+#ifndef __RBAC_PERMIOSSION_H__
+#define __RBAC_PERMIOSSION_H__
+
+#include
+
+#include "class.h"
+#include "storage/storage.h"
+
+
+CLASS(RbacPermission) {
+ char * name;
+ size_t nname;
+};
+
+#endif // __RBAC_PERMIOSSION_H__
+
+// vim: set ts=4 sw=4:
+
diff --git a/include/rbac/role.h b/include/rbac/role.h
new file mode 100644
index 0000000..843b857
--- /dev/null
+++ b/include/rbac/role.h
@@ -0,0 +1,40 @@
+/**
+ * \file
+ *
+ * \author Georg Hopp
+ *
+ * \copyright
+ * Copyright © 2012 Georg Hopp
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * This program 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 General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see .
+ */
+
+#ifndef __RBAC_ROLE_H__
+#define __RBAC_ROLE_H__
+
+#include
+
+#include "class.h"
+#include "storage/storage.h"
+
+
+CLASS(RbacRole) {
+ char * name;
+ size_t nname;
+};
+
+#endif // __RBAC_ROLE_H__
+
+// vim: set ts=4 sw=4:
+
diff --git a/include/rbac/user.h b/include/rbac/user.h
new file mode 100644
index 0000000..b5cf751
--- /dev/null
+++ b/include/rbac/user.h
@@ -0,0 +1,51 @@
+/**
+ * \file
+ *
+ * \author Georg Hopp
+ *
+ * \copyright
+ * Copyright © 2012 Georg Hopp
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * This program 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 General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see .
+ */
+
+#ifndef __RBAC_USER_H__
+#define __RBAC_USER_H__
+
+#include
+
+#include "class.h"
+
+
+/**
+ * this has to implement serializeable.
+ * Well maybe it hasn't...to be honest I think this
+ * is more part of my storage class...if I would use
+ * a relational database the handling would be completely
+ * different when it comes to storage...it's somewhat
+ * tricky to find the correct interface when we want to
+ * be flexible in future.
+ */
+CLASS(RbacUser) {
+ char * name;
+ size_t nname;
+};
+
+// void userSerialize(User, void **, size_t *);
+// void userDeserialize(User, void *, size_t);
+
+#endif // __USER_H__
+
+// vim: set ts=4 sw=4:
+