2 This file is part of GNUnet
3 Copyright (C) 2012, 2013 GNUnet e.V.
5 GNUnet is free software: you can redistribute it and/or modify it
6 under the terms of the GNU Affero General Public License as published
7 by the Free Software Foundation, either version 3 of the License,
8 or (at your option) any later version.
10 GNUnet is distributed in the hope that it will be useful, but
11 WITHOUT ANY WARRANTY; without even the implied warranty of
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13 Affero General Public License for more details.
15 You should have received a copy of the GNU Affero General Public License
16 along with this program. If not, see <http://www.gnu.org/licenses/>.
18 SPDX-License-Identifier: AGPL3.0-or-later
21 * @file regex/regex_ipc.h
22 * @brief regex IPC messages (not called 'regex.h' due to conflict with
24 * @author Christian Grothoff
29 #include "gnunet_util_lib.h"
32 * Request for regex service to announce capability.
34 struct AnnounceMessage
37 * Type is GNUNET_MESSAGE_TYPE_REGEX_ANNOUNCE
39 struct GNUNET_MessageHeader header;
42 * How many characters can we squeeze per edge?
52 * Delay between repeated announcements.
54 struct GNUNET_TIME_RelativeNBO refresh_delay;
56 /* followed by 0-terminated regex as string */
61 * Message to initiate regex search.
63 struct RegexSearchMessage
66 * Type is GNUNET_MESSAGE_TYPE_REGEX_SEARCH
68 struct GNUNET_MessageHeader header;
70 /* followed by 0-terminated search string */
75 * Result from regex search.
80 * Type is GNUNET_MESSAGE_TYPE_REGEX_RESULT
82 struct GNUNET_MessageHeader header;
85 * Number of entries in the GET path.
87 uint16_t get_path_length;
90 * Number of entries in the PUT path.
92 uint16_t put_path_length;
95 * Identity of the peer that was found.
97 struct GNUNET_PeerIdentity id;
99 /* followed by GET path and PUT path arrays */
103 /* end of regex_ipc.h */