1740837def7fc55ba6b0368f46a4b4abcaba0becdTheodore Ts'o/*
2740837def7fc55ba6b0368f46a4b4abcaba0becdTheodore Ts'o * Definitions used by the uuidd daemon
3740837def7fc55ba6b0368f46a4b4abcaba0becdTheodore Ts'o *
4740837def7fc55ba6b0368f46a4b4abcaba0becdTheodore Ts'o * Copyright (C) 2007 Theodore Ts'o.
5740837def7fc55ba6b0368f46a4b4abcaba0becdTheodore Ts'o *
6740837def7fc55ba6b0368f46a4b4abcaba0becdTheodore Ts'o * %Begin-Header%
7740837def7fc55ba6b0368f46a4b4abcaba0becdTheodore Ts'o * Redistribution and use in source and binary forms, with or without
8740837def7fc55ba6b0368f46a4b4abcaba0becdTheodore Ts'o * modification, are permitted provided that the following conditions
9740837def7fc55ba6b0368f46a4b4abcaba0becdTheodore Ts'o * are met:
10740837def7fc55ba6b0368f46a4b4abcaba0becdTheodore Ts'o * 1. Redistributions of source code must retain the above copyright
11740837def7fc55ba6b0368f46a4b4abcaba0becdTheodore Ts'o *    notice, and the entire permission notice in its entirety,
12740837def7fc55ba6b0368f46a4b4abcaba0becdTheodore Ts'o *    including the disclaimer of warranties.
13740837def7fc55ba6b0368f46a4b4abcaba0becdTheodore Ts'o * 2. Redistributions in binary form must reproduce the above copyright
14740837def7fc55ba6b0368f46a4b4abcaba0becdTheodore Ts'o *    notice, this list of conditions and the following disclaimer in the
15740837def7fc55ba6b0368f46a4b4abcaba0becdTheodore Ts'o *    documentation and/or other materials provided with the distribution.
16740837def7fc55ba6b0368f46a4b4abcaba0becdTheodore Ts'o * 3. The name of the author may not be used to endorse or promote
17740837def7fc55ba6b0368f46a4b4abcaba0becdTheodore Ts'o *    products derived from this software without specific prior
18740837def7fc55ba6b0368f46a4b4abcaba0becdTheodore Ts'o *    written permission.
19740837def7fc55ba6b0368f46a4b4abcaba0becdTheodore Ts'o *
20740837def7fc55ba6b0368f46a4b4abcaba0becdTheodore Ts'o * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESS OR IMPLIED
21740837def7fc55ba6b0368f46a4b4abcaba0becdTheodore Ts'o * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
22740837def7fc55ba6b0368f46a4b4abcaba0becdTheodore Ts'o * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE, ALL OF
23740837def7fc55ba6b0368f46a4b4abcaba0becdTheodore Ts'o * WHICH ARE HEREBY DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR BE
24740837def7fc55ba6b0368f46a4b4abcaba0becdTheodore Ts'o * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
25740837def7fc55ba6b0368f46a4b4abcaba0becdTheodore Ts'o * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT
26740837def7fc55ba6b0368f46a4b4abcaba0becdTheodore Ts'o * OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
27740837def7fc55ba6b0368f46a4b4abcaba0becdTheodore Ts'o * BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
28740837def7fc55ba6b0368f46a4b4abcaba0becdTheodore Ts'o * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
29740837def7fc55ba6b0368f46a4b4abcaba0becdTheodore Ts'o * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE
30740837def7fc55ba6b0368f46a4b4abcaba0becdTheodore Ts'o * USE OF THIS SOFTWARE, EVEN IF NOT ADVISED OF THE POSSIBILITY OF SUCH
31740837def7fc55ba6b0368f46a4b4abcaba0becdTheodore Ts'o * DAMAGE.
32740837def7fc55ba6b0368f46a4b4abcaba0becdTheodore Ts'o * %End-Header%
33740837def7fc55ba6b0368f46a4b4abcaba0becdTheodore Ts'o */
34740837def7fc55ba6b0368f46a4b4abcaba0becdTheodore Ts'o
35740837def7fc55ba6b0368f46a4b4abcaba0becdTheodore Ts'o#ifndef _UUID_UUIDD_H
36740837def7fc55ba6b0368f46a4b4abcaba0becdTheodore Ts'o#define _UUID_UUIDD_H
37740837def7fc55ba6b0368f46a4b4abcaba0becdTheodore Ts'o
383381a63c54f2221e3742211df39c5e2ee13d16ccTheodore Ts'o#define UUIDD_DIR		"/var/lib/libuuid"
393381a63c54f2221e3742211df39c5e2ee13d16ccTheodore Ts'o#define UUIDD_SOCKET_PATH	UUIDD_DIR "/request"
403381a63c54f2221e3742211df39c5e2ee13d16ccTheodore Ts'o#define UUIDD_PIDFILE_PATH	UUIDD_DIR "/uuidd.pid"
41740837def7fc55ba6b0368f46a4b4abcaba0becdTheodore Ts'o#define UUIDD_PATH		"/usr/sbin/uuidd"
42740837def7fc55ba6b0368f46a4b4abcaba0becdTheodore Ts'o
43740837def7fc55ba6b0368f46a4b4abcaba0becdTheodore Ts'o#define UUIDD_OP_GETPID			0
44740837def7fc55ba6b0368f46a4b4abcaba0becdTheodore Ts'o#define UUIDD_OP_GET_MAXOP		1
45740837def7fc55ba6b0368f46a4b4abcaba0becdTheodore Ts'o#define UUIDD_OP_TIME_UUID		2
46740837def7fc55ba6b0368f46a4b4abcaba0becdTheodore Ts'o#define UUIDD_OP_RANDOM_UUID		3
47740837def7fc55ba6b0368f46a4b4abcaba0becdTheodore Ts'o#define UUIDD_OP_BULK_TIME_UUID		4
48740837def7fc55ba6b0368f46a4b4abcaba0becdTheodore Ts'o#define UUIDD_OP_BULK_RANDOM_UUID	5
49740837def7fc55ba6b0368f46a4b4abcaba0becdTheodore Ts'o#define UUIDD_MAX_OP			UUIDD_OP_BULK_RANDOM_UUID
50740837def7fc55ba6b0368f46a4b4abcaba0becdTheodore Ts'o
51740837def7fc55ba6b0368f46a4b4abcaba0becdTheodore Ts'oextern void uuid__generate_time(uuid_t out, int *num);
52740837def7fc55ba6b0368f46a4b4abcaba0becdTheodore Ts'oextern void uuid__generate_random(uuid_t out, int *num);
53740837def7fc55ba6b0368f46a4b4abcaba0becdTheodore Ts'o
54740837def7fc55ba6b0368f46a4b4abcaba0becdTheodore Ts'o#endif /* _UUID_UUID_H */
55