168ba7e87SXin LI /* 268ba7e87SXin LI * ntp_keyacc.h - key access stuff 368ba7e87SXin LI */ 468ba7e87SXin LI #ifndef NTP_KEYACC_H 568ba7e87SXin LI #define NTP_KEYACC_H 668ba7e87SXin LI 768ba7e87SXin LI typedef struct keyaccess KeyAccT; 868ba7e87SXin LI struct keyaccess { 968ba7e87SXin LI KeyAccT * next; 1068ba7e87SXin LI sockaddr_u addr; 11*09100258SXin LI unsigned int subnetbits; 1268ba7e87SXin LI }; 1368ba7e87SXin LI 14*09100258SXin LI extern KeyAccT* keyacc_new_push(KeyAccT *head, const sockaddr_u *addr, 15*09100258SXin LI unsigned int subnetbits); 164990d495SXin LI extern KeyAccT* keyacc_pop_free(KeyAccT *head); 174990d495SXin LI extern KeyAccT* keyacc_all_free(KeyAccT *head); 184990d495SXin LI extern int keyacc_contains(const KeyAccT *head, const sockaddr_u *addr, 194990d495SXin LI int res_on_empty_list); 20*09100258SXin LI /* public for testability: */ 21*09100258SXin LI extern int keyacc_amatch(const sockaddr_u *,const sockaddr_u *, 22*09100258SXin LI unsigned int mbits); 23*09100258SXin LI 244990d495SXin LI 2568ba7e87SXin LI #endif /* NTP_KEYACC_H */ 26