]> git.ipfire.org Git - thirdparty/glibc.git/blame - nss/nss_files/files-proto.c
Update copyright dates with scripts/update-copyrights
[thirdparty/glibc.git] / nss / nss_files / files-proto.c
CommitLineData
5f0e6fc7 1/* Protocols file parser in nss_files module.
2b778ceb 2 Copyright (C) 1996-2021 Free Software Foundation, Inc.
19361cb7
UD
3 This file is part of the GNU C Library.
4
5 The GNU C Library is free software; you can redistribute it and/or
41bdb6e2
AJ
6 modify it under the terms of the GNU Lesser General Public
7 License as published by the Free Software Foundation; either
8 version 2.1 of the License, or (at your option) any later version.
19361cb7
UD
9
10 The GNU C Library is distributed in the hope that it will be useful,
11 but WITHOUT ANY WARRANTY; without even the implied warranty of
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
41bdb6e2 13 Lesser General Public License for more details.
19361cb7 14
41bdb6e2 15 You should have received a copy of the GNU Lesser General Public
59ba27a6 16 License along with the GNU C Library; if not, see
5a82c748 17 <https://www.gnu.org/licenses/>. */
28f540f4 18
5f0e6fc7 19#include <netdb.h>
680f1093 20#include <nss.h>
28f540f4 21
680f1093 22NSS_DECLARE_MODULE_FUNCTIONS (files)
5f0e6fc7
RM
23
24#define ENTNAME protoent
96bda0ea 25#define DATABASE "protocols"
5f0e6fc7
RM
26
27struct protoent_data {};
28
29#define TRAILING_LIST_MEMBER p_aliases
30#define TRAILING_LIST_SEPARATOR_P isspace
31#include "files-parse.c"
32LINE_PARSER
ffee1316 33("#",
5f0e6fc7
RM
34 STRING_FIELD (result->p_name, isspace, 1);
35 INT_FIELD (result->p_proto, isspace, 1, 10,);
36 )
37
96bda0ea 38#include GENERIC
5f0e6fc7 39
2666d441 40DB_LOOKUP (protobyname, '.', 0, ("%s", name),
5f0e6fc7
RM
41 LOOKUP_NAME (p_name, p_aliases),
42 const char *name)
43
2666d441 44DB_LOOKUP (protobynumber, '=', 20, ("%zd", (ssize_t) proto),
5f0e6fc7
RM
45 {
46 if (result->p_proto == proto)
47 break;
48 }, int proto)