view src/auth/auth-master-listener.h @ 9575:0a00dcc4f0ea HEAD

lib-storage: Allow shared namespace prefix to use %variable modifiers.
author Timo Sirainen <tss@iki.fi>
date Wed, 26 May 2010 17:07:51 +0100
parents e4eb71ae8e96
children
line wrap: on
line source

#ifndef AUTH_MASTER_LISTENER_H
#define AUTH_MASTER_LISTENER_H

enum listener_type {
	LISTENER_MASTER,
	LISTENER_CLIENT
};

struct auth_master_listener {
	struct auth *auth;
	unsigned int pid;

	ARRAY_DEFINE(sockets, struct auth_master_listener_socket *);
	ARRAY_DEFINE(masters, struct auth_master_connection *);
	ARRAY_DEFINE(clients, struct auth_client_connection *);

	struct timeout *to_clients;
};

struct auth_master_listener *auth_master_listener_create(struct auth *auth);
void auth_master_listener_destroy(struct auth_master_listener *listener);

void auth_master_listener_add(struct auth_master_listener *listener,
			      int fd, const char *path,
			      enum listener_type type);

void auth_master_listeners_send_handshake(void);
bool auth_master_listeners_masters_left(void);

void auth_master_listeners_init(void);
void auth_master_listeners_deinit(void);

#endif