ng_btsocket_l2cap_raw.c (160549) | ng_btsocket_l2cap_raw.c (164033) |
---|---|
1/* 2 * ng_btsocket_l2cap_raw.c 3 */ 4 5/*- 6 * Copyright (c) 2001-2002 Maksim Yevmenkin <m_evmenkin@yahoo.com> 7 * All rights reserved. 8 * --- 14 unchanged lines hidden (view full) --- 23 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 24 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 25 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 26 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 27 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 28 * SUCH DAMAGE. 29 * 30 * $Id: ng_btsocket_l2cap_raw.c,v 1.12 2003/09/14 23:29:06 max Exp $ | 1/* 2 * ng_btsocket_l2cap_raw.c 3 */ 4 5/*- 6 * Copyright (c) 2001-2002 Maksim Yevmenkin <m_evmenkin@yahoo.com> 7 * All rights reserved. 8 * --- 14 unchanged lines hidden (view full) --- 23 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 24 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 25 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 26 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 27 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 28 * SUCH DAMAGE. 29 * 30 * $Id: ng_btsocket_l2cap_raw.c,v 1.12 2003/09/14 23:29:06 max Exp $ |
31 * $FreeBSD: head/sys/netgraph/bluetooth/socket/ng_btsocket_l2cap_raw.c 160549 2006-07-21 17:11:15Z rwatson $ | 31 * $FreeBSD: head/sys/netgraph/bluetooth/socket/ng_btsocket_l2cap_raw.c 164033 2006-11-06 13:42:10Z rwatson $ |
32 */ 33 34#include <sys/param.h> 35#include <sys/systm.h> 36#include <sys/bitstring.h> 37#include <sys/domain.h> 38#include <sys/errno.h> 39#include <sys/filedesc.h> 40#include <sys/ioccom.h> 41#include <sys/kernel.h> 42#include <sys/lock.h> 43#include <sys/malloc.h> 44#include <sys/mbuf.h> 45#include <sys/mutex.h> | 32 */ 33 34#include <sys/param.h> 35#include <sys/systm.h> 36#include <sys/bitstring.h> 37#include <sys/domain.h> 38#include <sys/errno.h> 39#include <sys/filedesc.h> 40#include <sys/ioccom.h> 41#include <sys/kernel.h> 42#include <sys/lock.h> 43#include <sys/malloc.h> 44#include <sys/mbuf.h> 45#include <sys/mutex.h> |
46#include <sys/priv.h> |
|
46#include <sys/protosw.h> 47#include <sys/queue.h> 48#include <sys/socket.h> 49#include <sys/socketvar.h> 50#include <sys/sysctl.h> 51#include <sys/taskqueue.h> 52#include <netgraph/ng_message.h> 53#include <netgraph/netgraph.h> --- 561 unchanged lines hidden (view full) --- 615 M_NETGRAPH_BTSOCKET_L2CAP_RAW, M_NOWAIT|M_ZERO); 616 if (pcb == NULL) 617 return (ENOMEM); 618 619 /* Link the PCB and the socket */ 620 so->so_pcb = (caddr_t) pcb; 621 pcb->so = so; 622 | 47#include <sys/protosw.h> 48#include <sys/queue.h> 49#include <sys/socket.h> 50#include <sys/socketvar.h> 51#include <sys/sysctl.h> 52#include <sys/taskqueue.h> 53#include <netgraph/ng_message.h> 54#include <netgraph/netgraph.h> --- 561 unchanged lines hidden (view full) --- 616 M_NETGRAPH_BTSOCKET_L2CAP_RAW, M_NOWAIT|M_ZERO); 617 if (pcb == NULL) 618 return (ENOMEM); 619 620 /* Link the PCB and the socket */ 621 so->so_pcb = (caddr_t) pcb; 622 pcb->so = so; 623 |
623 if (suser(td) == 0) | 624 if (priv_check(td, PRIV_NETBLUETOOTH_RAW) == 0) |
624 pcb->flags |= NG_BTSOCKET_L2CAP_RAW_PRIVILEGED; 625 626 mtx_init(&pcb->pcb_mtx, "btsocks_l2cap_raw_pcb_mtx", NULL, MTX_DEF); 627 628 /* Add the PCB to the list */ 629 mtx_lock(&ng_btsocket_l2cap_raw_sockets_mtx); 630 LIST_INSERT_HEAD(&ng_btsocket_l2cap_raw_sockets, pcb, next); 631 mtx_unlock(&ng_btsocket_l2cap_raw_sockets_mtx); --- 674 unchanged lines hidden --- | 625 pcb->flags |= NG_BTSOCKET_L2CAP_RAW_PRIVILEGED; 626 627 mtx_init(&pcb->pcb_mtx, "btsocks_l2cap_raw_pcb_mtx", NULL, MTX_DEF); 628 629 /* Add the PCB to the list */ 630 mtx_lock(&ng_btsocket_l2cap_raw_sockets_mtx); 631 LIST_INSERT_HEAD(&ng_btsocket_l2cap_raw_sockets, pcb, next); 632 mtx_unlock(&ng_btsocket_l2cap_raw_sockets_mtx); --- 674 unchanged lines hidden --- |