Go to the source code of this file.
Functions | |
void | wccp2Init (void) |
void | wccp2ConnectionOpen (void) |
void | wccp2ConnectionClose (void) |
void | parse_wccp2_method (int *v) |
void | free_wccp2_method (int *v) |
void | dump_wccp2_method (StoreEntry *e, const char *label, int v) |
void | parse_wccp2_amethod (int *v) |
void | free_wccp2_amethod (int *v) |
void | dump_wccp2_amethod (StoreEntry *e, const char *label, int v) |
void | parse_wccp2_service (void *v) |
void | free_wccp2_service (void *v) |
void | dump_wccp2_service (StoreEntry *e, const char *label, void *v) |
int | check_null_wccp2_service (void *v) |
void | parse_wccp2_service_info (void *v) |
void | free_wccp2_service_info (void *v) |
void | dump_wccp2_service_info (StoreEntry *e, const char *label, void *v) |
Function Documentation
◆ check_null_wccp2_service()
int check_null_wccp2_service | ( | void * | v | ) |
Definition at line 2227 of file wccp2.cc.
References wccp2_service_list_head.
◆ dump_wccp2_amethod()
void dump_wccp2_amethod | ( | StoreEntry * | e, |
const char * | label, | ||
int | v | ||
) |
Definition at line 2122 of file wccp2.cc.
References DBG_CRITICAL, debugs, self_destruct(), storeAppendPrintf(), WCCP2_ASSIGNMENT_METHOD_HASH, and WCCP2_ASSIGNMENT_METHOD_MASK.
◆ dump_wccp2_method()
void dump_wccp2_method | ( | StoreEntry * | e, |
const char * | label, | ||
int | v | ||
) |
Definition at line 2074 of file wccp2.cc.
References DBG_CRITICAL, debugs, self_destruct(), storeAppendPrintf(), WCCP2_METHOD_GRE, and WCCP2_METHOD_L2.
◆ dump_wccp2_service()
void dump_wccp2_service | ( | StoreEntry * | e, |
const char * | label, | ||
void * | v | ||
) |
Definition at line 2201 of file wccp2.cc.
References debugs, wccp2_service_list_t::info, wccp2_service_list_t::next, wccp2_service_info_t::service, wccp2_service_info_t::service_id, storeAppendPrintf(), WCCP2_MD5_SECURITY, wccp2_service_list_t::wccp2_security_type, WCCP2_SERVICE_DYNAMIC, wccp2_service_list_head, and wccp2_service_list_t::wccp_password.
◆ dump_wccp2_service_info()
void dump_wccp2_service_info | ( | StoreEntry * | e, |
const char * | label, | ||
void * | v | ||
) |
Definition at line 2407 of file wccp2.cc.
References debugs, wccp2_service_list_t::info, wccp2_service_list_t::next, wccp2_service_info_t::port0, wccp2_service_info_t::port1, wccp2_service_info_t::port2, wccp2_service_info_t::port3, wccp2_service_info_t::port4, wccp2_service_info_t::port5, wccp2_service_info_t::port6, wccp2_service_info_t::port7, wccp2_service_info_t::service, wccp2_service_info_t::service_flags, wccp2_service_info_t::service_id, wccp2_service_info_t::service_priority, wccp2_service_info_t::service_protocol, storeAppendPrintf(), WCCP2_SERVICE_DST_IP_ALT_HASH, WCCP2_SERVICE_DST_IP_HASH, WCCP2_SERVICE_DST_PORT_ALT_HASH, WCCP2_SERVICE_DST_PORT_HASH, wccp2_service_list_head, WCCP2_SERVICE_PORTS_DEFINED, WCCP2_SERVICE_PORTS_SOURCE, WCCP2_SERVICE_SRC_IP_ALT_HASH, WCCP2_SERVICE_SRC_IP_HASH, WCCP2_SERVICE_SRC_PORT_ALT_HASH, WCCP2_SERVICE_SRC_PORT_HASH, and WCCP2_SERVICE_STANDARD.
◆ free_wccp2_amethod()
◆ free_wccp2_method()
◆ free_wccp2_service()
◆ free_wccp2_service_info()
◆ parse_wccp2_amethod()
void parse_wccp2_amethod | ( | int * | method | ) |
Parse wccp2_assignment_method option they can be '1' aka 'hash' or '2' aka 'mask' representing the integer numeric of the same.
Definition at line 2099 of file wccp2.cc.
References DBG_CRITICAL, debugs, ConfigParser::NextToken(), self_destruct(), WCCP2_ASSIGNMENT_METHOD_HASH, and WCCP2_ASSIGNMENT_METHOD_MASK.
◆ parse_wccp2_method()
void parse_wccp2_method | ( | int * | method | ) |
Parse wccp2_return_method and wccp2_forwarding_method options they can be '1' aka 'gre' or '2' aka 'l2' representing the integer numeric of the same.
Definition at line 2051 of file wccp2.cc.
References DBG_CRITICAL, debugs, ConfigParser::NextToken(), self_destruct(), WCCP2_METHOD_GRE, and WCCP2_METHOD_L2.
◆ parse_wccp2_service()
void parse_wccp2_service | ( | void * | v | ) |
Definition at line 2147 of file wccp2.cc.
References DBG_CRITICAL, DBG_IMPORTANT, debugs, empty_portlist, GetInteger(), ConfigParser::NextToken(), self_destruct(), wccp2_add_service_list(), wccp2_connected, WCCP2_MD5_SECURITY, WCCP2_NO_SECURITY, WCCP2_PASSWORD_LEN, WCCP2_SERVICE_DYNAMIC, WCCP2_SERVICE_STANDARD, and xstrncpy().
◆ parse_wccp2_service_info()
void parse_wccp2_service_info | ( | void * | v | ) |
Definition at line 2327 of file wccp2.cc.
References DBG_CRITICAL, DBG_IMPORTANT, debugs, fatalf(), GetInteger(), ConfigParser::NextToken(), parse_wccp2_service_flags(), parse_wccp2_service_ports(), self_destruct(), wccp2_connected, wccp2_get_service_by_id(), WCCP2_NUMPORTS, WCCP2_SERVICE_DYNAMIC, WCCP2_SERVICE_PORTS_DEFINED, and wccp2_update_service().
◆ wccp2ConnectionClose()
void wccp2ConnectionClose | ( | void | ) |
Definition at line 1040 of file wccp2.cc.
References wccp2_router_list_t::cache_list_head, comm_close, DBG_IMPORTANT, debugs, eventDelete(), wccp2_cache_list_t::next, wccp2_router_list_t::next, wccp2_service_list_t::next, wccp2_service_list_t::router_list_head, theWccp2Connection, wccp2_connected, wccp2_service_list_head, wccp2AssignBuckets, wccp2HereIam, and xfree.
Referenced by serverConnectionsClose(), SquidShutdown(), and wccp2HandleUdp().
◆ wccp2ConnectionOpen()
void wccp2ConnectionOpen | ( | void | ) |
Definition at line 952 of file wccp2.cc.
References SquidConfig::address, COMM_NONBLOCKING, comm_open_listener(), COMM_SELECT_READ, Config, DBG_CRITICAL, DBG_IMPORTANT, debugs, fatal(), wccp2_router_list_t::local_ip, wccp2_router_list_t::next, wccp2_service_list_t::next, Ip::Address::port(), wccp2_service_list_t::router_list_head, wccp2_router_list_t::router_sendto_address, Ip::Address::setIPv4(), Comm::SetSelect(), theWccp2Connection, SquidConfig::Wccp2, wccp2_connected, wccp2_numrouters, wccp2_service_list_head, wccp2HandleUdp, WCCP_PORT, and xstrerr().
Referenced by serverConnectionsOpen().
◆ wccp2Init()
void wccp2Init | ( | void | ) |
Definition at line 656 of file wccp2.cc.
References wccp2_cache_identity_info_t::addr, wccp2_cache_mask_identity_info_t::addr, assert, SquidConfig::assignment_method, wccp2_cache_identity_info_t::bits, wccp2_cache_mask_identity_info_t::bits, wccp2_cache_identity_info_t::buckets, wccp2_identity_info_t::cache_identity, wccp2_mask_identity_info_t::cache_identity, wccp2_identity_info_t::cache_identity_length, wccp2_mask_identity_info_t::cache_identity_length, wccp2_identity_info_t::cache_identity_type, wccp2_mask_identity_info_t::cache_identity_type, wccp2_cache_view_header_t::cache_view_length, wccp2_cache_view_header_t::cache_view_type, wccp2_cache_view_header_t::cache_view_version, wccp2_capability_info_header_t::capability_info_length, wccp2_capability_info_header_t::capability_info_type, wccp2_capability_element_t::capability_length, wccp2_capability_element_t::capability_type, wccp2_capability_element_t::capability_value, Config, debugs, wccp2_mask_element_t::dest_ip_mask, wccp2_mask_element_t::dest_port_mask, eventAdd(), eventFind(), fatalf(), SquidConfig::forwarding_method, Ip::Address::getInAddr(), wccp2_cache_identity_info_t::hash_revision, wccp2_router_list_t::info, wccp2_service_list_t::info, Ip::Address::isAnyAddr(), wccp2_message_header_t::length, wccp2_cache_mask_identity_info_t::mask, wccp2_cache_mask_identity_info_t::mask_element_count, wccp2_router_list_t::member_change, Ip::Address_list::next, wccp2_router_list_t::next, wccp2_service_list_t::next, wccp2_cache_view_info_t::num_caches, wccp2_service_list_t::num_routers, wccp2_router_id_element_t::received_id, SquidConfig::return_method, SquidConfig::router, wccp2_router_id_element_t::router_address, wccp2_service_list_t::router_list_head, wccp2_router_list_t::router_sendto_address, Ip::Address_list::s, wccp2_service_list_t::security_info, wccp2_security_md5_t::security_length, wccp2_security_md5_t::security_option, wccp2_security_md5_t::security_type, wccp2_service_info_t::service, wccp2_service_info_t::service_flags, wccp2_service_list_t::service_info, wccp2_mask_element_t::source_ip_mask, wccp2_mask_element_t::source_port_mask, wccp2_cache_identity_info_t::status, wccp2_cache_mask_identity_info_t::status, wccp2_message_header_t::type, wccp2_message_header_t::version, SquidConfig::Wccp2, WCCP2_ASSIGNMENT_METHOD_HASH, WCCP2_ASSIGNMENT_METHOD_MASK, wccp2_cache_view_header, wccp2_cache_view_info, WCCP2_CAPABILITY_ASSIGNMENT_METHOD, wccp2_capability_element, WCCP2_CAPABILITY_FORWARDING_METHOD, WCCP2_CAPABILITY_INFO, wccp2_capability_info_header, WCCP2_CAPABILITY_RETURN_METHOD, wccp2_connected, WCCP2_HERE_I_AM, wccp2_here_i_am_header, wccp2_identity_info, wccp2_service_list_t::wccp2_identity_info_ptr, WCCP2_MASK_ASSIGNMENT_DATA, wccp2_mask_identity_info, WCCP2_MD5_SECURITY, WCCP2_NO_SECURITY, wccp2_numrouters, WCCP2_SECURITY_INFO, wccp2_service_list_t::wccp2_security_type, WCCP2_SERVICE_DST_IP_ALT_HASH, WCCP2_SERVICE_DST_IP_HASH, WCCP2_SERVICE_DST_PORT_ALT_HASH, WCCP2_SERVICE_DST_PORT_HASH, wccp2_service_list_head, WCCP2_SERVICE_SRC_IP_ALT_HASH, WCCP2_SERVICE_SRC_IP_HASH, WCCP2_SERVICE_SRC_PORT_ALT_HASH, WCCP2_SERVICE_SRC_PORT_HASH, WCCP2_SERVICE_STANDARD, WCCP2_VERSION, WCCP2_WC_ID_INFO, WCCP2_WC_VIEW_INFO, wccp2HereIam, wccp2InitServices(), wccp2_service_list_t::wccp_packet, wccp2_service_list_t::wccp_packet_size, WCCP_RESPONSE_SIZE, SquidConfig::weight, wccp2_cache_identity_info_t::weight, wccp2_cache_mask_identity_info_t::weight, and xcalloc().
Referenced by mainInitialize(), and mainReconfigureFinish().