radix.h File Reference
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  squid_radix_node
 
struct  squid_radix_mask
 
struct  squid_radix_node_head
 

Macros

#define RNF_NORMAL   1 /* leaf contains normal route */
 
#define RNF_ROOT   2 /* leaf is root leaf for tree */
 
#define RNF_ACTIVE   4 /* This node is alive (for rtfree) */
 
#define rn_key   rn_u.rn_leaf.rn_Key
 
#define rn_mask   rn_u.rn_leaf.rn_Mask
 

Functions

SQUIDCEXTERN void squid_rn_init (void)
 
SQUIDCEXTERN int squid_rn_inithead (struct squid_radix_node_head **, int)
 
SQUIDCEXTERN int squid_rn_refines (void *, void *)
 
SQUIDCEXTERN int squid_rn_walktree (struct squid_radix_node_head *, int(*)(struct squid_radix_node *, void *), void *)
 
SQUIDCEXTERN struct
squid_radix_node
squid_rn_addmask (void *, int, int)
 
SQUIDCEXTERN struct
squid_radix_node
squid_rn_addroute (void *, void *, struct squid_radix_node_head *, struct squid_radix_node[2])
 
SQUIDCEXTERN struct
squid_radix_node
squid_rn_delete (void *, void *, struct squid_radix_node_head *)
 
SQUIDCEXTERN struct
squid_radix_node
squid_rn_insert (void *, struct squid_radix_node_head *, int *, struct squid_radix_node[2])
 
SQUIDCEXTERN struct
squid_radix_node
squid_rn_match (void *, struct squid_radix_node_head *)
 
SQUIDCEXTERN struct
squid_radix_node
squid_rn_newpair (void *, int, struct squid_radix_node[2])
 
SQUIDCEXTERN struct
squid_radix_node
squid_rn_search (void *, struct squid_radix_node *)
 
SQUIDCEXTERN struct
squid_radix_node
squid_rn_search_m (void *, struct squid_radix_node *, void *)
 
SQUIDCEXTERN struct
squid_radix_node
squid_rn_lookup (void *, void *, struct squid_radix_node_head *)
 

Macro Definition Documentation

#define rn_key   rn_u.rn_leaf.rn_Key

Definition at line 91 of file radix.h.

#define rn_mask   rn_u.rn_leaf.rn_Mask

Definition at line 92 of file radix.h.

#define RNF_ACTIVE   4 /* This node is alive (for rtfree) */

Definition at line 62 of file radix.h.

Referenced by squid_rn_addroute(), squid_rn_delete(), squid_rn_inithead(), and squid_rn_newpair().

#define RNF_NORMAL   1 /* leaf contains normal route */
#define RNF_ROOT   2 /* leaf is root leaf for tree */

Function Documentation

SQUIDCEXTERN void squid_rn_init ( void  )

Definition at line 941 of file radix.c.

References addmask_key, NULL, rn_ones, rn_zeros, squid_max_keylen, squid_R_Malloc, and squid_rn_inithead().

Referenced by asnInit().

SQUIDCEXTERN struct squid_radix_node* squid_rn_lookup ( void *  ,
void *  ,
struct squid_radix_node_head  
)

Definition at line 207 of file radix.c.

References squid_radix_node_head::rnh_treetop, squid_rn_addmask(), and squid_rn_match().

Referenced by asnAddNet(), and squid_rn_inithead().

SQUIDCEXTERN struct squid_radix_node* squid_rn_newpair ( void *  ,
int  ,
struct squid_radix_node  [2] 
)
SQUIDCEXTERN int squid_rn_refines ( void *  ,
void *   
)

Definition at line 181 of file radix.c.

References int.

Referenced by squid_rn_addroute().

SQUIDCEXTERN struct squid_radix_node* squid_rn_search ( void *  ,
struct squid_radix_node  
)

Definition at line 152 of file radix.c.

References squid_radix_node::rn_b, and squid_radix_node::rn_bmask.

Referenced by squid_rn_addmask(), squid_rn_delete(), and squid_rn_insert().

SQUIDCEXTERN struct squid_radix_node* squid_rn_search_m ( void *  ,
struct squid_radix_node ,
void *   
)

Definition at line 166 of file radix.c.

References squid_radix_node::rn_b, and squid_radix_node::rn_bmask.

Referenced by squid_rn_match().

SQUIDCEXTERN int squid_rn_walktree ( struct squid_radix_node_head ,
int(*)(struct squid_radix_node *, void *)  ,
void *   
)

 

Introduction

Documentation

Support

Miscellaneous

Web Site Translations

Mirrors