Annotation of embedaddon/bird2/nest/password.h, revision 1.1.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: struct password_item {
                     14:   node n;
                     15:   char *password;                      /* Key data, null terminated */
                     16:   uint length;                         /* Key length, without null */
                     17:   uint id;                             /* Key ID */
                     18:   uint alg;                            /* MAC algorithm */
                     19:   btime accfrom, accto, genfrom, gento;
                     20: };
                     21: 
                     22: extern struct password_item *last_password_item;
                     23: 
                     24: struct password_item *password_find(list *l, int first_fit);
                     25: struct password_item *password_find_by_id(list *l, uint id);
                     26: struct password_item *password_find_by_value(list *l, char *pass, uint size);
                     27: 
                     28: static inline int password_verify(struct password_item *p1, char *p2, uint size)
                     29: {
                     30:   char buf[size];
                     31:   strncpy(buf, p1->password, size);
                     32:   return !memcmp(buf, p2, size);
                     33: }
                     34: 
                     35: uint max_mac_length(list *l);
                     36: 
                     37: #endif

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