/* * Copyright (C) James R. Leu 2000 * jleu@mindspring.com * * This software is covered under the LGPL, for more * info check out http://www.gnu.org/copyleft/lgpl.html */ #ifndef _LDP_ADDR_H_ #define _LDP_ADDR_H_ #include "ldp_struct.h" extern ldp_addr* ldp_addr_create(ldp_inet_addr* inet); extern void ldp_addr_delete(ldp_addr* a); extern ldp_return_enum _ldp_addr_add_session(ldp_addr* a,ldp_session* s); extern ldp_return_enum ldp_addr_del_session_all(ldp_addr* a); extern ldp_return_enum _ldp_addr_del_session(ldp_addr* a,ldp_session* s); extern uint32_t _ldp_addr_get_next_index(); extern struct ldp_addr_elem_list* ldp_addr_elem_list_create(); extern ldp_return_enum ldp_addr_elem_list_delete(struct ldp_addr_elem_list* a); extern struct ldp_addr_elem* ldp_addr_elem_create(ldp_addr* addr); extern ldp_return_enum ldp_addr_elem_delete(struct ldp_addr_elem* e); extern ldp_return_enum ldp_addr_elem_list_add_addr(struct ldp_addr_elem_list* a, ldp_addr* addr); extern ldp_return_enum ldp_addr_elem_list_del_addr(struct ldp_addr_elem_list* a, ldp_addr* addr); extern ldp_return_enum ldp_addr_elem_list_del_all(struct ldp_addr_elem_list* a, LDP_REFCNT_PTR_TYPE refcnt); extern ldp_msg* ldp_addr_msg_create(ldp_global* g,uint32_t msgid,ldp_if* i); extern ldp_return_enum ldp_addr_send(ldp_global* g,ldp_session* s,ldp_if* i); extern ldp_return_enum ldp_addr_process(ldp_global* g,ldp_session* s, ldp_entity *e,ldp_msg *msg); #endif