xref: /netbsd/usr.sbin/mrouted/rsrr_var.h (revision bf9ec67e)
1 /*	$NetBSD: rsrr_var.h,v 1.1 1995/12/10 10:07:15 mycroft Exp $	*/
2 
3 /*
4  * Copyright (c) 1993 by the University of Southern California
5  * All rights reserved.
6  *
7  * Permission to use, copy, modify, and distribute this software and its
8  * documentation in source and binary forms for non-commercial purposes
9  * and without fee is hereby granted, provided that the above copyright
10  * notice appear in all copies and that both the copyright notice and
11  * this permission notice appear in supporting documentation. and that
12  * any documentation, advertising materials, and other materials related
13  * to such distribution and use acknowledge that the software was
14  * developed by the University of Southern California, Information
15  * Sciences Institute.  The name of the University may not be used to
16  * endorse or promote products derived from this software without
17  * specific prior written permission.
18  *
19  * THE UNIVERSITY OF SOUTHERN CALIFORNIA makes no representations about
20  * the suitability of this software for any purpose.  THIS SOFTWARE IS
21  * PROVIDED "AS IS" AND WITHOUT ANY EXPRESS OR IMPLIED WARRANTIES,
22  * INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF
23  * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
24  *
25  * Other copyrights might apply to parts of this software and are so
26  * noted when applicable.
27  */
28 
29 /* RSRR things that are only needed by mrouted. */
30 
31 /* Cache of Route Query messages, distinguished by source,
32  * destination, and client addresses.  Cache is flushed by RSRR client
33  * -- it sends notification when an unwanted Route Reply is received.
34  * Since this only happens during route changes, it is more likely
35  * that the cache will be flushed when the kernel table entry is
36  * deleted.  */
37 struct rsrr_cache {
38     struct rsrr_rq route_query;		/* Cached Route Query */
39     struct sockaddr_un client_addr;	/* Client address */
40     int client_length;			/* Length of client */
41     struct rsrr_cache *next;		/* next cache item */
42 };
43 
44