Home | History | Annotate | Line # | Download | only in dmeventd
      1 /*	$NetBSD: dmeventd.h,v 1.1.1.1 2008/12/22 00:18:56 haad Exp $	*/
      2 
      3 /*
      4  * Copyright (C) 2005-2007 Red Hat, Inc. All rights reserved.
      5  *
      6  * This file is part of the device-mapper userspace tools.
      7  *
      8  * This copyrighted material is made available to anyone wishing to use,
      9  * modify, copy, or redistribute it subject to the terms and conditions
     10  * of the GNU Lesser General Public License v.2.1.
     11  *
     12  * You should have received a copy of the GNU Lesser General Public License
     13  * along with this program; if not, write to the Free Software Foundation,
     14  * Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
     15  */
     16 
     17 #ifndef __DMEVENTD_DOT_H__
     18 #define __DMEVENTD_DOT_H__
     19 
     20 /* FIXME This stuff must be configurable. */
     21 
     22 #define	DM_EVENT_DAEMON		"/sbin/dmeventd"
     23 #define DM_EVENT_LOCKFILE	"/var/lock/dmeventd"
     24 #define	DM_EVENT_FIFO_CLIENT	"/var/run/dmeventd-client"
     25 #define	DM_EVENT_FIFO_SERVER	"/var/run/dmeventd-server"
     26 #define DM_EVENT_PIDFILE	"/var/run/dmeventd.pid"
     27 
     28 #define DM_EVENT_DEFAULT_TIMEOUT 10
     29 
     30 /* Commands for the daemon passed in the message below. */
     31 enum dm_event_command {
     32 	DM_EVENT_CMD_ACTIVE = 1,
     33 	DM_EVENT_CMD_REGISTER_FOR_EVENT,
     34 	DM_EVENT_CMD_UNREGISTER_FOR_EVENT,
     35 	DM_EVENT_CMD_GET_REGISTERED_DEVICE,
     36 	DM_EVENT_CMD_GET_NEXT_REGISTERED_DEVICE,
     37 	DM_EVENT_CMD_SET_TIMEOUT,
     38 	DM_EVENT_CMD_GET_TIMEOUT,
     39 	DM_EVENT_CMD_HELLO,
     40 };
     41 
     42 /* Message passed between client and daemon. */
     43 struct dm_event_daemon_message {
     44 	uint32_t cmd;
     45 	uint32_t size;
     46 	char *data;
     47 };
     48 
     49 /* FIXME Is this meant to be exported?  I can't see where the
     50    interface uses it. */
     51 /* Fifos for client/daemon communication. */
     52 struct dm_event_fifos {
     53 	int client;
     54 	int server;
     55 	const char *client_path;
     56 	const char *server_path;
     57 };
     58 
     59 /*      EXIT_SUCCESS             0 -- stdlib.h */
     60 /*      EXIT_FAILURE             1 -- stdlib.h */
     61 #define EXIT_LOCKFILE_INUSE      2
     62 #define EXIT_DESC_CLOSE_FAILURE  3
     63 #define EXIT_DESC_OPEN_FAILURE   4
     64 #define EXIT_OPEN_PID_FAILURE    5
     65 #define EXIT_FIFO_FAILURE        6
     66 #define EXIT_CHDIR_FAILURE       7
     67 
     68 #endif /* __DMEVENTD_DOT_H__ */
     69