Annotation of embedaddon/bird/nest/password.h, revision 1.1

1.1     ! misho       1: /*
        !             2:  *     BIRD -- Password handling
        !             3:  *
        !             4:  *     (c) 1999 Pavel Machek <pavel@ucw.cz>
        !             5:  *     (c) 2004 Ondrej Filip <feela@network.cz>
        !             6:  *
        !             7:  *     Can be freely distributed and used under the terms of the GNU GPL.
        !             8:  */
        !             9: 
        !            10: #ifndef PASSWORD_H
        !            11: #define PASSWORD_H
        !            12: 
        !            13: #include "lib/timer.h"
        !            14: 
        !            15: struct password_item {
        !            16:   node n;
        !            17:   char *password;                      /* Key data, null terminated */
        !            18:   uint length;                         /* Key length, without null */
        !            19:   uint id;                             /* Key ID */
        !            20:   uint alg;                            /* MAC algorithm */
        !            21:   bird_clock_t accfrom, accto, genfrom, gento;
        !            22: };
        !            23: 
        !            24: extern struct password_item *last_password_item;
        !            25: 
        !            26: struct password_item *password_find(list *l, int first_fit);
        !            27: struct password_item *password_find_by_id(list *l, uint id);
        !            28: struct password_item *password_find_by_value(list *l, char *pass, uint size);
        !            29: 
        !            30: static inline int password_verify(struct password_item *p1, char *p2, uint size)
        !            31: {
        !            32:   char buf[size];
        !            33:   strncpy(buf, p1->password, size);
        !            34:   return !memcmp(buf, p2, size);
        !            35: }
        !            36: 
        !            37: uint max_mac_length(list *l);
        !            38: 
        !            39: #endif

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