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
38 * Type is GNUNET_MESSAGE_TYPE_REGEX_ANNOUNCE
40 struct GNUNET_MessageHeader header;
43 * How many characters can we squeeze per edge?
53 * Delay between repeated announcements.
55 struct GNUNET_TIME_RelativeNBO refresh_delay;
57 /* followed by 0-terminated regex as string */
62 * Message to initiate regex search.
64 struct RegexSearchMessage
67 * Type is GNUNET_MESSAGE_TYPE_REGEX_SEARCH
69 struct GNUNET_MessageHeader header;
71 /* followed by 0-terminated search string */
77 * Result from regex search.
82 * Type is GNUNET_MESSAGE_TYPE_REGEX_RESULT
84 struct GNUNET_MessageHeader header;
87 * Number of entries in the GET path.
89 uint16_t get_path_length;
92 * Number of entries in the PUT path.
94 uint16_t put_path_length;
97 * Identity of the peer that was found.
99 struct GNUNET_PeerIdentity id;
101 /* followed by GET path and PUT path arrays */
106 /* end of regex_ipc.h */