mirror of
https://github.com/systemd/systemd
synced 2024-09-16 06:43:18 +00:00
util: move several DNS related definitions to src/basic/dns-def.h
DNS_HOSTNAME_MAX is used by sd-resolve, but it was defined in src/shared/dns-domain.h. The library libsystemd should be independent of source files under src/shared.
This commit is contained in:
parent
af182ae1dc
commit
c11e5f43d2
17
src/basic/dns-def.h
Normal file
17
src/basic/dns-def.h
Normal file
|
@ -0,0 +1,17 @@
|
|||
/* SPDX-License-Identifier: LGPL-2.1-or-later */
|
||||
#pragma once
|
||||
|
||||
/* Length of a single label, with all escaping removed, excluding any trailing dot or NUL byte */
|
||||
#define DNS_LABEL_MAX 63
|
||||
|
||||
/* Worst case length of a single label, with all escaping applied and room for a trailing NUL byte. */
|
||||
#define DNS_LABEL_ESCAPED_MAX (DNS_LABEL_MAX*4+1)
|
||||
|
||||
/* Maximum length of a full hostname, consisting of a series of unescaped labels, and no trailing dot or NUL byte */
|
||||
#define DNS_HOSTNAME_MAX 253
|
||||
|
||||
/* Maximum length of a full hostname, on the wire, including the final NUL byte */
|
||||
#define DNS_WIRE_FORMAT_HOSTNAME_MAX 255
|
||||
|
||||
/* Maximum number of labels per valid hostname */
|
||||
#define DNS_N_LABELS_MAX 127
|
|
@ -42,6 +42,7 @@ basic_sources = files('''
|
|||
dirent-util.h
|
||||
dlfcn-util.c
|
||||
dlfcn-util.h
|
||||
dns-def.h
|
||||
efivars.c
|
||||
efivars.h
|
||||
env-file.c
|
||||
|
|
|
@ -15,7 +15,7 @@
|
|||
#include "sd-resolve.h"
|
||||
|
||||
#include "alloc-util.h"
|
||||
#include "dns-domain.h"
|
||||
#include "dns-def.h"
|
||||
#include "errno-util.h"
|
||||
#include "fd-util.h"
|
||||
#include "io-util.h"
|
||||
|
|
|
@ -6,24 +6,10 @@
|
|||
#include <stddef.h>
|
||||
#include <stdint.h>
|
||||
|
||||
#include "dns-def.h"
|
||||
#include "hashmap.h"
|
||||
#include "in-addr-util.h"
|
||||
|
||||
/* Length of a single label, with all escaping removed, excluding any trailing dot or NUL byte */
|
||||
#define DNS_LABEL_MAX 63
|
||||
|
||||
/* Worst case length of a single label, with all escaping applied and room for a trailing NUL byte. */
|
||||
#define DNS_LABEL_ESCAPED_MAX (DNS_LABEL_MAX*4+1)
|
||||
|
||||
/* Maximum length of a full hostname, consisting of a series of unescaped labels, and no trailing dot or NUL byte */
|
||||
#define DNS_HOSTNAME_MAX 253
|
||||
|
||||
/* Maximum length of a full hostname, on the wire, including the final NUL byte */
|
||||
#define DNS_WIRE_FORMAT_HOSTNAME_MAX 255
|
||||
|
||||
/* Maximum number of labels per valid hostname */
|
||||
#define DNS_N_LABELS_MAX 127
|
||||
|
||||
typedef enum DNSLabelFlags {
|
||||
DNS_LABEL_LDH = 1 << 0, /* Follow the "LDH" rule — only letters, digits, and internal hyphens. */
|
||||
DNS_LABEL_NO_ESCAPES = 1 << 1, /* Do not treat backslashes specially */
|
||||
|
|
Loading…
Reference in a new issue