Skip to content
GitLab
Projects
Groups
Snippets
Help
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
D
dhcp
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
69
Issues
69
List
Boards
Labels
Service Desk
Milestones
Merge Requests
18
Merge Requests
18
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Operations
Operations
Incidents
Environments
Packages & Registries
Packages & Registries
Container Registry
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
ISC Open Source Projects
dhcp
Commits
7f6ad5ac
Commit
7f6ad5ac
authored
Jan 25, 2000
by
Ted Lemon
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
New declarations, malloc debugging, scoping.
parent
218eee75
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
180 additions
and
88 deletions
+180
-88
includes/dhcpd.h
includes/dhcpd.h
+180
-88
No files found.
includes/dhcpd.h
View file @
7f6ad5ac
...
...
@@ -30,9 +30,7 @@
#if defined (NSUPDATE)
# include <arpa/nameser.h>
# include <resolv.h>
# if __RES >= 19991006
# include <res_update.h>
# endif
# include <res_update.h>
#endif
#include <netdb.h>
...
...
@@ -224,7 +222,7 @@ struct lease {
unsigned
char
uid_buf
[
32
];
char
*
hostname
;
char
*
client_hostname
;
struct
binding
*
bindings
;
struct
binding
_scope
scope
;
struct
host_decl
*
host
;
struct
subnet
*
subnet
;
struct
pool
*
pool
;
...
...
@@ -329,6 +327,7 @@ struct lease_state {
#define SV_PID_FILE_NAME 27
#define SV_DUPLICATES 28
#define SV_DECLINES 29
#define SV_DDNS_UPDATES 30
#if !defined (DEFAULT_DEFAULT_LEASE_TIME)
# define DEFAULT_DEFAULT_LEASE_TIME 43200
...
...
@@ -749,6 +748,48 @@ struct dns_query {
int
backoff
;
/* Current backoff, in seconds. */
};
#if defined (DEBUG_MEMORY_LEAKAGE) || defined (DEBUG_MALLOC_POOL)
#define DMDOFFSET (sizeof (struct dmalloc_preamble))
#define DMLFSIZE 16
#define DMUFSIZE 16
#define DMDSIZE (DMDOFFSET + DMLFSIZE + DMUFSIZE)
struct
dmalloc_preamble
{
struct
dmalloc_preamble
*
prev
,
*
next
;
size_t
size
;
const
char
*
file
;
int
line
;
unsigned
long
generation
;
unsigned
char
low_fence
[
DMLFSIZE
];
};
#else
#define DMDOFFSET 0
#define DMDSIZE 0
#endif
#if defined (DEBUG_RC_HISTORY)
#if !defined (RC_HISTORY_MAX)
# define RC_HISTORY_MAX 256
#endif
struct
rc_history_entry
{
char
*
name
;
VOIDPTR
addr
;
int
refcnt
;
};
#define rc_register(x, l, y, z) do { \
rc_history [rc_history_index].file = (x); \
rc_history [rc_history_index].line = (l); \
rc_history [rc_history_index].addr = (y); \
rc_history [rc_history_index].refcnt = (z); \
if (++rc_history_index == RC_HISTORY_MAX) \
rc_history_index = 0;\
} while (0)
#else
#define rc_register(name, addr, refcnt)
#endif
/* Bitmask of dhcp option codes. */
typedef
unsigned
char
option_mask
[
16
];
...
...
@@ -818,10 +859,11 @@ int parse_options PROTO ((struct packet *));
int
parse_option_buffer
PROTO
((
struct
packet
*
,
unsigned
char
*
,
unsigned
));
int
cons_options
PROTO
((
struct
packet
*
,
struct
dhcp_packet
*
,
struct
lease
*
,
int
,
struct
option_state
*
,
struct
option_state
*
,
struct
binding_scope
*
,
int
,
int
,
int
,
struct
data_string
*
));
int
store_options
PROTO
((
unsigned
char
*
,
unsigned
,
struct
packet
*
,
struct
lease
*
,
struct
option_state
*
,
struct
option_stat
e
*
,
struct
lease
*
,
struct
option_state
*
,
struct
option_state
*
,
struct
binding_scop
e
*
,
unsigned
*
,
int
,
unsigned
,
unsigned
,
int
));
const
char
*
pretty_print_option
PROTO
((
unsigned
int
,
const
unsigned
char
*
,
unsigned
,
int
,
int
));
...
...
@@ -831,11 +873,13 @@ void do_packet PROTO ((struct interface_info *,
int
hashed_option_get
PROTO
((
struct
data_string
*
,
struct
universe
*
,
struct
packet
*
,
struct
lease
*
,
struct
option_state
*
,
struct
option_state
*
,
struct
option_state
*
,
unsigned
));
struct
option_state
*
,
struct
binding_scope
*
,
unsigned
));
int
agent_option_get
PROTO
((
struct
data_string
*
,
struct
universe
*
,
struct
packet
*
,
struct
lease
*
,
struct
option_state
*
,
struct
option_state
*
,
struct
option_state
*
,
unsigned
));
struct
option_state
*
,
struct
binding_scope
*
,
unsigned
));
void
hashed_option_set
PROTO
((
struct
universe
*
,
struct
option_state
*
,
struct
option_cache
*
,
enum
statement_op
));
...
...
@@ -859,21 +903,24 @@ int agent_option_state_dereference PROTO ((struct universe *,
int
store_option
PROTO
((
struct
data_string
*
,
struct
universe
*
,
struct
packet
*
,
struct
lease
*
,
struct
option_state
*
,
struct
option_state
*
,
struct
option_cache
*
));
struct
binding_scope
*
,
struct
option_cache
*
));
int
option_space_encapsulate
PROTO
((
struct
data_string
*
,
struct
packet
*
,
struct
lease
*
,
struct
option_state
*
,
struct
option_state
*
,
struct
binding_scope
*
,
struct
data_string
*
));
int
hashed_option_space_encapsulate
PROTO
((
struct
data_string
*
,
struct
packet
*
,
struct
lease
*
,
struct
option_state
*
,
struct
option_state
*
,
struct
binding_scope
*
,
struct
universe
*
));
int
nwip_option_space_encapsulate
PROTO
((
struct
data_string
*
,
struct
packet
*
,
struct
lease
*
,
struct
option_state
*
,
struct
option_state
*
,
struct
binding_scope
*
,
struct
universe
*
));
/* errwarn.c */
...
...
@@ -891,6 +938,7 @@ int parse_warn PROTO ((struct parse *, const char *, ...))
/* dhcpd.c */
extern
TIME
cur_time
;
extern
struct
group
root_group
;
extern
struct
binding_scope
global_scope
;
extern
struct
in_addr
limited_broadcast
;
extern
u_int16_t
local_port
;
...
...
@@ -1004,50 +1052,57 @@ int make_host_lookup PROTO ((struct expression **, const char *));
int
enter_dns_host
PROTO
((
struct
dns_host_entry
**
,
const
char
*
));
int
make_const_data
PROTO
((
struct
expression
**
,
const
unsigned
char
*
,
unsigned
,
int
,
int
));
int
make_const_int
PROTO
((
struct
expression
**
,
unsigned
long
));
int
make_concat
PROTO
((
struct
expression
**
,
struct
expression
*
,
struct
expression
*
));
int
make_encapsulation
PROTO
((
struct
expression
**
,
struct
data_string
*
));
int
make_substring
PROTO
((
struct
expression
**
,
struct
expression
*
,
struct
expression
*
,
struct
expression
*
));
int
make_limit
PROTO
((
struct
expression
**
,
struct
expression
*
,
int
));
int
make_let
PROTO
((
struct
executable_statement
**
,
const
char
*
));
int
option_cache
PROTO
((
struct
option_cache
**
,
struct
data_string
*
,
struct
expression
*
,
struct
option
*
));
int
evaluate_dns_expression
PROTO
((
ns_updrec
**
,
struct
packet
*
,
struct
lease
*
,
struct
option_state
*
,
struct
option_state
*
,
struct
binding_scope
*
,
struct
expression
*
));
int
evaluate_boolean_expression
PROTO
((
int
*
,
struct
packet
*
,
struct
lease
*
,
struct
option_state
*
,
struct
option_state
*
,
struct
binding_scope
*
,
struct
expression
*
));
int
evaluate_data_expression
PROTO
((
struct
data_string
*
,
struct
packet
*
,
struct
lease
*
,
struct
option_state
*
,
struct
option_state
*
,
struct
binding_scope
*
,
struct
expression
*
));
int
evaluate_numeric_expression
PROTO
((
unsigned
long
*
,
struct
packet
*
,
struct
lease
*
,
struct
option_state
*
,
struct
option_state
*
,
struct
expression
*
));
struct
option_state
*
,
struct
option_state
*
,
struct
binding_scope
*
,
struct
expression
*
));
int
evaluate_option_cache
PROTO
((
struct
data_string
*
,
struct
packet
*
,
struct
lease
*
,
struct
option_state
*
,
struct
option_state
*
,
struct
binding_scope
*
,
struct
option_cache
*
));
int
evaluate_boolean_option_cache
PROTO
((
int
*
,
struct
packet
*
,
struct
lease
*
,
struct
option_state
*
,
struct
option_state
*
,
struct
option_cache
*
));
struct
binding_scope
*
,
struct
option_cache
*
,
const
char
*
,
int
));
int
evaluate_boolean_expression_result
PROTO
((
int
*
,
struct
packet
*
,
struct
lease
*
,
struct
option_state
*
,
struct
option_state
*
,
struct
expression
*
));
struct
binding_scope
*
,
struct
expression
*
,
const
char
*
,
int
));
void
expression_dereference
PROTO
((
struct
expression
**
,
const
char
*
));
void
data_string_copy
PROTO
((
struct
data_string
*
,
struct
data_string
*
,
const
char
*
));
void
data_string_forget
PROTO
((
struct
data_string
*
,
const
char
*
));
void
data_string_truncate
PROTO
((
struct
data_string
*
,
int
));
int
is_dns_expression
PROTO
((
struct
expression
*
));
int
is_boolean_expression
PROTO
((
struct
expression
*
));
int
is_data_expression
PROTO
((
struct
expression
*
));
...
...
@@ -1055,7 +1110,10 @@ int is_numeric_expression PROTO ((struct expression *));
int
is_compound_expression
PROTO
((
struct
expression
*
));
int
op_precedence
PROTO
((
enum
expr_op
,
enum
expr_op
));
enum
expression_context
op_context
PROTO
((
enum
expr_op
));
int
write_expression
(
FILE
*
,
struct
expression
*
,
int
,
int
,
int
);
int
write_expression
PROTO
((
FILE
*
,
struct
expression
*
,
int
,
int
,
int
));
struct
binding
*
find_binding
PROTO
((
struct
binding_scope
*
,
const
char
*
));
int
free_bindings
PROTO
((
struct
binding_scope
*
,
const
char
*
));
int
binding_scope_dereference
PROTO
((
struct
binding_scope
**
,
const
char
*
));
/* dhcp.c */
extern
int
outstanding_pings
;
...
...
@@ -1092,86 +1150,107 @@ void bootp PROTO ((struct packet *));
struct
group
*
clone_group
PROTO
((
struct
group
*
,
const
char
*
));
/* alloc.c */
VOIDPTR
dmalloc
PROTO
((
unsigned
,
const
char
*
));
void
dfree
PROTO
((
VOIDPTR
,
const
char
*
));
struct
dhcp_packet
*
new_dhcp_packet
PROTO
((
const
char
*
));
struct
hash_table
*
new_hash_table
PROTO
((
int
,
const
char
*
));
struct
hash_bucket
*
new_hash_bucket
PROTO
((
const
char
*
));
struct
lease
*
new_lease
PROTO
((
const
char
*
));
struct
lease
*
new_leases
PROTO
((
unsigned
,
const
char
*
));
struct
subnet
*
new_subnet
PROTO
((
const
char
*
));
struct
class
*
new_class
PROTO
((
const
char
*
));
struct
shared_network
*
new_shared_network
PROTO
((
const
char
*
));
struct
group
*
new_group
PROTO
((
const
char
*
));
struct
protocol
*
new_protocol
PROTO
((
const
char
*
));
struct
lease_state
*
new_lease_state
PROTO
((
const
char
*
));
struct
domain_search_list
*
new_domain_search_list
PROTO
((
const
char
*
));
struct
name_server
*
new_name_server
PROTO
((
const
char
*
));
void
free_name_server
PROTO
((
struct
name_server
*
,
const
char
*
));
struct
option
*
new_option
PROTO
((
const
char
*
));
void
free_option
PROTO
((
struct
option
*
,
const
char
*
));
struct
universe
*
new_universe
PROTO
((
const
char
*
));
void
free_universe
PROTO
((
struct
universe
*
,
const
char
*
));
#if defined (DEBUG_MEMORY_LEAKAGE) || defined (DEBUG_MALLOC_POOL)
extern
struct
dmalloc_preamble
*
dmalloc_list
;
extern
unsigned
long
dmalloc_outstanding
;
extern
unsigned
long
dmalloc_longterm
;
extern
unsigned
long
dmalloc_generation
;
extern
unsigned
long
dmalloc_cutoff_generation
;
#endif
#if defined (DEBUG_RC_HISTORY)
extern
struct
rc_history_entry
rc_history
[
RC_HISTORY_MAX
];
extern
int
rc_history_index
;
#endif
VOIDPTR
dmalloc
PROTO
((
unsigned
,
const
char
*
,
int
));
void
dfree
PROTO
((
VOIDPTR
,
const
char
*
,
int
));
#if defined (DEBUG_MEMORY_LEAKAGE) || defined (DEBUG_MALLOC_POOL)
void
dmalloc_reuse
PROTO
((
VOIDPTR
,
const
char
*
,
int
,
int
));
void
dmalloc_dump_outstanding
PROTO
((
void
));
#else
#define dmalloc_reuse(x,y,z)
#endif
#if defined (DEBUG_RC_HISTORY)
void
dump_rc_history
PROTO
((
void
));
#endif
struct
dhcp_packet
*
new_dhcp_packet
PROTO
((
const
char
*
,
int
));
struct
hash_table
*
new_hash_table
PROTO
((
int
,
const
char
*
,
int
));
struct
hash_bucket
*
new_hash_bucket
PROTO
((
const
char
*
,
int
));
struct
lease
*
new_lease
PROTO
((
const
char
*
,
int
));
struct
lease
*
new_leases
PROTO
((
unsigned
,
const
char
*
,
int
));
struct
subnet
*
new_subnet
PROTO
((
const
char
*
,
int
));
struct
class
*
new_class
PROTO
((
const
char
*
,
int
));
struct
shared_network
*
new_shared_network
PROTO
((
const
char
*
,
int
));
struct
group
*
new_group
PROTO
((
const
char
*
,
int
));
struct
protocol
*
new_protocol
PROTO
((
const
char
*
,
int
));
struct
lease_state
*
new_lease_state
PROTO
((
const
char
*
,
int
));
struct
domain_search_list
*
new_domain_search_list
PROTO
((
const
char
*
,
int
));
struct
name_server
*
new_name_server
PROTO
((
const
char
*
,
int
));
void
free_name_server
PROTO
((
struct
name_server
*
,
const
char
*
,
int
));
struct
option
*
new_option
PROTO
((
const
char
*
,
int
));
void
free_option
PROTO
((
struct
option
*
,
const
char
*
,
int
));
struct
universe
*
new_universe
PROTO
((
const
char
*
,
int
));
void
free_universe
PROTO
((
struct
universe
*
,
const
char
*
,
int
));
void
free_domain_search_list
PROTO
((
struct
domain_search_list
*
,
const
char
*
));
void
free_lease_state
PROTO
((
struct
lease_state
*
,
const
char
*
));
void
free_protocol
PROTO
((
struct
protocol
*
,
const
char
*
));
void
free_group
PROTO
((
struct
group
*
,
const
char
*
));
void
free_shared_network
PROTO
((
struct
shared_network
*
,
const
char
*
));
void
free_class
PROTO
((
struct
class
*
,
const
char
*
));
void
free_subnet
PROTO
((
struct
subnet
*
,
const
char
*
));
void
free_lease
PROTO
((
struct
lease
*
,
const
char
*
));
void
free_hash_bucket
PROTO
((
struct
hash_bucket
*
,
const
char
*
));
void
free_hash_table
PROTO
((
struct
hash_table
*
,
const
char
*
));
void
free_dhcp_packet
PROTO
((
struct
dhcp_packet
*
,
const
char
*
));
struct
client_lease
*
new_client_lease
PROTO
((
const
char
*
));
void
free_client_lease
PROTO
((
struct
client_lease
*
,
const
char
*
));
struct
pool
*
new_pool
PROTO
((
const
char
*
));
void
free_pool
PROTO
((
struct
pool
*
,
const
char
*
));
struct
auth_key
*
new_auth_key
PROTO
((
unsigned
,
const
char
*
));
void
free_auth_key
PROTO
((
struct
auth_key
*
,
const
char
*
));
struct
permit
*
new_permit
PROTO
((
const
char
*
));
void
free_permit
PROTO
((
struct
permit
*
,
const
char
*
));
pair
new_pair
PROTO
((
const
char
*
));
void
free_pair
PROTO
((
pair
,
const
char
*
));
int
expression_allocate
PROTO
((
struct
expression
**
,
const
char
*
));
const
char
*
,
int
));
void
free_lease_state
PROTO
((
struct
lease_state
*
,
const
char
*
,
int
));
void
free_protocol
PROTO
((
struct
protocol
*
,
const
char
*
,
int
));
void
free_group
PROTO
((
struct
group
*
,
const
char
*
,
int
));
void
free_shared_network
PROTO
((
struct
shared_network
*
,
const
char
*
,
int
));
void
free_class
PROTO
((
struct
class
*
,
const
char
*
,
int
));
void
free_subnet
PROTO
((
struct
subnet
*
,
const
char
*
,
int
));
void
free_lease
PROTO
((
struct
lease
*
,
const
char
*
,
int
));
void
free_hash_bucket
PROTO
((
struct
hash_bucket
*
,
const
char
*
,
int
));
void
free_hash_table
PROTO
((
struct
hash_table
*
,
const
char
*
,
int
));
void
free_dhcp_packet
PROTO
((
struct
dhcp_packet
*
,
const
char
*
,
int
));
struct
client_lease
*
new_client_lease
PROTO
((
const
char
*
,
int
));
void
free_client_lease
PROTO
((
struct
client_lease
*
,
const
char
*
,
int
));
struct
pool
*
new_pool
PROTO
((
const
char
*
,
int
));
void
free_pool
PROTO
((
struct
pool
*
,
const
char
*
,
int
));
struct
auth_key
*
new_auth_key
PROTO
((
unsigned
,
const
char
*
,
int
));
void
free_auth_key
PROTO
((
struct
auth_key
*
,
const
char
*
,
int
));
struct
permit
*
new_permit
PROTO
((
const
char
*
,
int
));
void
free_permit
PROTO
((
struct
permit
*
,
const
char
*
,
int
));
pair
new_pair
PROTO
((
const
char
*
,
int
));
void
free_pair
PROTO
((
pair
,
const
char
*
,
int
));
int
expression_allocate
PROTO
((
struct
expression
**
,
const
char
*
,
int
));
int
expression_reference
PROTO
((
struct
expression
**
,
struct
expression
*
,
const
char
*
));
void
free_expression
PROTO
((
struct
expression
*
,
const
char
*
));
int
option_cache_allocate
PROTO
((
struct
option_cache
**
,
const
char
*
));
struct
expression
*
,
const
char
*
,
int
));
void
free_expression
PROTO
((
struct
expression
*
,
const
char
*
,
int
));
int
option_cache_allocate
PROTO
((
struct
option_cache
**
,
const
char
*
,
int
));
int
option_cache_reference
PROTO
((
struct
option_cache
**
,
struct
option_cache
*
,
const
char
*
));
int
buffer_allocate
PROTO
((
struct
buffer
**
,
unsigned
,
const
char
*
));
int
buffer_reference
PROTO
((
struct
buffer
**
,
struct
buffer
*
,
const
char
*
));
int
buffer_dereference
PROTO
((
struct
buffer
**
,
const
char
*
));
struct
option_cache
*
,
const
char
*
,
int
));
int
buffer_allocate
PROTO
((
struct
buffer
**
,
unsigned
,
const
char
*
,
int
));
int
buffer_reference
PROTO
((
struct
buffer
**
,
struct
buffer
*
,
const
char
*
,
int
));
int
buffer_dereference
PROTO
((
struct
buffer
**
,
const
char
*
,
int
));
int
dns_host_entry_allocate
PROTO
((
struct
dns_host_entry
**
,
const
char
*
,
const
char
*
));
const
char
*
,
const
char
*
,
int
));
int
dns_host_entry_reference
PROTO
((
struct
dns_host_entry
**
,
struct
dns_host_entry
*
,
const
char
*
));
struct
dns_host_entry
*
,
const
char
*
,
int
));
int
dns_host_entry_dereference
PROTO
((
struct
dns_host_entry
**
,
const
char
*
));
int
option_state_allocate
PROTO
((
struct
option_state
**
,
const
char
*
));
const
char
*
,
int
));
int
option_state_allocate
PROTO
((
struct
option_state
**
,
const
char
*
,
int
));
int
option_state_reference
PROTO
((
struct
option_state
**
,
struct
option_state
*
,
const
char
*
));
int
option_state_dereference
PROTO
((
struct
option_state
**
,
const
char
*
));
struct
option_state
*
,
const
char
*
,
int
));
int
option_state_dereference
PROTO
((
struct
option_state
**
,
const
char
*
,
int
));
void
data_string_copy
PROTO
((
struct
data_string
*
,
struct
data_string
*
,
const
char
*
,
int
));
void
data_string_forget
PROTO
((
struct
data_string
*
,
const
char
*
,
int
));
void
data_string_truncate
PROTO
((
struct
data_string
*
,
int
));
int
executable_statement_allocate
PROTO
((
struct
executable_statement
**
,
const
char
*
));
const
char
*
,
int
));
int
executable_statement_reference
PROTO
((
struct
executable_statement
**
,
struct
executable_statement
*
,
const
char
*
));
int
executable_statement_dereference
PROTO
((
struct
executable_statement
**
,
const
char
*
));
void
write_statements
(
FILE
*
,
struct
executable_statement
*
,
int
);
struct
executable_statement
*
find_matching_case
PROTO
((
struct
packet
*
,
struct
lease
*
,
struct
option_state
*
,
struct
option_state
*
,
struct
expression
*
,
struct
executable_statement
*
));
int
packet_allocate
PROTO
((
struct
packet
**
,
const
char
*
));
int
packet_reference
PROTO
((
struct
packet
**
,
struct
packet
*
,
const
char
*
));
int
packet_dereference
PROTO
((
struct
packet
**
,
const
char
*
));
const
char
*
,
int
));
int
packet_allocate
PROTO
((
struct
packet
**
,
const
char
*
,
int
));
int
packet_reference
PROTO
((
struct
packet
**
,
struct
packet
*
,
const
char
*
,
int
));
int
packet_dereference
PROTO
((
struct
packet
**
,
const
char
*
,
int
));
int
binding_scope_allocate
PROTO
((
struct
binding_scope
**
,
const
char
*
,
int
));
/* print.c */
char
*
print_hw_addr
PROTO
((
int
,
int
,
unsigned
char
*
));
...
...
@@ -1396,6 +1475,7 @@ unsigned char *hash_lookup PROTO ((struct hash_table *,
/* tables.c */
extern
struct
universe
dhcp_universe
;
extern
struct
universe
nwip_universe
;
extern
struct
option
dhcp_options
[
256
];
extern
int
dhcp_option_default_priority_list
[];
extern
int
dhcp_option_default_priority_list_count
;
...
...
@@ -1660,12 +1740,24 @@ int bill_class PROTO ((struct lease *, struct class *));
int
execute_statements
PROTO
((
struct
packet
*
,
struct
lease
*
,
struct
option_state
*
,
struct
option_state
*
,
struct
binding_scope
*
,
struct
executable_statement
*
));
void
execute_statements_in_scope
PROTO
((
struct
packet
*
,
struct
lease
*
,
struct
option_state
*
,
struct
option_state
*
,
struct
binding_scope
*
,
struct
group
*
,
struct
group
*
));
int
executable_statement_dereference
PROTO
((
struct
executable_statement
**
,
const
char
*
,
int
));
void
write_statements
(
FILE
*
,
struct
executable_statement
*
,
int
);
struct
executable_statement
*
find_matching_case
PROTO
((
struct
packet
*
,
struct
lease
*
,
struct
option_state
*
,
struct
option_state
*
,
struct
binding_scope
*
,
struct
expression
*
,
struct
executable_statement
*
));
/* auth.c */
void
enter_auth_key
PROTO
((
struct
data_string
*
,
struct
auth_key
*
));
...
...
@@ -1839,7 +1931,7 @@ extern struct subnet *find_subnet PROTO ((struct iaddr));
void
enter_shared_network
PROTO
((
struct
shared_network
*
));
void
new_shared_network_interface
PROTO
((
struct
parse
*
,
struct
shared_network
*
,
const
char
*
));
const
char
*
,
int
));
int
subnet_inner_than
PROTO
((
struct
subnet
*
,
struct
subnet
*
,
int
));
void
enter_subnet
PROTO
((
struct
subnet
*
));
void
enter_lease
PROTO
((
struct
lease
*
));
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment