1/* 2 * Copyright (c) 1997, 2000 Hellmuth Michaelis. All rights reserved. 3 * 4 * Redistribution and use in source and binary forms, with or without 5 * modification, are permitted provided that the following conditions 6 * are met: 7 * 1. Redistributions of source code must retain the above copyright 8 * notice, this list of conditions and the following disclaimer. 9 * 2. Redistributions in binary form must reproduce the above copyright 10 * notice, this list of conditions and the following disclaimer in the 11 * documentation and/or other materials provided with the distribution. 12 * 13 * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND 14 * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 15 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 16 * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE 17 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 18 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 19 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 20 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 21 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 22 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 23 * SUCH DAMAGE. 24 * 25 *--------------------------------------------------------------------------- 26 * 27 * i4b_l4.h - kernel interface to userland header file 28 * --------------------------------------------------- 29 * 30 * $Id: i4b_l4.h,v 1.10 2005/12/10 23:51:50 elad Exp $ 31 * 32 * $FreeBSD$ 33 * 34 * last edit-date: [Thu Apr 27 13:28:01 2000] 35 * 36 *---------------------------------------------------------------------------*/ 37 38#ifndef _NETISDN_I4B_L4_H_ 39#define _NETISDN_I4B_L4_H_ 40 41extern void i4bputqueue ( struct mbuf *m ); 42extern void i4bputqueue_hipri(struct mbuf *m); 43extern void i4b_l4_accounting(int, int, int, int, int, int, int, int); 44extern void i4b_l4_alert_ind ( call_desc_t *cd ); 45extern void i4b_l4_charging_ind( call_desc_t *cd ); 46extern void i4b_l4_connect_active_ind ( call_desc_t *cd ); 47extern void i4b_l4_connect_ind ( call_desc_t *cd ); 48extern void i4b_l4_daemon_attached(void); 49extern void i4b_l4_daemon_detached(void); 50extern void i4b_l4_dialout( int driver, int driver_unit ); 51extern void i4b_l4_dialoutnumber(int driver, int driver_unit, int cmdlen, char *cmd); 52extern void i4b_l4_disconnect_ind ( call_desc_t *cd ); 53extern void i4b_l4_drvrdisc (int cdid); 54extern void i4b_l4_negcomplete( call_desc_t *cd ); 55extern void i4b_l4_ifstate_changed( call_desc_t *cd, int new_state ); 56extern void i4b_l4_idle_timeout_ind( call_desc_t *cd ); 57extern void i4b_l4_info_ind ( call_desc_t *cd ); 58extern void i4b_l4_packet_ind(int, int, int, struct mbuf *pkt); 59extern void i4b_l4_l12stat(struct isdn_l3_driver *, int layer, int state); 60extern void i4b_l4_pdeact(struct isdn_l3_driver *, int numactive); 61extern void i4b_l4_teiasg(struct isdn_l3_driver *, int tei); 62extern void i4b_l4_status_ind ( call_desc_t *cd ); 63extern void i4b_l4_proceeding_ind ( call_desc_t *cd ); 64extern void i4b_idle_check(call_desc_t *cdp); 65extern call_desc_t * cd_by_cdid ( unsigned int cdid ); 66extern void freecd_by_cd ( call_desc_t *cd ); 67call_desc_t *cd_by_isdnifcr(int isdnif, int cr, int crf); 68void free_all_cd_of_isdnif(int isdnif); 69extern unsigned char get_rand_cr ( int unit ); 70extern call_desc_t * reserve_cd ( void ); 71extern void T400_start ( call_desc_t *cd ); 72extern void T400_stop ( call_desc_t *cd ); 73extern void update_controller_leds(struct isdn_l3_driver *d); 74 75#endif /* !_NETISDN_I4B_L4_H_ */ 76