12632SN/A/* 22632SN/A * route.c 32632SN/A * 42632SN/A * Kernel route table operations. 52632SN/A * 62632SN/A * Copyright (c) 2000 Dug Song <dugsong@monkey.org> 72632SN/A * 82632SN/A * $Id: route.h,v 1.6 2002/02/04 04:02:22 dugsong Exp $ 92632SN/A */ 102632SN/A 112632SN/A#ifndef DNET_ROUTE_H 122632SN/A#define DNET_ROUTE_H 132632SN/A 142632SN/A/* 152632SN/A * Routing table entry 162632SN/A */ 172632SN/Astruct route_entry { 182632SN/A struct addr route_dst; /* destination address */ 192632SN/A struct addr route_gw; /* gateway address */ 202632SN/A}; 212632SN/A 222632SN/Atypedef struct route_handle route_t; 232632SN/A 242632SN/Atypedef int (*route_handler)(const struct route_entry *entry, void *arg); 252632SN/A 262632SN/A__BEGIN_DECLS 272632SN/Aroute_t *route_open(void); 282632SN/Aint route_add(route_t *r, const struct route_entry *entry); 292632SN/Aint route_delete(route_t *r, const struct route_entry *entry); 302632SN/Aint route_get(route_t *r, struct route_entry *entry); 312632SN/Aint route_loop(route_t *r, route_handler callback, void *arg); 322632SN/Aroute_t *route_close(route_t *r); 332632SN/A__END_DECLS 342632SN/A 352632SN/A#endif /* DNET_ROUTE_H */ 36