master.h revision 087939d3fa9c4056419386c9d6c81f147de534cd
45312f52ff3a3d4c137447be4c7556500c2f8bf2Timo Sirainen#ifndef MASTER_H
a27e065f1a1f91c7fbdf7c2ea1c387441af0cbb3Timo Sirainen#define MASTER_H
a27e065f1a1f91c7fbdf7c2ea1c387441af0cbb3Timo Sirainen
a27e065f1a1f91c7fbdf7c2ea1c387441af0cbb3Timo Sirainenstruct client;
a27e065f1a1f91c7fbdf7c2ea1c387441af0cbb3Timo Sirainen
e28fa207d1a097fa6e4a867f74ee0761472ef1ceTimo Sirainen#include "../master/master-login-interface.h"
adb6413686e52e00dded4932babcc08ff041876bTimo Sirainen
b039dabf4c53f72454e795930e7643b6e0e625f9Timo Sirainentypedef void master_callback_t(struct client *client,
ef50336eefcb9ba99f73c6af37420eaf8857a39bTimo Sirainen const struct master_login_reply *reply);
e28fa207d1a097fa6e4a867f74ee0761472ef1ceTimo Sirainen
ef50336eefcb9ba99f73c6af37420eaf8857a39bTimo Sirainenvoid master_request_login(struct client *client, master_callback_t *callback,
91b203fd2132510a47a4b34252c0ae0efd688a19Timo Sirainen unsigned int auth_pid, unsigned int auth_id);
a27e065f1a1f91c7fbdf7c2ea1c387441af0cbb3Timo Sirainenvoid master_request_abort(struct client *client);
a27e065f1a1f91c7fbdf7c2ea1c387441af0cbb3Timo Sirainen
a27e065f1a1f91c7fbdf7c2ea1c387441af0cbb3Timo Sirainen/* Notify master of a change in our state */
5694eeb99b69dea8033ca77ad69743c6b4871370Timo Sirainenvoid master_notify_state_change(enum master_login_state state);
a27e065f1a1f91c7fbdf7c2ea1c387441af0cbb3Timo Sirainen
5694eeb99b69dea8033ca77ad69743c6b4871370Timo Sirainen/* Close connection to master process */
a27e065f1a1f91c7fbdf7c2ea1c387441af0cbb3Timo Sirainenvoid master_close(void);
a27e065f1a1f91c7fbdf7c2ea1c387441af0cbb3Timo Sirainen
a27e065f1a1f91c7fbdf7c2ea1c387441af0cbb3Timo Sirainen/* inetd: Connect to existing master process, or create new one. */
a27e065f1a1f91c7fbdf7c2ea1c387441af0cbb3Timo Sirainenint master_connect(const char *group_name);
a27e065f1a1f91c7fbdf7c2ea1c387441af0cbb3Timo Sirainen
a27e065f1a1f91c7fbdf7c2ea1c387441af0cbb3Timo Sirainenvoid master_init(int fd);
a27e065f1a1f91c7fbdf7c2ea1c387441af0cbb3Timo Sirainenvoid master_deinit(void);
a27e065f1a1f91c7fbdf7c2ea1c387441af0cbb3Timo Sirainen
a27e065f1a1f91c7fbdf7c2ea1c387441af0cbb3Timo Sirainen#endif
de486b59018016977015ef42e6071155b60e82e1Timo Sirainen