Tor
0.4.9.2-alpha-dev
Toggle main menu visibility
Main Page
Related Pages
Modules
Data Structures
Data Structures
Data Structure Index
Data Fields
All
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
Functions
Variables
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
Enumerator
Files
File List
Globals
All
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
z
Functions
a
b
c
d
e
f
g
h
i
k
l
m
n
o
p
q
r
s
t
u
v
w
x
Variables
a
b
c
d
e
f
g
h
i
k
l
m
n
o
p
q
r
s
t
u
v
w
x
z
Typedefs
b
c
d
f
g
h
l
m
n
o
p
r
s
v
Enumerations
a
b
c
d
f
g
h
i
k
l
m
n
o
p
q
r
s
t
u
v
w
Enumerator
a
b
c
d
e
g
h
i
m
n
o
p
q
r
s
t
v
w
Macros
_
a
b
c
d
e
f
g
h
i
j
l
m
n
o
p
r
s
t
u
v
w
x
•
All
Data Structures
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Macros
Modules
Pages
lib
container
namemap_st.h
Go to the documentation of this file.
1
/* Copyright (c) 2003-2004, Roger Dingledine
2
* Copyright (c) 2004-2006, Roger Dingledine, Nick Mathewson.
3
* Copyright (c) 2007-2021, The Tor Project, Inc. */
4
/* See LICENSE for licensing information */
5
6
#ifndef NAMEMAP_ST_H
7
#define NAMEMAP_ST_H
8
9
/**
10
* @file namemap_st.h
11
* @brief Internal declarations for namemap structure.
12
**/
13
14
#include "
lib/cc/compat_compiler.h
"
15
#include "ext/ht.h"
16
17
struct
smartlist_t
;
18
19
/** Longest allowed name that's allowed in a namemap_t. */
20
#define MAX_NAMEMAP_NAME_LEN 128
21
22
/** An entry inside a namemap_t. Maps a string to a numeric identifier. */
23
typedef
struct
mapped_name_t
{
24
HT_ENTRY(
mapped_name_t
) node;
25
unsigned
intval;
26
char
name[FLEXIBLE_ARRAY_MEMBER];
27
}
mapped_name_t
;
28
29
/** A structure that allocates small numeric identifiers for names and maps
30
* back and forth between them. */
31
struct
namemap_t
{
32
HT_HEAD(namemap_ht,
mapped_name_t
) ht;
33
struct
smartlist_t
*names;
34
};
35
36
#ifndef COCCI
37
/** Macro to initialize a namemap. */
38
#define NAMEMAP_INIT() { HT_INITIALIZER(), NULL }
39
#endif
40
41
#endif
/* !defined(NAMEMAP_ST_H) */
compat_compiler.h
Utility macros to handle different features and behavior in different compilers.
mapped_name_t
Definition:
namemap_st.h:23
namemap_t
Definition:
namemap_st.h:31
smartlist_t
Definition:
smartlist_core.h:26
Generated by
1.9.4