49 lines
1.2 KiB
C
49 lines
1.2 KiB
C
/* route.h - ATM switch routing database */
|
|
|
|
/* Written 1998 by Werner Almesberger, EPFL ICA */
|
|
|
|
|
|
#ifndef ROUTE_H
|
|
#define ROUTE_H
|
|
|
|
#include "atm.h"
|
|
#include "sig.h"
|
|
|
|
|
|
/*
|
|
* PUT_ROUTE is invoked during configuration time to add static routes.
|
|
*/
|
|
|
|
void put_route(struct sockaddr_atmsvc *addr,int addr_mask,
|
|
SIGNALING_ENTITY *sig);
|
|
|
|
/*
|
|
* GET_ROUTES can be invoked to obtain static routes of a signaling entity. A
|
|
* non-default routing mechanism may call GET_ROUTES from ROUTE_SIG to retrieve
|
|
* pre-configured static routes.
|
|
*/
|
|
|
|
void get_routes(SIGNALING_ENTITY *sig,
|
|
void (*callback)(struct sockaddr_atmsvc *addr,int addr_mask,void *user),
|
|
void *user);
|
|
|
|
/*
|
|
* FIND_ROUTE obtains the signaling entity for calls from FROM to TO with the
|
|
* QoS QOS. The default implementation only considers FROM for its routing
|
|
* decisions.
|
|
*/
|
|
|
|
extern SIGNALING_ENTITY *(*find_route)(struct sockaddr_atmsvc *from,
|
|
struct sockaddr_atmsvc *to,struct atm_qos *qos);
|
|
|
|
/*
|
|
* ROUTE_SIG is invoked whenever a signaling entity becomes operational
|
|
* (UP != 0) or when it is shut down (UP == 0). This can be used to initate
|
|
* routing protocol activities.
|
|
*/
|
|
|
|
extern void (*route_sig)(SIGNALING_ENTITY *sig,struct sockaddr_atmpvc *pvc,
|
|
int up);
|
|
|
|
#endif
|