summaryrefslogtreecommitdiffstats
path: root/server/nss/nsssrv.h
diff options
context:
space:
mode:
authorSimo Sorce <idra@samba.org>2008-10-06 12:20:43 -0400
committerSimo Sorce <idra@samba.org>2008-10-06 12:20:43 -0400
commitb4cd915ef70f74427d71cde238db56a1876b5b06 (patch)
tree61d5f00207425bbbbfaf9b0e5ecd773f08414764 /server/nss/nsssrv.h
parent9d09b92dbe073b2d70c91f934296ed7ce4f3abec (diff)
downloadsssd-b4cd915ef70f74427d71cde238db56a1876b5b06.tar.gz
sssd-b4cd915ef70f74427d71cde238db56a1876b5b06.tar.xz
sssd-b4cd915ef70f74427d71cde238db56a1876b5b06.zip
First working daemon that responds only to a getpwnam() request with fake data
Diffstat (limited to 'server/nss/nsssrv.h')
-rw-r--r--server/nss/nsssrv.h26
1 files changed, 23 insertions, 3 deletions
diff --git a/server/nss/nsssrv.h b/server/nss/nsssrv.h
index 5e6c9aa55..075db1d0e 100644
--- a/server/nss/nsssrv.h
+++ b/server/nss/nsssrv.h
@@ -23,13 +23,27 @@
#define __NSSSRV_H__
#include <stdint.h>
+#include <sys/un.h>
+#include "talloc.h"
+#include "events.h"
#include "../nss_client/sss_nss.h"
+struct nss_ctx {
+ struct task_server *task;
+ struct fd_event *lfde;
+ int lfd;
+};
+
+struct cli_ctx {
+ int cfd;
+ struct fd_event *cfde;
+ struct sockaddr_un addr;
+ struct cli_request *creq;
+};
+
struct nss_packet;
struct cli_request {
- enum sss_nss_command cmd;
- void *cmd_req;
/* original request from the wire */
struct nss_packet *in;
@@ -40,9 +54,15 @@ struct cli_request {
/* from nsssrv_packet.c */
int nss_packet_new(TALLOC_CTX *mem_ctx, size_t size,
- struct nss_packet **rpacket);
+ enum sss_nss_command cmd,
+ struct nss_packet **rpacket);
int nss_packet_grow(struct nss_packet *packet, size_t size);
int nss_packet_recv(struct nss_packet *packet, int fd);
int nss_packet_send(struct nss_packet *packet, int fd);
+enum sss_nss_command nss_get_cmd(struct nss_packet *packet);
+void nss_get_body(struct nss_packet *packet, uint8_t **body, size_t *blen);
+
+/* from nsssrv_cmd.c */
+int nss_cmd_execute(struct event_context *ev, struct cli_ctx *cctx);
#endif /* __NSSSRV_H__ */