/usr/include/avis/defs.h is in libavis-dev 1.2.4-8.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 | /*
* Avis Elvin client library for C.
*
* Copyright (C) 2008 Matthew Phillips <avis@mattp.name>
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of version 3 of the GNU Lesser General
* Public License as published by the Free Software Foundation.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
/** \file
* Elvin global value definitions.
*/
#ifndef AVIS_DEFS_H_
#define AVIS_DEFS_H_
/** The default port for Elvin client connections. */
#define DEFAULT_ELVIN_PORT 2917
/** The default client protocol major version supported by this library. */
#define DEFAULT_CLIENT_PROTOCOL_MAJOR 4
/** The default client protocol minor version supported by this library. */
#define DEFAULT_CLIENT_PROTOCOL_MINOR 0
/** Timeout (in milliseconds) for I/O operations. */
#define AVIS_IO_TIMEOUT 10000
/** Maximum idle interval (in seconds) before sending a liveness test message. */
#define AVIS_LIVENESS_IDLE_INTERVAL 60
#define _KB_ 1024
#define _MB_ _KB_ * _KB_
/**
* Max total length in bytes of an acceptable packet from an Elvin router.
*/
#define MAX_PACKET_LENGTH (2 * _MB_)
/**
* Max total length in bytes of an acceptable UTF-8 string from an Elvin
* router.
*/
#define MAX_STRING_LENGTH (1 * _MB_)
/**
* Max total length in bytes of an acceptable opaque byte array from an
* Elvin router.
*/
#define MAX_OPAQUE_LENGTH (1 * _MB_)
/**
* Max total length of an acceptable array (of int64 or polymorphic values)
* from an Elvin router.
*/
#define MAX_ARRAY_LENGTH (4 * _KB_)
/**
* Max total number of entries in an attributes set from an Elvin router.
*/
#define MAX_ATTRIBUTE_COUNT (4 * _KB_)
/**
* Max total number of key scheme/key set pairs from an Elvin router. This
* currently has no effect on the client since it only sends keys not receives
* them, but might be useful if this library ever forms the basis of a server.
*/
#define MAX_KEY_SCHEME_COUNT 16
/**
* Max total number of keys in a key set from an Elvin router. This currently
* has no effect on the client since it only sends keys not receives them, but
* might be useful if this library ever forms the basis of a server.
*/
#define MAX_KEY_COUNT (1 * _KB_)
/*
* Allow building .DLL on Windows. Functions that should be public are
* tagged with AVIS_PUBLIC, data with AVIS_PUBLIC_DATA.
*/
#ifdef _WIN32
# if !defined (AVIS_LIBRARY_STATIC)
# if defined (AVIS_BUILDING_LIB)
# define AVIS_PUBLIC __declspec(dllexport)
# define AVIS_PUBLIC_DATA extern __declspec(dllexport)
# else
# define AVIS_PUBLIC __declspec(dllimport)
# define AVIS_PUBLIC_DATA extern __declspec(dllimport)
# endif
# else
/* Static links must use extern */
# define AVIS_PUBLIC extern
# define AVIS_PUBLIC_DATA extern
# endif
#else
# define AVIS_PUBLIC
# define AVIS_PUBLIC_DATA extern
#endif
#endif /* AVIS_DEFS_H_ */
|