at_extern.h revision 142226
1139827Simp/*- 2139827Simp * Copyright (c) 1990,1994 Regents of The University of Michigan. 3139827Simp * All Rights Reserved. 4139827Simp * 5139827Simp * Permission to use, copy, modify, and distribute this software and 6139827Simp * its documentation for any purpose and without fee is hereby granted, 7139827Simp * provided that the above copyright notice appears in all copies and 8139827Simp * that both that copyright notice and this permission notice appear 9139827Simp * in supporting documentation, and that the name of The University 10139827Simp * of Michigan not be used in advertising or publicity pertaining to 11139827Simp * distribution of the software without specific, written prior 12139827Simp * permission. This software is supplied as is without expressed or 13139827Simp * implied warranties of any kind. 14139827Simp * 15139827Simp * This product includes software developed by the University of 16139827Simp * California, Berkeley and its contributors. 17139827Simp * 18139827Simp * Research Systems Unix Group 19139827Simp * The University of Michigan 20139827Simp * c/o Wesley Craig 21139827Simp * 535 W. William Street 22139827Simp * Ann Arbor, Michigan 23139827Simp * +1-313-764-2278 24139827Simp * netatalk@umich.edu 25139827Simp * 2683366Sjulian * $FreeBSD: head/sys/netatalk/at_extern.h 142226 2005-02-22 14:20:29Z rwatson $ 2783366Sjulian */ 2833054Sbdestruct mbuf; 2933054Sbdestruct sockaddr_at; 3015885Sjulian 3132350Seivind#ifdef _NET_IF_ARP_H_ 3225047Sbdeextern timeout_t aarpprobe; 33128636Sluigiextern int aarpresolve (struct ifnet *, 3415885Sjulian struct mbuf *, 3515885Sjulian struct sockaddr_at *, 3692745Salfred u_char *); 3792745Salfredextern int at_broadcast (struct sockaddr_at *); 38142226Srwatson 39142226Srwatsonextern struct mtx aarptab_mtx; 40142226Srwatson 41142226Srwatson#define AARPTAB_LOCK() mtx_lock(&aarptab_mtx) 42142226Srwatson#define AARPTAB_UNLOCK() mtx_unlock(&aarptab_mtx) 43142226Srwatson#define AARPTAB_LOCK_ASSERT() mtx_assert(&aarptab_mtx, MA_OWNED) 44142226Srwatson#define AARPTAB_UNLOCK_ASSERT() mtx_assert(&aarptab_mtx, MA_NOTOWNED) 4515885Sjulian#endif 4615885Sjulian 4715885Sjulian#ifdef _NETATALK_AARP_H_ 4892745Salfredextern void aarptfree (struct aarptab *); 4915885Sjulian#endif 5015885Sjulian 5133054Sbdestruct ifnet; 5283366Sjulianstruct thread; 5333054Sbdestruct socket; 5433054Sbde 55111888Sjlemonextern void aarpintr (struct mbuf *); 56111888Sjlemonextern void at1intr (struct mbuf *); 57111888Sjlemonextern void at2intr (struct mbuf *); 5892745Salfredextern void aarp_clean (void); 5992745Salfredextern int at_control (struct socket *so, 6036735Sdfr u_long cmd, 6115885Sjulian caddr_t data, 6215885Sjulian struct ifnet *ifp, 6392745Salfred struct thread *td); 6492745Salfredextern u_short at_cksum (struct mbuf *m, int skip); 6592745Salfredextern void ddp_init (void); 6692745Salfredextern struct at_ifaddr *at_ifawithnet (struct sockaddr_at *); 6715885Sjulian#ifdef _NETATALK_DDP_VAR_H_ 6892745Salfredextern int ddp_output (struct mbuf *m, struct socket *so); 6923396Sjulian 7015885Sjulian#endif 7115885Sjulian#if defined (_NETATALK_DDP_VAR_H_) && defined(_NETATALK_AT_VAR_H_) 7292745Salfredextern struct ddpcb *ddp_search(struct sockaddr_at *, 7315885Sjulian struct sockaddr_at *, 7492745Salfred struct at_ifaddr *); 7515885Sjulian#endif 7615885Sjulian#ifdef _NET_ROUTE_H_ 7792745Salfredint ddp_route(struct mbuf *m, struct route *ro); 7815885Sjulian#endif 7915885Sjulian 8015885Sjulian 81