1878ed226SJulian Elischer /* 2878ed226SJulian Elischer * ng_hci_misc.h 3878ed226SJulian Elischer * 4878ed226SJulian Elischer * Copyright (c) Maksim Yevmenkin <m_evmenkin@yahoo.com> 5878ed226SJulian Elischer * All rights reserved. 6878ed226SJulian Elischer * 7878ed226SJulian Elischer * Redistribution and use in source and binary forms, with or without 8878ed226SJulian Elischer * modification, are permitted provided that the following conditions 9878ed226SJulian Elischer * are met: 10878ed226SJulian Elischer * 1. Redistributions of source code must retain the above copyright 11878ed226SJulian Elischer * notice, this list of conditions and the following disclaimer. 12878ed226SJulian Elischer * 2. Redistributions in binary form must reproduce the above copyright 13878ed226SJulian Elischer * notice, this list of conditions and the following disclaimer in the 14878ed226SJulian Elischer * documentation and/or other materials provided with the distribution. 15878ed226SJulian Elischer * 16878ed226SJulian Elischer * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND 17878ed226SJulian Elischer * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 18878ed226SJulian Elischer * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 19878ed226SJulian Elischer * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE 20878ed226SJulian Elischer * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 21878ed226SJulian Elischer * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 22878ed226SJulian Elischer * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 23878ed226SJulian Elischer * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 24878ed226SJulian Elischer * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 25878ed226SJulian Elischer * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 26878ed226SJulian Elischer * SUCH DAMAGE. 27878ed226SJulian Elischer * 280986ab12SMaksim Yevmenkin * $Id: ng_hci_misc.h,v 1.3 2003/09/08 18:57:51 max Exp $ 29878ed226SJulian Elischer * $FreeBSD$ 30878ed226SJulian Elischer */ 31878ed226SJulian Elischer 32878ed226SJulian Elischer #ifndef _NETGRAPH_HCI_MISC_H_ 33878ed226SJulian Elischer #define _NETGRAPH_HCI_MISC_H_ 1 34878ed226SJulian Elischer 35878ed226SJulian Elischer void ng_hci_mtap (ng_hci_unit_p, struct mbuf *); 36878ed226SJulian Elischer void ng_hci_node_is_up (node_p, hook_p, void *, int); 37878ed226SJulian Elischer void ng_hci_unit_clean (ng_hci_unit_p, int); 38878ed226SJulian Elischer 39878ed226SJulian Elischer ng_hci_neighbor_p ng_hci_new_neighbor (ng_hci_unit_p); 40878ed226SJulian Elischer void ng_hci_free_neighbor (ng_hci_neighbor_p); 41878ed226SJulian Elischer void ng_hci_flush_neighbor_cache (ng_hci_unit_p); 42878ed226SJulian Elischer ng_hci_neighbor_p ng_hci_get_neighbor (ng_hci_unit_p, bdaddr_p); 43878ed226SJulian Elischer int ng_hci_neighbor_stale (ng_hci_neighbor_p); 44878ed226SJulian Elischer 45878ed226SJulian Elischer ng_hci_unit_con_p ng_hci_new_con (ng_hci_unit_p, int); 46878ed226SJulian Elischer void ng_hci_free_con (ng_hci_unit_con_p); 47878ed226SJulian Elischer ng_hci_unit_con_p ng_hci_con_by_handle (ng_hci_unit_p, int); 48878ed226SJulian Elischer ng_hci_unit_con_p ng_hci_con_by_bdaddr (ng_hci_unit_p, bdaddr_p, int); 49878ed226SJulian Elischer 500986ab12SMaksim Yevmenkin int ng_hci_command_timeout (ng_hci_unit_p); 510986ab12SMaksim Yevmenkin int ng_hci_command_untimeout (ng_hci_unit_p); 520986ab12SMaksim Yevmenkin int ng_hci_con_timeout (ng_hci_unit_con_p); 530986ab12SMaksim Yevmenkin int ng_hci_con_untimeout (ng_hci_unit_con_p); 54878ed226SJulian Elischer 55878ed226SJulian Elischer #endif /* ndef _NETGRAPH_HCI_MISC_H_ */ 56878ed226SJulian Elischer 57