Annotation of embedaddon/quagga/isisd/isis_misc.h, revision 1.1.1.1

1.1       misho       1: /*
                      2:  * IS-IS Rout(e)ing protocol - isis_misc.h
                      3:  *                             Miscellanous routines
                      4:  *
                      5:  * Copyright (C) 2001,2002   Sampo Saaristo
                      6:  *                           Tampere University of Technology      
                      7:  *                           Institute of Communications Engineering
                      8:  *
                      9:  * This program is free software; you can redistribute it and/or modify it 
                     10:  * under the terms of the GNU General Public Licenseas published by the Free 
                     11:  * Software Foundation; either version 2 of the License, or (at your option) 
                     12:  * any later version.
                     13:  *
                     14:  * This program is distributed in the hope that it will be useful,but WITHOUT 
                     15:  * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 
                     16:  * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License for 
                     17:  * more details.
                     18: 
                     19:  * You should have received a copy of the GNU General Public License along 
                     20:  * with this program; if not, write to the Free Software Foundation, Inc., 
                     21:  * 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
                     22:  */
                     23: 
                     24: #ifndef _ZEBRA_ISIS_MISC_H
                     25: #define _ZEBRA_ISIS_MISC_H
                     26: 
                     27: int string2circuit_t (const u_char *);
                     28: const char *circuit_t2string (int);
                     29: const char *syst2string (int);
                     30: struct in_addr newprefix2inaddr (u_char * prefix_start,
                     31:                                 u_char prefix_masklen);
                     32: /*
                     33:  * Converting input to memory stored format
                     34:  * return value of 0 indicates wrong input
                     35:  */
                     36: int dotformat2buff (u_char *, const u_char *);
                     37: int sysid2buff (u_char *, const u_char *);
                     38: 
                     39: /*
                     40:  * Printing functions
                     41:  */
                     42: const char *isonet_print (u_char *, int len);
                     43: const char *sysid_print (u_char *);
                     44: const char *snpa_print (u_char *);
                     45: const char *rawlspid_print (u_char *);
                     46: const char *time2string (u_int32_t);
                     47: /* typedef struct nlpids nlpids; */
                     48: char *nlpid2string (struct nlpids *);
                     49: 
                     50: /*
                     51:  * misc functions
                     52:  */
                     53: int speaks (struct nlpids *nlpids, int family);
                     54: unsigned long isis_jitter (unsigned long timer, unsigned long jitter);
                     55: const char *unix_hostname (void);
                     56: 
                     57: /*
                     58:  * macros
                     59:  */
                     60: #define GETSYSID(A,L) (A->area_addr + (A->addr_len - (L + 1)))
                     61: 
                     62: /* used for calculating nice string representation instead of plain seconds */
                     63: 
                     64: #define SECS_PER_MINUTE 60
                     65: #define SECS_PER_HOUR   3600
                     66: #define SECS_PER_DAY    86400
                     67: #define SECS_PER_WEEK   604800
                     68: #define SECS_PER_MONTH  2628000
                     69: #define SECS_PER_YEAR   31536000
                     70: 
                     71: enum
                     72: {
                     73:   ISIS_UI_LEVEL_BRIEF,
                     74:   ISIS_UI_LEVEL_DETAIL,
                     75:   ISIS_UI_LEVEL_EXTENSIVE,
                     76: };
                     77: 
                     78: #endif

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>