]> git.sur5r.net Git - openldap/blob - servers/slapd/back-relay/back-relay.h
Happy New Year
[openldap] / servers / slapd / back-relay / back-relay.h
1 /* back-relay.h - relay backend header file */
2 /* $OpenLDAP$ */
3 /* This work is part of OpenLDAP Software <http://www.openldap.org/>.
4  *
5  * Copyright 2004-2018 The OpenLDAP Foundation.
6  * Portions Copyright 2004 Pierangelo Masarati.
7  * All rights reserved.
8  *
9  * Redistribution and use in source and binary forms, with or without
10  * modification, are permitted only as authorized by the OpenLDAP
11  * Public License.
12  *
13  * A copy of this license is available in the file LICENSE in the
14  * top-level directory of the distribution or, alternatively, at
15  * <http://www.OpenLDAP.org/license.html>.
16  */
17 /* ACKNOWLEDGEMENTS:
18  * This work was initially developed by Pierangelo Masarati for inclusion
19  * in OpenLDAP Software.
20  */
21
22 #ifndef SLAPD_RELAY_H
23 #define SLAPD_RELAY_H
24
25 #include "proto-back-relay.h"
26
27 LDAP_BEGIN_DECL
28
29 typedef enum relay_operation_e {
30         relay_op_entry_get = op_last,
31         relay_op_entry_release,
32         relay_op_has_subordinates,
33         relay_op_last
34 } relay_operation_t;
35
36 typedef struct relay_back_info {
37         BackendDB       *ri_bd;
38         struct berval   ri_realsuffix;
39         int             ri_massage;
40 } relay_back_info;
41
42 /* Pad relay_back_info if needed to create valid OpExtra key addresses */
43 #define RELAY_INFO_SIZE \
44         (sizeof(relay_back_info) > (size_t) relay_op_last ? \
45          sizeof(relay_back_info) : (size_t) relay_op_last   )
46
47 LDAP_END_DECL
48
49 #endif /* SLAPD_RELAY_H */