Symbol: pcb
crypto/libressl/crypto/dh/dh_pmeth.c
194
BN_GENCB *pcb, cb;
crypto/libressl/crypto/dh/dh_pmeth.c
198
pcb = &cb;
crypto/libressl/crypto/dh/dh_pmeth.c
199
evp_pkey_set_cb_translate(pcb, ctx);
crypto/libressl/crypto/dh/dh_pmeth.c
201
pcb = NULL;
crypto/libressl/crypto/dh/dh_pmeth.c
206
pcb);
crypto/libressl/crypto/dsa/dsa_pmeth.c
284
BN_GENCB *pcb, cb;
crypto/libressl/crypto/dsa/dsa_pmeth.c
288
pcb = &cb;
crypto/libressl/crypto/dsa/dsa_pmeth.c
289
evp_pkey_set_cb_translate(pcb, ctx);
crypto/libressl/crypto/dsa/dsa_pmeth.c
291
pcb = NULL;
crypto/libressl/crypto/dsa/dsa_pmeth.c
296
NULL, 0, NULL, NULL, NULL, pcb);
crypto/libressl/crypto/rsa/rsa_pmeth.c
748
BN_GENCB *pcb, cb;
crypto/libressl/crypto/rsa/rsa_pmeth.c
760
pcb = &cb;
crypto/libressl/crypto/rsa/rsa_pmeth.c
761
evp_pkey_set_cb_translate(pcb, ctx);
crypto/libressl/crypto/rsa/rsa_pmeth.c
763
pcb = NULL;
crypto/libressl/crypto/rsa/rsa_pmeth.c
765
ret = RSA_generate_key_ex(rsa, rctx->nbits, rctx->pub_exp, pcb);
lib/libkvm/kvm_x86_64.c
160
struct pcb dumppcb;
sys/dev/virtual/nvmm/x86/nvmm_x86_internal.h
144
struct pcb *pcb = curthread->td_lwp->lwp_thread->td_pcb;
sys/dev/virtual/nvmm/x86/nvmm_x86_internal.h
146
if (__predict_true(!(pcb->pcb_flags & PCB_DBREGS)))
sys/dev/virtual/nvmm/x86/nvmm_x86_internal.h
159
struct pcb *pcb = curthread->td_lwp->lwp_thread->td_pcb;
sys/dev/virtual/nvmm/x86/nvmm_x86_internal.h
161
if (__predict_true(!(pcb->pcb_flags & PCB_DBREGS)))
sys/kern/kern_shutdown.c
215
struct pcb dumppcb;
sys/net/ipfw/ip_fw2.c
3028
struct inpcb *pcb;
sys/net/ipfw/ip_fw2.c
3046
pcb = in_pcblookup_hash(pi,
sys/net/ipfw/ip_fw2.c
3051
pcb = in_pcblookup_hash(pi,
sys/net/ipfw/ip_fw2.c
3056
if (pcb == NULL || pcb->inp_socket == NULL)
sys/net/ipfw/ip_fw2.c
3061
return !socheckuid(pcb->inp_socket, uid);
sys/net/ipfw/ip_fw2.c
3064
return groupmember(uid, pcb->inp_socket->so_cred);
sys/net/ipfw3_layer4/ip_fw3_layer4.c
102
struct inpcb *pcb;
sys/net/ipfw3_layer4/ip_fw3_layer4.c
120
pcb = in_pcblookup_hash(pi,
sys/net/ipfw3_layer4/ip_fw3_layer4.c
125
pcb = in_pcblookup_hash(pi,
sys/net/ipfw3_layer4/ip_fw3_layer4.c
130
if (pcb == NULL || pcb->inp_socket == NULL) {
sys/net/ipfw3_layer4/ip_fw3_layer4.c
136
return !socheckuid(pcb->inp_socket, uid);
sys/net/ipfw3_layer4/ip_fw3_layer4.c
139
return groupmember(uid, pcb->inp_socket->so_cred);
sys/netbt/hci_link.c
764
struct sco_pcb *pcb, *new;
sys/netbt/hci_link.c
786
LIST_FOREACH(pcb, &sco_pcb, sp_next) {
sys/netbt/hci_link.c
787
if ((pcb->sp_flags & SP_LISTENING) == 0)
sys/netbt/hci_link.c
790
new = (*pcb->sp_proto->newconn)(pcb->sp_upper, &laddr, &raddr);
sys/netbt/hci_link.c
986
struct sco_pcb *pcb;
sys/netbt/hci_link.c
988
pcb = link->hl_sco;
sys/netbt/hci_link.c
989
pcb->sp_link = NULL;
sys/netbt/hci_link.c
991
(*pcb->sp_proto->disconnected)(pcb->sp_upper, err);
sys/netbt/hci_socket.c
1004
if (m0 && sbappendaddr(&pcb->hp_socket->so_rcv.sb,
sys/netbt/hci_socket.c
1006
sorwakeup(pcb->hp_socket);
sys/netbt/hci_socket.c
472
hci_send(struct hci_pcb *pcb, struct mbuf *m, bdaddr_t *addr)
sys/netbt/hci_socket.c
510
if ((pcb->hp_flags & HCI_PRIVILEGED) == 0
sys/netbt/hci_socket.c
522
sbappendrecord(&pcb->hp_socket->so_snd.sb, m0);
sys/netbt/hci_socket.c
523
M_SETCTX(m, pcb->hp_socket); /* enable drop callback */
sys/netbt/hci_socket.c
564
struct hci_pcb *pcb = (struct hci_pcb *)so->so_pcb;
sys/netbt/hci_socket.c
567
if (pcb == NULL) {
sys/netbt/hci_socket.c
576
LIST_REMOVE(pcb, hp_next);
sys/netbt/hci_socket.c
577
kfree(pcb, M_PCB);
sys/netbt/hci_socket.c
587
struct hci_pcb *pcb = (struct hci_pcb *)so->so_pcb;
sys/netbt/hci_socket.c
590
if (pcb) {
sys/netbt/hci_socket.c
591
bdaddr_copy(&pcb->hp_raddr, BDADDR_ANY);
sys/netbt/hci_socket.c
622
struct hci_pcb *pcb = (struct hci_pcb *)so->so_pcb;
sys/netbt/hci_socket.c
625
if (pcb) {
sys/netbt/hci_socket.c
634
pcb = kmalloc(sizeof *pcb, M_PCB, M_NOWAIT | M_ZERO);
sys/netbt/hci_socket.c
635
if (pcb == NULL) {
sys/netbt/hci_socket.c
641
so->so_pcb = pcb;
sys/netbt/hci_socket.c
642
pcb->hp_socket = so;
sys/netbt/hci_socket.c
645
pcb->hp_flags |= HCI_PRIVILEGED;
sys/netbt/hci_socket.c
651
hci_filter_set(HCI_EVENT_COMMAND_COMPL, &pcb->hp_efilter);
sys/netbt/hci_socket.c
652
hci_filter_set(HCI_EVENT_COMMAND_STATUS, &pcb->hp_efilter);
sys/netbt/hci_socket.c
653
hci_filter_set(HCI_EVENT_PKT, &pcb->hp_pfilter);
sys/netbt/hci_socket.c
656
LIST_INSERT_HEAD(&hci_pcb, pcb, hp_next);
sys/netbt/hci_socket.c
668
struct hci_pcb *pcb = (struct hci_pcb *)so->so_pcb;
sys/netbt/hci_socket.c
685
bdaddr_copy(&pcb->hp_laddr, &sa->bt_bdaddr);
sys/netbt/hci_socket.c
688
pcb->hp_flags |= HCI_PROMISCUOUS;
sys/netbt/hci_socket.c
690
pcb->hp_flags &= ~HCI_PROMISCUOUS;
sys/netbt/hci_socket.c
701
struct hci_pcb *pcb = (struct hci_pcb *)so->so_pcb;
sys/netbt/hci_socket.c
722
bdaddr_copy(&pcb->hp_raddr, &sa->bt_bdaddr);
sys/netbt/hci_socket.c
734
struct hci_pcb *pcb = (struct hci_pcb *)so->so_pcb;
sys/netbt/hci_socket.c
743
bdaddr_copy(&sa->bt_bdaddr, &pcb->hp_raddr);
sys/netbt/hci_socket.c
753
struct hci_pcb *pcb = (struct hci_pcb *)so->so_pcb;
sys/netbt/hci_socket.c
762
bdaddr_copy(&sa->bt_bdaddr, &pcb->hp_laddr);
sys/netbt/hci_socket.c
783
struct hci_pcb *pcb = (struct hci_pcb *)so->so_pcb;
sys/netbt/hci_socket.c
807
error = hci_send(pcb, m, (sa ? &sa->bt_bdaddr : &pcb->hp_raddr));
sys/netbt/hci_socket.c
826
struct hci_pcb *pcb = (struct hci_pcb *)so->so_pcb;
sys/netbt/hci_socket.c
834
if (pcb == NULL) {
sys/netbt/hci_socket.c
848
soopt_from_kbuf(sopt, &pcb->hp_efilter,
sys/netbt/hci_socket.c
853
soopt_from_kbuf(sopt, &pcb->hp_pfilter,
sys/netbt/hci_socket.c
858
if (pcb->hp_flags & HCI_DIRECTION)
sys/netbt/hci_socket.c
874
error = soopt_to_kbuf(sopt, &pcb->hp_efilter,
sys/netbt/hci_socket.c
880
error = soopt_to_kbuf(sopt, &pcb->hp_pfilter,
sys/netbt/hci_socket.c
891
pcb->hp_flags |= HCI_DIRECTION;
sys/netbt/hci_socket.c
893
pcb->hp_flags &= ~HCI_DIRECTION;
sys/netbt/hci_socket.c
919
struct hci_pcb *pcb;
sys/netbt/hci_socket.c
935
LIST_FOREACH(pcb, &hci_pcb, hp_next) {
sys/netbt/hci_socket.c
939
if ((pcb->hp_flags & HCI_PROMISCUOUS) == 0
sys/netbt/hci_socket.c
940
&& bdaddr_same(&pcb->hp_laddr, &sa.bt_bdaddr) == 0)
sys/netbt/hci_socket.c
946
if (hci_filter_test(type, &pcb->hp_pfilter) == 0)
sys/netbt/hci_socket.c
958
if (hci_filter_test(event, &pcb->hp_efilter) == 0)
sys/netbt/hci_socket.c
961
if ((pcb->hp_flags & HCI_PRIVILEGED) == 0
sys/netbt/hci_socket.c
971
if ((pcb->hp_flags & HCI_PRIVILEGED) == 0
sys/netbt/hci_socket.c
979
if ((pcb->hp_flags & HCI_PRIVILEGED) == 0)
sys/netbt/hci_socket.c
990
if (pcb->hp_flags & HCI_DIRECTION) {
sys/netbt/l2cap_socket.c
100
struct l2cap_channel *pcb = (struct l2cap_channel *) so->so_pcb;
sys/netbt/l2cap_socket.c
108
if (pcb == NULL) {
sys/netbt/l2cap_socket.c
125
m->m_len = l2cap_getopt(pcb, sopt->sopt_name, mtod(m, void *));
sys/netbt/l2cap_socket.c
135
error = l2cap_setopt2(pcb, sopt->sopt_name, so, sopt);
sys/netbt/l2cap_socket.c
266
struct l2cap_channel *pcb = so->so_pcb;
sys/netbt/l2cap_socket.c
268
l2cap_disconnect(pcb, 0);
sys/netbt/l2cap_socket.c
279
struct l2cap_channel *pcb = so->so_pcb;
sys/netbt/l2cap_socket.c
284
error = l2cap_disconnect(pcb, so->so_linger);
sys/netbt/l2cap_socket.c
298
struct l2cap_channel *pcb = so->so_pcb;
sys/netbt/l2cap_socket.c
301
if (pcb != NULL) {
sys/netbt/l2cap_socket.c
324
struct l2cap_channel *pcb = so->so_pcb;
sys/netbt/l2cap_socket.c
336
error = l2cap_bind(pcb, sa);
sys/netbt/l2cap_socket.c
346
struct l2cap_channel *pcb = so->so_pcb;
sys/netbt/l2cap_socket.c
359
error = l2cap_connect(pcb, sa);
sys/netbt/l2cap_socket.c
369
struct l2cap_channel *pcb = so->so_pcb;
sys/netbt/l2cap_socket.c
377
error = l2cap_peeraddr(pcb, sa);
sys/netbt/l2cap_socket.c
388
struct l2cap_channel *pcb = so->so_pcb;
sys/netbt/l2cap_socket.c
396
error = l2cap_sockaddr(pcb, sa);
sys/netbt/l2cap_socket.c
418
struct l2cap_channel *pcb = so->so_pcb;
sys/netbt/l2cap_socket.c
428
if (m->m_pkthdr.len > pcb->lc_omtu) {
sys/netbt/l2cap_socket.c
451
error = l2cap_send(pcb, m0);
sys/netbt/l2cap_socket.c
467
struct l2cap_channel *pcb = so->so_pcb;
sys/netbt/l2cap_socket.c
477
error = l2cap_peeraddr(pcb, &sa);
sys/netbt/l2cap_socket.c
487
struct l2cap_channel *pcb = so->so_pcb;
sys/netbt/l2cap_socket.c
490
error = l2cap_listen(pcb);
sys/netbt/rfcomm_socket.c
105
if (pcb == NULL) {
sys/netbt/rfcomm_socket.c
119
m->m_len = rfcomm_getopt(pcb, sopt->sopt_name, mtod(m, void *));
sys/netbt/rfcomm_socket.c
130
error = rfcomm_setopt2(pcb, sopt->sopt_name, so, sopt);
sys/netbt/rfcomm_socket.c
275
struct rfcomm_dlc *pcb = (struct rfcomm_dlc *) so->so_pcb;
sys/netbt/rfcomm_socket.c
277
rfcomm_disconnect(pcb, 0);
sys/netbt/rfcomm_socket.c
287
struct rfcomm_dlc *pcb = (struct rfcomm_dlc *) so->so_pcb;
sys/netbt/rfcomm_socket.c
291
error = rfcomm_disconnect(pcb, so->so_linger);
sys/netbt/rfcomm_socket.c
305
struct rfcomm_dlc *pcb = (struct rfcomm_dlc *) so->so_pcb;
sys/netbt/rfcomm_socket.c
308
if (pcb != NULL) {
sys/netbt/rfcomm_socket.c
338
struct rfcomm_dlc *pcb = (struct rfcomm_dlc *) so->so_pcb;
sys/netbt/rfcomm_socket.c
350
error = rfcomm_bind(pcb, sa);
sys/netbt/rfcomm_socket.c
360
struct rfcomm_dlc *pcb = (struct rfcomm_dlc *) so->so_pcb;
sys/netbt/rfcomm_socket.c
373
error = rfcomm_connect(pcb, sa);
sys/netbt/rfcomm_socket.c
383
struct rfcomm_dlc *pcb = (struct rfcomm_dlc *) so->so_pcb;
sys/netbt/rfcomm_socket.c
391
error = rfcomm_peeraddr(pcb, sa);
sys/netbt/rfcomm_socket.c
402
struct rfcomm_dlc *pcb = (struct rfcomm_dlc *) so->so_pcb;
sys/netbt/rfcomm_socket.c
410
error = rfcomm_sockaddr(pcb, sa);
sys/netbt/rfcomm_socket.c
431
struct rfcomm_dlc *pcb = (struct rfcomm_dlc *) so->so_pcb;
sys/netbt/rfcomm_socket.c
446
error = rfcomm_send(pcb, m0);
sys/netbt/rfcomm_socket.c
458
struct rfcomm_dlc *pcb = (struct rfcomm_dlc *) so->so_pcb;
sys/netbt/rfcomm_socket.c
466
error = rfcomm_peeraddr(pcb, sa);
sys/netbt/rfcomm_socket.c
476
struct rfcomm_dlc *pcb = (struct rfcomm_dlc *)so->so_pcb;
sys/netbt/rfcomm_socket.c
479
error = rfcomm_listen(pcb);
sys/netbt/rfcomm_socket.c
487
struct rfcomm_dlc *pcb = (struct rfcomm_dlc *) so->so_pcb;
sys/netbt/rfcomm_socket.c
490
error = rfcomm_rcvd(pcb, sbspace(&so->so_rcv));
sys/netbt/rfcomm_socket.c
97
struct rfcomm_dlc *pcb = (struct rfcomm_dlc *) so->so_pcb;
sys/netbt/sco_socket.c
112
m->m_len = sco_getopt(pcb, sopt->sopt_name, mtod(m, uint8_t *));
sys/netbt/sco_socket.c
133
err = sco_setopt(pcb, sopt->sopt_name, mtod(m, uint8_t *));
sys/netbt/sco_socket.c
251
struct sco_pcb *pcb = (struct sco_pcb *)so->so_pcb;
sys/netbt/sco_socket.c
253
sco_disconnect(pcb, 0);
sys/netbt/sco_socket.c
263
struct sco_pcb *pcb = (struct sco_pcb *)so->so_pcb;
sys/netbt/sco_socket.c
268
error = sco_disconnect(pcb, so->so_linger);
sys/netbt/sco_socket.c
276
struct sco_pcb *pcb = (struct sco_pcb *)so->so_pcb;
sys/netbt/sco_socket.c
279
if (pcb) {
sys/netbt/sco_socket.c
296
struct sco_pcb *pcb = (struct sco_pcb *)so->so_pcb;
sys/netbt/sco_socket.c
308
error = sco_bind(pcb, sa);
sys/netbt/sco_socket.c
318
struct sco_pcb *pcb = (struct sco_pcb *)so->so_pcb;
sys/netbt/sco_socket.c
331
error = sco_connect(pcb, sa);
sys/netbt/sco_socket.c
341
struct sco_pcb *pcb = (struct sco_pcb *)so->so_pcb;
sys/netbt/sco_socket.c
349
error = sco_peeraddr(pcb, sa);
sys/netbt/sco_socket.c
359
struct sco_pcb *pcb = (struct sco_pcb *)so->so_pcb;
sys/netbt/sco_socket.c
367
error = sco_sockaddr(pcb, sa);
sys/netbt/sco_socket.c
386
struct sco_pcb *pcb = (struct sco_pcb *)so->so_pcb;
sys/netbt/sco_socket.c
394
if (m->m_pkthdr.len > pcb->sp_mtu) {
sys/netbt/sco_socket.c
412
error = sco_send(pcb, m0);
sys/netbt/sco_socket.c
427
struct sco_pcb *pcb = (struct sco_pcb *)so->so_pcb;
sys/netbt/sco_socket.c
435
error = sco_peeraddr(pcb, sa);
sys/netbt/sco_socket.c
445
struct sco_pcb *pcb = (struct sco_pcb *)so->so_pcb;
sys/netbt/sco_socket.c
448
error = sco_listen(pcb);
sys/netbt/sco_socket.c
91
struct sco_pcb *pcb = (struct sco_pcb *)so->so_pcb;
sys/netbt/sco_socket.c
99
if (pcb == NULL) {
sys/netbt/sco_upper.c
102
sco_sockaddr(struct sco_pcb *pcb, struct sockaddr_bt *addr)
sys/netbt/sco_upper.c
108
bdaddr_copy(&addr->bt_bdaddr, &pcb->sp_laddr);
sys/netbt/sco_upper.c
118
sco_connect(struct sco_pcb *pcb, struct sockaddr_bt *dest)
sys/netbt/sco_upper.c
125
if (pcb->sp_flags & SP_LISTENING)
sys/netbt/sco_upper.c
128
bdaddr_copy(&pcb->sp_raddr, &dest->bt_bdaddr);
sys/netbt/sco_upper.c
130
if (bdaddr_any(&pcb->sp_raddr))
sys/netbt/sco_upper.c
133
if (bdaddr_any(&pcb->sp_laddr)) {
sys/netbt/sco_upper.c
134
err = hci_route_lookup(&pcb->sp_laddr, &pcb->sp_raddr);
sys/netbt/sco_upper.c
139
unit = hci_unit_lookup(&pcb->sp_laddr);
sys/netbt/sco_upper.c
149
acl = hci_link_lookup_bdaddr(unit, &pcb->sp_raddr, HCI_LINK_ACL);
sys/netbt/sco_upper.c
158
bdaddr_copy(&sco->hl_bdaddr, &pcb->sp_raddr);
sys/netbt/sco_upper.c
160
sco->hl_link = hci_acl_open(unit, &pcb->sp_raddr);
sys/netbt/sco_upper.c
171
sco->hl_sco = pcb;
sys/netbt/sco_upper.c
172
pcb->sp_link = sco;
sys/netbt/sco_upper.c
174
pcb->sp_mtu = unit->hci_max_sco_size;
sys/netbt/sco_upper.c
184
sco_peeraddr(struct sco_pcb *pcb, struct sockaddr_bt *addr)
sys/netbt/sco_upper.c
190
bdaddr_copy(&addr->bt_bdaddr, &pcb->sp_raddr);
sys/netbt/sco_upper.c
200
sco_disconnect(struct sco_pcb *pcb, int linger)
sys/netbt/sco_upper.c
206
sco = pcb->sp_link;
sys/netbt/sco_upper.c
216
pcb->sp_link = NULL;
sys/netbt/sco_upper.c
231
struct sco_pcb *pcb;
sys/netbt/sco_upper.c
234
pcb = *handle;
sys/netbt/sco_upper.c
237
if (pcb == NULL)
sys/netbt/sco_upper.c
240
if (pcb->sp_link != NULL) {
sys/netbt/sco_upper.c
241
sco_disconnect(pcb, 0);
sys/netbt/sco_upper.c
242
pcb->sp_link = NULL;
sys/netbt/sco_upper.c
245
LIST_REMOVE(pcb, sp_next);
sys/netbt/sco_upper.c
246
kfree(pcb, M_BLUETOOTH);
sys/netbt/sco_upper.c
256
sco_listen(struct sco_pcb *pcb)
sys/netbt/sco_upper.c
259
if (pcb->sp_link != NULL)
sys/netbt/sco_upper.c
262
pcb->sp_flags |= SP_LISTENING;
sys/netbt/sco_upper.c
277
sco_send(struct sco_pcb *pcb, struct mbuf *m)
sys/netbt/sco_upper.c
282
if (pcb->sp_link == NULL) {
sys/netbt/sco_upper.c
295
if (plen != pcb->sp_mtu) {
sys/netbt/sco_upper.c
306
hdr->con_handle = htole16(pcb->sp_link->hl_handle);
sys/netbt/sco_upper.c
309
pcb->sp_pending++;
sys/netbt/sco_upper.c
310
M_SETCTX(m, pcb->sp_link);
sys/netbt/sco_upper.c
311
hci_output_sco(pcb->sp_link->hl_unit, m);
sys/netbt/sco_upper.c
322
sco_setopt(struct sco_pcb *pcb, int opt, void *addr)
sys/netbt/sco_upper.c
341
sco_getopt(struct sco_pcb *pcb, int opt, void *addr)
sys/netbt/sco_upper.c
346
*(uint16_t *)addr = pcb->sp_mtu;
sys/netbt/sco_upper.c
350
if (pcb->sp_link) {
sys/netbt/sco_upper.c
351
*(uint16_t *)addr = pcb->sp_link->hl_handle;
sys/netbt/sco_upper.c
64
struct sco_pcb *pcb;
sys/netbt/sco_upper.c
70
pcb = kmalloc(sizeof(*pcb), M_BLUETOOTH, M_NOWAIT | M_ZERO);
sys/netbt/sco_upper.c
71
if (pcb == NULL)
sys/netbt/sco_upper.c
74
pcb->sp_proto = proto;
sys/netbt/sco_upper.c
75
pcb->sp_upper = upper;
sys/netbt/sco_upper.c
77
LIST_INSERT_HEAD(&sco_pcb, pcb, sp_next);
sys/netbt/sco_upper.c
79
*handle = pcb;
sys/netbt/sco_upper.c
89
sco_bind(struct sco_pcb *pcb, struct sockaddr_bt *addr)
sys/netbt/sco_upper.c
92
bdaddr_copy(&pcb->sp_laddr, &addr->bt_bdaddr);
sys/netgraph7/bluetooth/socket/ng_btsocket_hci_raw.c
1014
ng_btsocket_hci_raw_pcb_p pcb = so2hci_raw_pcb(so);
sys/netgraph7/bluetooth/socket/ng_btsocket_hci_raw.c
1018
if (pcb == NULL) {
sys/netgraph7/bluetooth/socket/ng_btsocket_hci_raw.c
1044
lockmgr(&pcb->pcb_lock, LK_EXCLUSIVE);
sys/netgraph7/bluetooth/socket/ng_btsocket_hci_raw.c
1046
if (bcmp(sa, &pcb->addr, sizeof(pcb->addr)) != 0) {
sys/netgraph7/bluetooth/socket/ng_btsocket_hci_raw.c
1047
lockmgr(&pcb->pcb_lock, LK_RELEASE);
sys/netgraph7/bluetooth/socket/ng_btsocket_hci_raw.c
1054
lockmgr(&pcb->pcb_lock, LK_RELEASE);
sys/netgraph7/bluetooth/socket/ng_btsocket_hci_raw.c
1070
ng_btsocket_hci_raw_pcb_p pcb = so2hci_raw_pcb(so);
sys/netgraph7/bluetooth/socket/ng_btsocket_hci_raw.c
1075
if (pcb == NULL) {
sys/netgraph7/bluetooth/socket/ng_btsocket_hci_raw.c
1084
lockmgr(&pcb->pcb_lock, LK_EXCLUSIVE);
sys/netgraph7/bluetooth/socket/ng_btsocket_hci_raw.c
1087
if (pcb->addr.hci_node[0] == 0) {
sys/netgraph7/bluetooth/socket/ng_btsocket_hci_raw.c
1088
lockmgr(&pcb->pcb_lock, LK_RELEASE);
sys/netgraph7/bluetooth/socket/ng_btsocket_hci_raw.c
1094
if (pcb->token != 0) {
sys/netgraph7/bluetooth/socket/ng_btsocket_hci_raw.c
1095
lockmgr(&pcb->pcb_lock, LK_RELEASE);
sys/netgraph7/bluetooth/socket/ng_btsocket_hci_raw.c
1100
ksnprintf(path, sizeof(path), "%s:", pcb->addr.hci_node);
sys/netgraph7/bluetooth/socket/ng_btsocket_hci_raw.c
1107
error = ng_btsocket_hci_raw_send_sync_ngmsg(pcb, path,
sys/netgraph7/bluetooth/socket/ng_btsocket_hci_raw.c
1113
if (pcb->flags & NG_BTSOCKET_HCI_RAW_PRIVILEGED)
sys/netgraph7/bluetooth/socket/ng_btsocket_hci_raw.c
1124
error = ng_btsocket_hci_raw_send_sync_ngmsg(pcb, path,
sys/netgraph7/bluetooth/socket/ng_btsocket_hci_raw.c
1133
if (pcb->flags & NG_BTSOCKET_HCI_RAW_PRIVILEGED)
sys/netgraph7/bluetooth/socket/ng_btsocket_hci_raw.c
1145
error = ng_btsocket_hci_raw_send_sync_ngmsg(pcb, path,
sys/netgraph7/bluetooth/socket/ng_btsocket_hci_raw.c
1154
error = ng_btsocket_hci_raw_send_sync_ngmsg(pcb, path,
sys/netgraph7/bluetooth/socket/ng_btsocket_hci_raw.c
1163
error = ng_btsocket_hci_raw_send_sync_ngmsg(pcb, path,
sys/netgraph7/bluetooth/socket/ng_btsocket_hci_raw.c
1172
error = ng_btsocket_hci_raw_send_sync_ngmsg(pcb, path,
sys/netgraph7/bluetooth/socket/ng_btsocket_hci_raw.c
1178
if (pcb->flags & NG_BTSOCKET_HCI_RAW_PRIVILEGED)
sys/netgraph7/bluetooth/socket/ng_btsocket_hci_raw.c
1186
if (pcb->flags & NG_BTSOCKET_HCI_RAW_PRIVILEGED)
sys/netgraph7/bluetooth/socket/ng_btsocket_hci_raw.c
1214
pcb->token = ngmsg->header.token;
sys/netgraph7/bluetooth/socket/ng_btsocket_hci_raw.c
1215
pcb->msg = NULL;
sys/netgraph7/bluetooth/socket/ng_btsocket_hci_raw.c
1219
pcb->token = 0;
sys/netgraph7/bluetooth/socket/ng_btsocket_hci_raw.c
1223
error = lksleep(&pcb->msg, &pcb->pcb_lock,
sys/netgraph7/bluetooth/socket/ng_btsocket_hci_raw.c
1226
pcb->token = 0;
sys/netgraph7/bluetooth/socket/ng_btsocket_hci_raw.c
1231
if (pcb->msg != NULL &&
sys/netgraph7/bluetooth/socket/ng_btsocket_hci_raw.c
1232
pcb->msg->header.cmd == NGM_HCI_NODE_GET_NEIGHBOR_CACHE) {
sys/netgraph7/bluetooth/socket/ng_btsocket_hci_raw.c
1235
(pcb->msg->data);
sys/netgraph7/bluetooth/socket/ng_btsocket_hci_raw.c
1247
NG_FREE_MSG(pcb->msg); /* checks for != NULL */
sys/netgraph7/bluetooth/socket/ng_btsocket_hci_raw.c
1270
pcb->token = ngmsg->header.token;
sys/netgraph7/bluetooth/socket/ng_btsocket_hci_raw.c
1271
pcb->msg = NULL;
sys/netgraph7/bluetooth/socket/ng_btsocket_hci_raw.c
1275
pcb->token = 0;
sys/netgraph7/bluetooth/socket/ng_btsocket_hci_raw.c
1279
error = lksleep(&pcb->msg, &pcb->pcb_lock,
sys/netgraph7/bluetooth/socket/ng_btsocket_hci_raw.c
1282
pcb->token = 0;
sys/netgraph7/bluetooth/socket/ng_btsocket_hci_raw.c
1287
if (pcb->msg != NULL &&
sys/netgraph7/bluetooth/socket/ng_btsocket_hci_raw.c
1288
pcb->msg->header.cmd == NGM_HCI_NODE_GET_CON_LIST) {
sys/netgraph7/bluetooth/socket/ng_btsocket_hci_raw.c
1290
p1 = (ng_hci_node_con_list_ep *)(pcb->msg->data);
sys/netgraph7/bluetooth/socket/ng_btsocket_hci_raw.c
1302
NG_FREE_MSG(pcb->msg); /* checks for != NULL */
sys/netgraph7/bluetooth/socket/ng_btsocket_hci_raw.c
1310
error = ng_btsocket_hci_raw_send_sync_ngmsg(pcb, path,
sys/netgraph7/bluetooth/socket/ng_btsocket_hci_raw.c
1320
if (pcb->flags & NG_BTSOCKET_HCI_RAW_PRIVILEGED)
sys/netgraph7/bluetooth/socket/ng_btsocket_hci_raw.c
1333
error = ng_btsocket_hci_raw_send_sync_ngmsg(pcb, path,
sys/netgraph7/bluetooth/socket/ng_btsocket_hci_raw.c
1342
if (pcb->flags & NG_BTSOCKET_HCI_RAW_PRIVILEGED)
sys/netgraph7/bluetooth/socket/ng_btsocket_hci_raw.c
1355
error = ng_btsocket_hci_raw_send_sync_ngmsg(pcb, path,
sys/netgraph7/bluetooth/socket/ng_btsocket_hci_raw.c
1364
if (pcb->flags & NG_BTSOCKET_HCI_RAW_PRIVILEGED)
sys/netgraph7/bluetooth/socket/ng_btsocket_hci_raw.c
1390
pcb->token = ngmsg->header.token;
sys/netgraph7/bluetooth/socket/ng_btsocket_hci_raw.c
1391
pcb->msg = NULL;
sys/netgraph7/bluetooth/socket/ng_btsocket_hci_raw.c
1395
pcb->token = 0;
sys/netgraph7/bluetooth/socket/ng_btsocket_hci_raw.c
1399
error = lksleep(&pcb->msg, &pcb->pcb_lock,
sys/netgraph7/bluetooth/socket/ng_btsocket_hci_raw.c
1402
pcb->token = 0;
sys/netgraph7/bluetooth/socket/ng_btsocket_hci_raw.c
1407
if (pcb->msg != NULL && pcb->msg->header.cmd == NGM_LISTNAMES) {
sys/netgraph7/bluetooth/socket/ng_btsocket_hci_raw.c
1409
struct namelist *nl1 = (struct namelist *) pcb->msg->data;
sys/netgraph7/bluetooth/socket/ng_btsocket_hci_raw.c
1432
NG_FREE_MSG(pcb->msg); /* checks for != NULL */
sys/netgraph7/bluetooth/socket/ng_btsocket_hci_raw.c
1440
lockmgr(&pcb->pcb_lock, LK_RELEASE);
sys/netgraph7/bluetooth/socket/ng_btsocket_hci_raw.c
1455
ng_btsocket_hci_raw_pcb_p pcb = so2hci_raw_pcb(so);
sys/netgraph7/bluetooth/socket/ng_btsocket_hci_raw.c
1459
if (pcb == NULL) {
sys/netgraph7/bluetooth/socket/ng_btsocket_hci_raw.c
1471
lockmgr(&pcb->pcb_lock, LK_EXCLUSIVE);
sys/netgraph7/bluetooth/socket/ng_btsocket_hci_raw.c
1477
error = sooptcopyout(sopt, &pcb->filter,
sys/netgraph7/bluetooth/socket/ng_btsocket_hci_raw.c
1478
sizeof(pcb->filter));
sys/netgraph7/bluetooth/socket/ng_btsocket_hci_raw.c
1482
dir = (pcb->flags & NG_BTSOCKET_HCI_RAW_DIRECTION)?1:0;
sys/netgraph7/bluetooth/socket/ng_btsocket_hci_raw.c
1498
bcopy(&filter, &pcb->filter,
sys/netgraph7/bluetooth/socket/ng_btsocket_hci_raw.c
1499
sizeof(pcb->filter));
sys/netgraph7/bluetooth/socket/ng_btsocket_hci_raw.c
1509
pcb->flags |= NG_BTSOCKET_HCI_RAW_DIRECTION;
sys/netgraph7/bluetooth/socket/ng_btsocket_hci_raw.c
1511
pcb->flags &= ~NG_BTSOCKET_HCI_RAW_DIRECTION;
sys/netgraph7/bluetooth/socket/ng_btsocket_hci_raw.c
1525
lockmgr(&pcb->pcb_lock, LK_RELEASE);
sys/netgraph7/bluetooth/socket/ng_btsocket_hci_raw.c
1539
ng_btsocket_hci_raw_pcb_p pcb = so2hci_raw_pcb(so);
sys/netgraph7/bluetooth/socket/ng_btsocket_hci_raw.c
1542
KASSERT(pcb != NULL, ("ng_btsocket_hci_raw_detach: pcb == NULL"));
sys/netgraph7/bluetooth/socket/ng_btsocket_hci_raw.c
1548
lockmgr(&pcb->pcb_lock, LK_EXCLUSIVE);
sys/netgraph7/bluetooth/socket/ng_btsocket_hci_raw.c
1550
LIST_REMOVE(pcb, next);
sys/netgraph7/bluetooth/socket/ng_btsocket_hci_raw.c
1552
lockmgr(&pcb->pcb_lock, LK_RELEASE);
sys/netgraph7/bluetooth/socket/ng_btsocket_hci_raw.c
1555
lockuninit(&pcb->pcb_lock);
sys/netgraph7/bluetooth/socket/ng_btsocket_hci_raw.c
1557
bzero(pcb, sizeof(*pcb));
sys/netgraph7/bluetooth/socket/ng_btsocket_hci_raw.c
1558
kfree(pcb, M_NETGRAPH_BTSOCKET_HCI_RAW);
sys/netgraph7/bluetooth/socket/ng_btsocket_hci_raw.c
1574
ng_btsocket_hci_raw_pcb_p pcb = so2hci_raw_pcb(so);
sys/netgraph7/bluetooth/socket/ng_btsocket_hci_raw.c
1577
if (pcb == NULL) {
sys/netgraph7/bluetooth/socket/ng_btsocket_hci_raw.c
1586
lockmgr(&pcb->pcb_lock, LK_EXCLUSIVE);
sys/netgraph7/bluetooth/socket/ng_btsocket_hci_raw.c
1588
lockmgr(&pcb->pcb_lock, LK_RELEASE);
sys/netgraph7/bluetooth/socket/ng_btsocket_hci_raw.c
1615
ng_btsocket_hci_raw_pcb_p pcb = so2hci_raw_pcb(so);
sys/netgraph7/bluetooth/socket/ng_btsocket_hci_raw.c
1623
if (pcb == NULL) {
sys/netgraph7/bluetooth/socket/ng_btsocket_hci_raw.c
1649
lockmgr(&pcb->pcb_lock, LK_EXCLUSIVE);
sys/netgraph7/bluetooth/socket/ng_btsocket_hci_raw.c
1651
error = ng_btsocket_hci_raw_filter(pcb, m, 0);
sys/netgraph7/bluetooth/socket/ng_btsocket_hci_raw.c
1653
lockmgr(&pcb->pcb_lock, LK_RELEASE);
sys/netgraph7/bluetooth/socket/ng_btsocket_hci_raw.c
1658
if (pcb->addr.hci_node[0] == 0) {
sys/netgraph7/bluetooth/socket/ng_btsocket_hci_raw.c
1659
lockmgr(&pcb->pcb_lock, LK_RELEASE);
sys/netgraph7/bluetooth/socket/ng_btsocket_hci_raw.c
1664
sa = (struct sockaddr *) &pcb->addr;
sys/netgraph7/bluetooth/socket/ng_btsocket_hci_raw.c
1669
lockmgr(&pcb->pcb_lock, LK_RELEASE);
sys/netgraph7/bluetooth/socket/ng_btsocket_hci_raw.c
1680
lockmgr(&pcb->pcb_lock, LK_RELEASE);
sys/netgraph7/bluetooth/socket/ng_btsocket_hci_raw.c
1704
ng_btsocket_hci_raw_pcb_p pcb = so2hci_raw_pcb(so);
sys/netgraph7/bluetooth/socket/ng_btsocket_hci_raw.c
1708
if (pcb == NULL) {
sys/netgraph7/bluetooth/socket/ng_btsocket_hci_raw.c
1721
lockmgr(&pcb->pcb_lock, LK_EXCLUSIVE);
sys/netgraph7/bluetooth/socket/ng_btsocket_hci_raw.c
1722
strlcpy(sa.hci_node, pcb->addr.hci_node, sizeof(sa.hci_node));
sys/netgraph7/bluetooth/socket/ng_btsocket_hci_raw.c
1723
lockmgr(&pcb->pcb_lock, LK_RELEASE);
sys/netgraph7/bluetooth/socket/ng_btsocket_hci_raw.c
401
ng_btsocket_hci_raw_send_sync_ngmsg(ng_btsocket_hci_raw_pcb_p pcb, char *path,
sys/netgraph7/bluetooth/socket/ng_btsocket_hci_raw.c
407
KKASSERT(lockowned(&pcb->pcb_lock) != 0);
sys/netgraph7/bluetooth/socket/ng_btsocket_hci_raw.c
414
pcb->token = msg->header.token;
sys/netgraph7/bluetooth/socket/ng_btsocket_hci_raw.c
415
pcb->msg = NULL;
sys/netgraph7/bluetooth/socket/ng_btsocket_hci_raw.c
419
pcb->token = 0;
sys/netgraph7/bluetooth/socket/ng_btsocket_hci_raw.c
423
error = lksleep(&pcb->msg, &pcb->pcb_lock, PCATCH, "hcictl",
sys/netgraph7/bluetooth/socket/ng_btsocket_hci_raw.c
425
pcb->token = 0;
sys/netgraph7/bluetooth/socket/ng_btsocket_hci_raw.c
430
if (pcb->msg != NULL && pcb->msg->header.cmd == cmd)
sys/netgraph7/bluetooth/socket/ng_btsocket_hci_raw.c
431
bcopy(pcb->msg->data, rsp, rsplen);
sys/netgraph7/bluetooth/socket/ng_btsocket_hci_raw.c
435
NG_FREE_MSG(pcb->msg); /* checks for != NULL */
sys/netgraph7/bluetooth/socket/ng_btsocket_hci_raw.c
445
ng_btsocket_hci_raw_savctl(ng_btsocket_hci_raw_pcb_p pcb, struct mbuf **ctl,
sys/netgraph7/bluetooth/socket/ng_btsocket_hci_raw.c
451
KKASSERT(lockowned(&pcb->pcb_lock) != 0);
sys/netgraph7/bluetooth/socket/ng_btsocket_hci_raw.c
453
if (pcb->flags & NG_BTSOCKET_HCI_RAW_DIRECTION) {
sys/netgraph7/bluetooth/socket/ng_btsocket_hci_raw.c
461
if (pcb->so->so_options & SO_TIMESTAMP) {
sys/netgraph7/bluetooth/socket/ng_btsocket_hci_raw.c
477
ng_btsocket_hci_raw_pcb_p pcb = NULL;
sys/netgraph7/bluetooth/socket/ng_btsocket_hci_raw.c
493
LIST_FOREACH(pcb, &ng_btsocket_hci_raw_sockets, next) {
sys/netgraph7/bluetooth/socket/ng_btsocket_hci_raw.c
495
lockmgr(&pcb->pcb_lock, LK_EXCLUSIVE);
sys/netgraph7/bluetooth/socket/ng_btsocket_hci_raw.c
502
if (pcb->addr.hci_node[0] != 0 &&
sys/netgraph7/bluetooth/socket/ng_btsocket_hci_raw.c
503
strcmp(sa->hci_node, pcb->addr.hci_node) != 0)
sys/netgraph7/bluetooth/socket/ng_btsocket_hci_raw.c
511
if (ng_btsocket_hci_raw_filter(pcb, m0, 1) != 0)
sys/netgraph7/bluetooth/socket/ng_btsocket_hci_raw.c
524
ng_btsocket_hci_raw_savctl(pcb, &ctl, m);
sys/netgraph7/bluetooth/socket/ng_btsocket_hci_raw.c
526
if (sbappendaddr(&pcb->so->so_rcv.sb,
sys/netgraph7/bluetooth/socket/ng_btsocket_hci_raw.c
528
sorwakeup(pcb->so);
sys/netgraph7/bluetooth/socket/ng_btsocket_hci_raw.c
538
lockmgr(&pcb->pcb_lock, LK_RELEASE);
sys/netgraph7/bluetooth/socket/ng_btsocket_hci_raw.c
554
ng_btsocket_hci_raw_pcb_p pcb = NULL;
sys/netgraph7/bluetooth/socket/ng_btsocket_hci_raw.c
558
LIST_FOREACH(pcb, &ng_btsocket_hci_raw_sockets, next) {
sys/netgraph7/bluetooth/socket/ng_btsocket_hci_raw.c
559
lockmgr(&pcb->pcb_lock, LK_EXCLUSIVE);
sys/netgraph7/bluetooth/socket/ng_btsocket_hci_raw.c
561
if (msg->header.token == pcb->token) {
sys/netgraph7/bluetooth/socket/ng_btsocket_hci_raw.c
562
pcb->msg = msg;
sys/netgraph7/bluetooth/socket/ng_btsocket_hci_raw.c
563
wakeup(&pcb->msg);
sys/netgraph7/bluetooth/socket/ng_btsocket_hci_raw.c
565
lockmgr(&pcb->pcb_lock, LK_RELEASE);
sys/netgraph7/bluetooth/socket/ng_btsocket_hci_raw.c
571
lockmgr(&pcb->pcb_lock, LK_RELEASE);
sys/netgraph7/bluetooth/socket/ng_btsocket_hci_raw.c
670
ng_btsocket_hci_raw_filter(ng_btsocket_hci_raw_pcb_p pcb, struct mbuf *m, int d)
sys/netgraph7/bluetooth/socket/ng_btsocket_hci_raw.c
674
KKASSERT(lockowned(&pcb->pcb_lock) != 0);
sys/netgraph7/bluetooth/socket/ng_btsocket_hci_raw.c
678
if (!(pcb->flags & NG_BTSOCKET_HCI_RAW_PRIVILEGED)) {
sys/netgraph7/bluetooth/socket/ng_btsocket_hci_raw.c
687
if (d && !bit_test(pcb->filter.packet_mask, NG_HCI_CMD_PKT - 1))
sys/netgraph7/bluetooth/socket/ng_btsocket_hci_raw.c
693
if (!(pcb->flags & NG_BTSOCKET_HCI_RAW_PRIVILEGED) ||
sys/netgraph7/bluetooth/socket/ng_btsocket_hci_raw.c
694
!bit_test(pcb->filter.packet_mask, type - 1) ||
sys/netgraph7/bluetooth/socket/ng_btsocket_hci_raw.c
705
if (!(pcb->flags & NG_BTSOCKET_HCI_RAW_PRIVILEGED))
sys/netgraph7/bluetooth/socket/ng_btsocket_hci_raw.c
709
if (!bit_test(pcb->filter.event_mask, event))
sys/netgraph7/bluetooth/socket/ng_btsocket_hci_raw.c
900
ng_btsocket_hci_raw_pcb_p pcb = so2hci_raw_pcb(so);
sys/netgraph7/bluetooth/socket/ng_btsocket_hci_raw.c
903
if (pcb != NULL) {
sys/netgraph7/bluetooth/socket/ng_btsocket_hci_raw.c
926
pcb = kmalloc(sizeof(*pcb), M_NETGRAPH_BTSOCKET_HCI_RAW,
sys/netgraph7/bluetooth/socket/ng_btsocket_hci_raw.c
928
if (pcb == NULL) {
sys/netgraph7/bluetooth/socket/ng_btsocket_hci_raw.c
933
so->so_pcb = (caddr_t) pcb;
sys/netgraph7/bluetooth/socket/ng_btsocket_hci_raw.c
934
pcb->so = so;
sys/netgraph7/bluetooth/socket/ng_btsocket_hci_raw.c
938
pcb->flags |= NG_BTSOCKET_HCI_RAW_PRIVILEGED;
sys/netgraph7/bluetooth/socket/ng_btsocket_hci_raw.c
945
bit_set(pcb->filter.event_mask, NG_HCI_EVENT_COMMAND_COMPL - 1);
sys/netgraph7/bluetooth/socket/ng_btsocket_hci_raw.c
946
bit_set(pcb->filter.event_mask, NG_HCI_EVENT_COMMAND_STATUS - 1);
sys/netgraph7/bluetooth/socket/ng_btsocket_hci_raw.c
948
lockinit(&pcb->pcb_lock, "btsocks_hci_raw_pcb_lock", 0, 0);
sys/netgraph7/bluetooth/socket/ng_btsocket_hci_raw.c
951
LIST_INSERT_HEAD(&ng_btsocket_hci_raw_sockets, pcb, next);
sys/netgraph7/bluetooth/socket/ng_btsocket_hci_raw.c
967
ng_btsocket_hci_raw_pcb_p pcb = so2hci_raw_pcb(so);
sys/netgraph7/bluetooth/socket/ng_btsocket_hci_raw.c
971
if (pcb == NULL) {
sys/netgraph7/bluetooth/socket/ng_btsocket_hci_raw.c
997
lockmgr(&pcb->pcb_lock, LK_EXCLUSIVE);
sys/netgraph7/bluetooth/socket/ng_btsocket_hci_raw.c
998
bcopy(sa, &pcb->addr, sizeof(pcb->addr));
sys/netgraph7/bluetooth/socket/ng_btsocket_hci_raw.c
999
lockmgr(&pcb->pcb_lock, LK_RELEASE);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
1000
pcb->psm, pcb->cid, op->result, pcb->state);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
1002
ng_btsocket_l2cap_untimeout(pcb);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
1004
pcb->state = NG_BTSOCKET_L2CAP_CLOSED;
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
1005
soisdisconnected(pcb->so);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
1008
lockmgr(&pcb->pcb_lock, LK_RELEASE);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
1023
ng_btsocket_l2cap_pcb_t *pcb = NULL;
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
1034
pcb = ng_btsocket_l2cap_pcb_by_cid(&rt->src, ip->lcid);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
1035
if (pcb == NULL) {
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
1046
lockmgr(&pcb->pcb_lock, LK_EXCLUSIVE);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
1052
pcb->src.b[5], pcb->src.b[4], pcb->src.b[3],
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
1053
pcb->src.b[2], pcb->src.b[1], pcb->src.b[0],
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
1054
pcb->dst.b[5], pcb->dst.b[4], pcb->dst.b[3],
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
1055
pcb->dst.b[2], pcb->dst.b[1], pcb->dst.b[0],
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
1056
pcb->psm, pcb->cid, pcb->state);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
1058
if (pcb->flags & NG_BTSOCKET_L2CAP_TIMO)
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
1059
ng_btsocket_l2cap_untimeout(pcb);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
1061
pcb->state = NG_BTSOCKET_L2CAP_CLOSED;
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
1062
soisdisconnected(pcb->so);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
1064
lockmgr(&pcb->pcb_lock, LK_RELEASE);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
1079
ng_btsocket_l2cap_pcb_t *pcb = NULL;
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
1090
pcb = ng_btsocket_l2cap_pcb_by_token(msg->header.token);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
1091
if (pcb == NULL) {
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
1096
lockmgr(&pcb->pcb_lock, LK_EXCLUSIVE);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
1102
pcb->src.b[5], pcb->src.b[4], pcb->src.b[3],
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
1103
pcb->src.b[2], pcb->src.b[1], pcb->src.b[0],
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
1104
pcb->dst.b[5], pcb->dst.b[4], pcb->dst.b[3],
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
1105
pcb->dst.b[2], pcb->dst.b[1], pcb->dst.b[0],
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
1106
pcb->psm, pcb->cid, op->result, op->length,
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
1107
pcb->state);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
1109
if (pcb->state != NG_BTSOCKET_L2CAP_OPEN) {
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
1110
lockmgr(&pcb->pcb_lock, LK_RELEASE);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
1116
ng_btsocket_l2cap_untimeout(pcb);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
1122
sbdroprecord(&pcb->so->so_snd.sb);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
1123
if (pcb->so->so_snd.sb.sb_cc > 0) {
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
1124
if (ng_btsocket_l2cap_send2(pcb) == 0)
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
1125
ng_btsocket_l2cap_timeout(pcb);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
1127
sbdroprecord(&pcb->so->so_snd.sb); /* XXX */
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
1135
pcb->so->so_error = ng_btsocket_l2cap_result2errno(op->result);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
1136
sowwakeup(pcb->so);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
1138
lockmgr(&pcb->pcb_lock, LK_RELEASE);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
1149
ng_btsocket_l2cap_send_l2ca_con_req(ng_btsocket_l2cap_pcb_p pcb)
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
1155
KKASSERT(lockowned(&pcb->pcb_lock) != 0);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
1157
if (pcb->rt == NULL ||
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
1158
pcb->rt->hook == NULL || NG_HOOK_NOT_VALID(pcb->rt->hook))
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
1166
msg->header.token = pcb->token;
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
1169
bcopy(&pcb->dst, &ip->bdaddr, sizeof(ip->bdaddr));
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
1170
ip->psm = pcb->psm;
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
1172
NG_SEND_MSG_HOOK(error, ng_btsocket_l2cap_node, msg,pcb->rt->hook, 0);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
1217
ng_btsocket_l2cap_send_l2ca_cfg_req(ng_btsocket_l2cap_pcb_p pcb)
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
1223
KKASSERT(lockowned(&pcb->pcb_lock) != 0);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
1225
if (pcb->rt == NULL ||
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
1226
pcb->rt->hook == NULL || NG_HOOK_NOT_VALID(pcb->rt->hook))
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
1234
msg->header.token = pcb->token;
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
1237
ip->lcid = pcb->cid;
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
1238
ip->imtu = pcb->imtu;
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
1239
bcopy(&pcb->oflow, &ip->oflow, sizeof(ip->oflow));
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
1240
ip->flush_timo = pcb->flush_timo;
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
1241
ip->link_timo = pcb->link_timo;
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
1243
NG_SEND_MSG_HOOK(error, ng_btsocket_l2cap_node, msg,pcb->rt->hook, 0);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
1253
ng_btsocket_l2cap_send_l2ca_cfg_rsp(ng_btsocket_l2cap_pcb_p pcb)
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
1259
KKASSERT(lockowned(&pcb->pcb_lock) != 0);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
1261
if (pcb->rt == NULL ||
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
1262
pcb->rt->hook == NULL || NG_HOOK_NOT_VALID(pcb->rt->hook))
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
1270
msg->header.token = pcb->token;
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
1273
ip->lcid = pcb->cid;
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
1274
ip->omtu = pcb->omtu;
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
1275
bcopy(&pcb->iflow, &ip->iflow, sizeof(ip->iflow));
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
1277
NG_SEND_MSG_HOOK(error, ng_btsocket_l2cap_node, msg, pcb->rt->hook, 0);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
1288
ng_btsocket_l2cap_pcb_p pcb)
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
1294
KKASSERT(lockowned(&pcb->pcb_lock) != 0);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
1296
if (pcb->rt == NULL ||
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
1297
pcb->rt->hook == NULL || NG_HOOK_NOT_VALID(pcb->rt->hook))
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
1308
ip->lcid = pcb->cid;
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
1310
NG_SEND_MSG_HOOK(error, ng_btsocket_l2cap_node, msg,pcb->rt->hook, 0);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
1330
ng_btsocket_l2cap_pcb_t *pcb = NULL;
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
1394
pcb = ng_btsocket_l2cap_pcb_by_cid(&rt->src, hdr->dcid);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
1395
if (pcb == NULL) {
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
1400
lockmgr(&pcb->pcb_lock, LK_EXCLUSIVE);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
1402
if (pcb->state != NG_BTSOCKET_L2CAP_OPEN) {
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
1408
hdr->dcid, pcb->state);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
1410
lockmgr(&pcb->pcb_lock, LK_RELEASE);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
1416
if (hdr->length > pcb->imtu) {
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
1423
hdr->dcid, hdr->length, pcb->imtu);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
1425
lockmgr(&pcb->pcb_lock, LK_RELEASE);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
1431
if (m->m_pkthdr.len > ssb_space(&pcb->so->so_rcv)) {
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
1447
ssb_space(&pcb->so->so_rcv));
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
1449
lockmgr(&pcb->pcb_lock, LK_RELEASE);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
1455
sbappendrecord(&pcb->so->so_rcv.sb, m);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
1458
sorwakeup(pcb->so);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
1460
lockmgr(&pcb->pcb_lock, LK_RELEASE);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
1509
LIST_FOREACH(pcb, &ng_btsocket_l2cap_sockets, next) {
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
1512
lockmgr(&pcb->pcb_lock, LK_EXCLUSIVE);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
1514
if (bcmp(&rt->src, &pcb->src, sizeof(pcb->src)) != 0 ||
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
1515
pcb->psm != clt_hdr->psm ||
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
1516
pcb->state != NG_BTSOCKET_L2CAP_OPEN ||
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
1517
(pcb->so->so_options & SO_BROADCAST) == 0 ||
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
1518
m->m_pkthdr.len > ssb_space(&pcb->so->so_rcv))
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
1529
sbappendrecord(&pcb->so->so_rcv.sb, copy);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
1530
sorwakeup(pcb->so);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
1533
lockmgr(&pcb->pcb_lock, LK_RELEASE);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
1743
ng_btsocket_l2cap_pcb_p pcb = NULL, pcb_next = NULL;
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
1753
for (pcb = LIST_FIRST(&ng_btsocket_l2cap_sockets); pcb != NULL; ) {
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
1754
lockmgr(&pcb->pcb_lock, LK_EXCLUSIVE);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
1755
pcb_next = LIST_NEXT(pcb, next);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
1757
if (pcb->rt != NULL &&
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
1758
pcb->rt->hook != NULL && NG_HOOK_NOT_VALID(pcb->rt->hook)) {
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
1759
if (pcb->flags & NG_BTSOCKET_L2CAP_TIMO)
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
1760
ng_btsocket_l2cap_untimeout(pcb);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
1762
pcb->so->so_error = ENETDOWN;
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
1763
pcb->state = NG_BTSOCKET_L2CAP_CLOSED;
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
1764
soisdisconnected(pcb->so);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
1766
pcb->token = 0;
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
1767
pcb->cid = 0;
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
1768
pcb->rt = NULL;
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
1771
lockmgr(&pcb->pcb_lock, LK_RELEASE);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
1772
pcb = pcb_next;
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
1918
ng_btsocket_l2cap_pcb_p pcb = so2l2cap_pcb(so);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
1939
if (pcb != NULL) {
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
1953
pcb = kmalloc(sizeof(*pcb), M_NETGRAPH_BTSOCKET_L2CAP,
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
1955
if (pcb == NULL) {
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
1961
so->so_pcb = (caddr_t) pcb;
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
1962
pcb->so = so;
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
1963
pcb->state = NG_BTSOCKET_L2CAP_CLOSED;
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
1966
pcb->imtu = pcb->omtu = NG_L2CAP_MTU_DEFAULT;
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
1969
pcb->iflow.flags = 0x0;
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
1970
pcb->iflow.service_type = NG_HCI_SERVICE_TYPE_BEST_EFFORT;
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
1971
pcb->iflow.token_rate = 0xffffffff; /* maximum */
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
1972
pcb->iflow.token_bucket_size = 0xffffffff; /* maximum */
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
1973
pcb->iflow.peak_bandwidth = 0x00000000; /* maximum */
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
1974
pcb->iflow.latency = 0xffffffff; /* don't care */
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
1975
pcb->iflow.delay_variation = 0xffffffff; /* don't care */
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
1977
bcopy(&pcb->iflow, &pcb->oflow, sizeof(pcb->oflow));
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
1979
pcb->flush_timo = NG_L2CAP_FLUSH_TIMO_DEFAULT;
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
1980
pcb->link_timo = NG_L2CAP_LINK_TIMO_DEFAULT;
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
1982
callout_init_mp(&pcb->timo);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
1991
lockinit(&pcb->pcb_lock, "btsocks_l2cap_pcb_lock", 0, LK_CANRECURSE);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
2021
pcb->token = token;
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
2023
LIST_INSERT_HEAD(&ng_btsocket_l2cap_sockets, pcb, next);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
2041
ng_btsocket_l2cap_pcb_t *pcb = NULL;
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
2076
LIST_FOREACH(pcb, &ng_btsocket_l2cap_sockets, next)
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
2077
if (psm != 0 && psm == pcb->psm &&
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
2078
bcmp(&pcb->src, &sa->l2cap_bdaddr, sizeof(bdaddr_t)) == 0)
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
2081
if (pcb == NULL) {
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
2083
pcb = so2l2cap_pcb(so);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
2084
if (pcb != NULL) {
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
2085
bcopy(&sa->l2cap_bdaddr, &pcb->src, sizeof(pcb->src));
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
2086
pcb->psm = psm;
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
2107
ng_btsocket_l2cap_pcb_t *pcb = so2l2cap_pcb(so);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
2113
if (pcb == NULL) {
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
2121
if (pcb->state == NG_BTSOCKET_L2CAP_CONNECTING) {
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
2144
if (pcb->psm != 0 && pcb->psm != le16toh(sa->l2cap_psm)) {
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
2158
lockmgr(&pcb->pcb_lock, LK_EXCLUSIVE);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
2161
bcopy(&sa->l2cap_bdaddr, &pcb->dst, sizeof(pcb->dst));
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
2162
pcb->psm = le16toh(sa->l2cap_psm);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
2164
pcb->rt = NULL;
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
2165
have_src = bcmp(&pcb->src, NG_HCI_BDADDR_ANY, sizeof(pcb->src));
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
2173
if (bcmp(&pcb->src, &rt->src, sizeof(rt->src)) == 0)
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
2176
if (bcmp(&pcb->dst, &rt->src, sizeof(rt->src)) != 0)
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
2182
pcb->rt = rt;
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
2185
bcopy(&rt->src, &pcb->src, sizeof(pcb->src));
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
2194
error = ng_btsocket_l2cap_send_l2ca_con_req(pcb);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
2196
pcb->flags |= NG_BTSOCKET_L2CAP_CLIENT;
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
2197
pcb->state = NG_BTSOCKET_L2CAP_CONNECTING;
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
2198
soisconnecting(pcb->so);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
2200
ng_btsocket_l2cap_timeout(pcb);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
2204
lockmgr(&pcb->pcb_lock, LK_RELEASE);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
2231
ng_btsocket_l2cap_pcb_p pcb = so2l2cap_pcb(so);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
2235
if (pcb == NULL) {
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
2247
lockmgr(&pcb->pcb_lock, LK_EXCLUSIVE);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
2253
error = sooptcopyout(sopt, &pcb->imtu,
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
2254
sizeof(pcb->imtu));
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
2258
error = sooptcopyout(sopt, &pcb->omtu,
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
2259
sizeof(pcb->omtu));
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
2263
error = sooptcopyout(sopt, &pcb->iflow,
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
2264
sizeof(pcb->iflow));
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
2268
error = sooptcopyout(sopt, &pcb->oflow,
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
2269
sizeof(pcb->oflow));
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
2273
error = sooptcopyout(sopt, &pcb->flush_timo,
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
2274
sizeof(pcb->flush_timo));
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
2292
if (pcb->state != NG_BTSOCKET_L2CAP_CLOSED) {
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
2301
pcb->imtu = v.mtu;
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
2307
bcopy(&v.flow, &pcb->oflow, sizeof(pcb->oflow));
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
2314
pcb->flush_timo = v.flush_timo;
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
2328
lockmgr(&pcb->pcb_lock, LK_RELEASE);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
2342
ng_btsocket_l2cap_pcb_p pcb = so2l2cap_pcb(so);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
2345
KASSERT(pcb != NULL, ("ng_btsocket_l2cap_detach: pcb == NULL"));
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
2351
lockmgr(&pcb->pcb_lock, LK_EXCLUSIVE);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
2354
if (pcb->flags & NG_BTSOCKET_L2CAP_TIMO)
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
2355
ng_btsocket_l2cap_untimeout(pcb);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
2357
if (pcb->state != NG_BTSOCKET_L2CAP_CLOSED &&
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
2358
pcb->state != NG_BTSOCKET_L2CAP_DISCONNECTING)
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
2360
ng_btsocket_l2cap_send_l2ca_discon_req(0, pcb);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
2362
pcb->state = NG_BTSOCKET_L2CAP_CLOSED;
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
2364
LIST_REMOVE(pcb, next);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
2366
lockmgr(&pcb->pcb_lock, LK_RELEASE);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
2369
lockuninit(&pcb->pcb_lock);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
2370
bzero(pcb, sizeof(*pcb));
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
2371
kfree(pcb, M_NETGRAPH_BTSOCKET_L2CAP);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
2388
ng_btsocket_l2cap_pcb_p pcb = so2l2cap_pcb(so);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
2391
if (pcb == NULL) {
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
2400
lockmgr(&pcb->pcb_lock, LK_EXCLUSIVE);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
2402
if (pcb->state == NG_BTSOCKET_L2CAP_DISCONNECTING) {
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
2403
lockmgr(&pcb->pcb_lock, LK_RELEASE);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
2408
if (pcb->state != NG_BTSOCKET_L2CAP_CLOSED) {
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
2410
if (pcb->flags & NG_BTSOCKET_L2CAP_TIMO)
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
2411
ng_btsocket_l2cap_untimeout(pcb);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
2413
error = ng_btsocket_l2cap_send_l2ca_discon_req(pcb->token, pcb);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
2415
pcb->state = NG_BTSOCKET_L2CAP_DISCONNECTING;
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
2418
ng_btsocket_l2cap_timeout(pcb);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
2424
lockmgr(&pcb->pcb_lock, LK_RELEASE);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
2440
ng_btsocket_l2cap_pcb_p pcb = so2l2cap_pcb(so);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
2448
if (pcb == NULL) {
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
2456
if (pcb->psm == 0) {
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
2475
ng_btsocket_l2cap_pcb_p pcb = so2l2cap_pcb(so);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
2479
if (pcb == NULL) {
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
2488
bcopy(&pcb->dst, &sa.l2cap_bdaddr, sizeof(sa.l2cap_bdaddr));
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
2489
sa.l2cap_psm = htole16(pcb->psm);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
2512
ng_btsocket_l2cap_pcb_t *pcb = so2l2cap_pcb(so);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
2521
if (pcb == NULL || m == NULL || control != NULL) {
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
2526
lockmgr(&pcb->pcb_lock, LK_EXCLUSIVE);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
2529
if (pcb->state != NG_BTSOCKET_L2CAP_OPEN) {
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
2530
lockmgr(&pcb->pcb_lock, LK_RELEASE);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
2536
if (pcb->rt == NULL ||
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
2537
pcb->rt->hook == NULL || NG_HOOK_NOT_VALID(pcb->rt->hook)) {
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
2538
lockmgr(&pcb->pcb_lock, LK_RELEASE);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
2544
if (m->m_pkthdr.len > pcb->omtu) {
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
2546
"%s: Packet too big, len=%d, omtu=%d\n", __func__, m->m_pkthdr.len, pcb->omtu);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
2548
lockmgr(&pcb->pcb_lock, LK_RELEASE);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
2560
sbappendrecord(&pcb->so->so_snd.sb, m);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
2563
if (!(pcb->flags & NG_BTSOCKET_L2CAP_TIMO)) {
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
2564
error = ng_btsocket_l2cap_send2(pcb);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
2566
ng_btsocket_l2cap_timeout(pcb);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
2568
sbdroprecord(&pcb->so->so_snd.sb); /* XXX */
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
2571
lockmgr(&pcb->pcb_lock, LK_RELEASE);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
2584
ng_btsocket_l2cap_send2(ng_btsocket_l2cap_pcb_p pcb)
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
2590
KKASSERT(lockowned(&pcb->pcb_lock) != 0);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
2592
if (pcb->so->so_snd.sb.sb_cc == 0)
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
2595
m = m_dup(pcb->so->so_snd.sb.sb_mb, M_NOWAIT);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
2613
hdr->token = pcb->token;
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
2615
hdr->lcid = pcb->cid;
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
2620
hdr->token, pcb->state);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
2627
NG_SEND_DATA_ONLY(error, pcb->rt->hook, m);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
2641
ng_btsocket_l2cap_pcb_p pcb = so2l2cap_pcb(so);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
2645
if (pcb == NULL) {
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
2654
bcopy(&pcb->src, &sa.l2cap_bdaddr, sizeof(sa.l2cap_bdaddr));
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
2655
sa.l2cap_psm = htole16(pcb->psm);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
2747
ng_btsocket_l2cap_timeout(ng_btsocket_l2cap_pcb_p pcb)
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
2749
KKASSERT(lockowned(&pcb->pcb_lock) != 0);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
2751
if (!(pcb->flags & NG_BTSOCKET_L2CAP_TIMO)) {
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
2752
pcb->flags |= NG_BTSOCKET_L2CAP_TIMO;
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
2753
callout_reset(&pcb->timo, bluetooth_l2cap_ertx_timeout(),
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
2754
ng_btsocket_l2cap_process_timeout, pcb);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
2765
ng_btsocket_l2cap_untimeout(ng_btsocket_l2cap_pcb_p pcb)
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
2767
KKASSERT(lockowned(&pcb->pcb_lock) != 0);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
2769
if (pcb->flags & NG_BTSOCKET_L2CAP_TIMO) {
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
2770
callout_stop(&pcb->timo);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
2771
pcb->flags &= ~NG_BTSOCKET_L2CAP_TIMO;
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
2784
ng_btsocket_l2cap_pcb_p pcb = (ng_btsocket_l2cap_pcb_p) xpcb;
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
2786
lockmgr(&pcb->pcb_lock, LK_EXCLUSIVE);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
2788
pcb->flags &= ~NG_BTSOCKET_L2CAP_TIMO;
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
2789
pcb->so->so_error = ETIMEDOUT;
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
2791
switch (pcb->state) {
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
2795
if (pcb->cid != 0)
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
2796
ng_btsocket_l2cap_send_l2ca_discon_req(0, pcb);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
2799
pcb->state = NG_BTSOCKET_L2CAP_CLOSED;
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
2800
soisdisconnected(pcb->so);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
2805
sbdroprecord(&pcb->so->so_snd.sb);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
2806
sowwakeup(pcb->so);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
2811
pcb->state = NG_BTSOCKET_L2CAP_CLOSED;
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
2812
soisdisconnected(pcb->so);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
2817
"%s: Invalid socket state=%d\n", __func__, pcb->state);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
2821
lockmgr(&pcb->pcb_lock, LK_RELEASE);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
395
ng_btsocket_l2cap_pcb_t *pcb = NULL;
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
406
pcb = ng_btsocket_l2cap_pcb_by_token(msg->header.token);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
407
if (pcb == NULL) {
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
412
lockmgr(&pcb->pcb_lock, LK_EXCLUSIVE);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
418
pcb->src.b[5], pcb->src.b[4], pcb->src.b[3],
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
419
pcb->src.b[2], pcb->src.b[1], pcb->src.b[0],
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
420
pcb->dst.b[5], pcb->dst.b[4], pcb->dst.b[3],
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
421
pcb->dst.b[2], pcb->dst.b[1], pcb->dst.b[0],
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
422
pcb->psm, op->lcid, op->result, op->status,
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
423
pcb->state);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
425
if (pcb->state != NG_BTSOCKET_L2CAP_CONNECTING) {
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
426
lockmgr(&pcb->pcb_lock, LK_RELEASE);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
432
ng_btsocket_l2cap_untimeout(pcb);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
435
ng_btsocket_l2cap_timeout(pcb);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
436
lockmgr(&pcb->pcb_lock, LK_RELEASE);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
449
pcb->cid = op->lcid;
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
451
error = ng_btsocket_l2cap_send_l2ca_cfg_req(pcb);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
454
ng_btsocket_l2cap_send_l2ca_discon_req(0, pcb);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
457
pcb->state = NG_BTSOCKET_L2CAP_CLOSED;
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
458
soisdisconnected(pcb->so);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
460
pcb->cfg_state = NG_BTSOCKET_L2CAP_CFG_IN_SENT;
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
461
pcb->state = NG_BTSOCKET_L2CAP_CONFIGURING;
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
463
ng_btsocket_l2cap_timeout(pcb);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
472
pcb->so->so_error = ng_btsocket_l2cap_result2errno(op->result);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
473
pcb->state = NG_BTSOCKET_L2CAP_CLOSED;
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
474
soisdisconnected(pcb->so);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
477
lockmgr(&pcb->pcb_lock, LK_RELEASE);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
492
ng_btsocket_l2cap_pcb_t *pcb = NULL;
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
502
pcb = ng_btsocket_l2cap_pcb_by_token(msg->header.token);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
503
if (pcb == NULL) {
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
508
lockmgr(&pcb->pcb_lock, LK_EXCLUSIVE);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
514
pcb->src.b[5], pcb->src.b[4], pcb->src.b[3],
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
515
pcb->src.b[2], pcb->src.b[1], pcb->src.b[0],
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
516
pcb->dst.b[5], pcb->dst.b[4], pcb->dst.b[3],
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
517
pcb->dst.b[2], pcb->dst.b[1], pcb->dst.b[0],
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
518
pcb->psm, pcb->cid, op->result, pcb->state);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
520
if (pcb->state != NG_BTSOCKET_L2CAP_CONNECTING) {
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
521
lockmgr(&pcb->pcb_lock, LK_RELEASE);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
527
ng_btsocket_l2cap_untimeout(pcb);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
532
pcb->so->so_error = ng_btsocket_l2cap_result2errno(op->result);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
533
pcb->state = NG_BTSOCKET_L2CAP_CLOSED;
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
534
soisdisconnected(pcb->so);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
537
pcb->cfg_state = 0;
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
538
pcb->state = NG_BTSOCKET_L2CAP_CONFIGURING;
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
539
ng_btsocket_l2cap_timeout(pcb);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
542
lockmgr(&pcb->pcb_lock, LK_RELEASE);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
559
ng_btsocket_l2cap_pcb_t *pcb = NULL, *pcb1 = NULL;
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
581
pcb = ng_btsocket_l2cap_pcb_by_addr(&rt->src, ip->psm);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
582
if (pcb != NULL) {
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
585
lockmgr(&pcb->pcb_lock, LK_EXCLUSIVE);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
592
if (pcb->so->so_qlen <= pcb->so->so_qlimit)
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
593
so1 = sonewconn(pcb->so, 0);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
613
if (bcmp(&pcb->src, NG_HCI_BDADDR_ANY, sizeof(pcb->src)) != 0)
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
614
bcopy(&pcb->src, &pcb1->src, sizeof(pcb1->src));
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
626
pcb1->imtu = pcb->imtu;
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
627
bcopy(&pcb->oflow, &pcb1->oflow, sizeof(pcb1->oflow));
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
628
pcb1->flush_timo = pcb->flush_timo;
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
653
if (pcb != NULL)
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
654
lockmgr(&pcb->pcb_lock, LK_RELEASE);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
670
ng_btsocket_l2cap_pcb_p pcb = NULL;
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
685
pcb = ng_btsocket_l2cap_pcb_by_token(msg->header.token);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
686
if (pcb == NULL) {
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
697
lockmgr(&pcb->pcb_lock, LK_EXCLUSIVE);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
704
pcb->src.b[5], pcb->src.b[4], pcb->src.b[3],
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
705
pcb->src.b[2], pcb->src.b[1], pcb->src.b[0],
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
706
pcb->dst.b[5], pcb->dst.b[4], pcb->dst.b[3],
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
707
pcb->dst.b[2], pcb->dst.b[1], pcb->dst.b[0],
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
708
pcb->psm, pcb->cid, op->result, pcb->state, pcb->cfg_state);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
710
if (pcb->state != NG_BTSOCKET_L2CAP_CONFIGURING) {
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
711
lockmgr(&pcb->pcb_lock, LK_RELEASE);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
725
pcb->imtu = op->imtu;
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
726
bcopy(&op->oflow, &pcb->oflow, sizeof(pcb->oflow));
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
727
pcb->flush_timo = op->flush_timo;
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
735
pcb->cfg_state &= ~NG_BTSOCKET_L2CAP_CFG_IN_SENT;
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
736
pcb->cfg_state |= NG_BTSOCKET_L2CAP_CFG_IN;
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
738
if (pcb->cfg_state == NG_BTSOCKET_L2CAP_CFG_BOTH) {
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
740
ng_btsocket_l2cap_untimeout(pcb);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
741
pcb->state = NG_BTSOCKET_L2CAP_OPEN;
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
742
soisconnected(pcb->so);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
751
ng_btsocket_l2cap_untimeout(pcb);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
756
pcb->so->so_error = EINVAL;
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
760
pcb->so->so_error = ECONNRESET;
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
765
ng_btsocket_l2cap_send_l2ca_discon_req(0, pcb);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
768
pcb->state = NG_BTSOCKET_L2CAP_CLOSED;
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
769
soisdisconnected(pcb->so);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
772
lockmgr(&pcb->pcb_lock, LK_RELEASE);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
787
ng_btsocket_l2cap_pcb_t *pcb = NULL;
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
798
pcb = ng_btsocket_l2cap_pcb_by_token(msg->header.token);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
799
if (pcb == NULL) {
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
804
lockmgr(&pcb->pcb_lock, LK_EXCLUSIVE);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
811
pcb->src.b[5], pcb->src.b[4], pcb->src.b[3],
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
812
pcb->src.b[2], pcb->src.b[1], pcb->src.b[0],
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
813
pcb->dst.b[5], pcb->dst.b[4], pcb->dst.b[3],
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
814
pcb->dst.b[2], pcb->dst.b[1], pcb->dst.b[0],
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
815
pcb->psm, pcb->cid, op->result, pcb->state, pcb->cfg_state);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
817
if (pcb->state != NG_BTSOCKET_L2CAP_CONFIGURING) {
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
818
lockmgr(&pcb->pcb_lock, LK_RELEASE);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
833
pcb->cfg_state &= ~NG_BTSOCKET_L2CAP_CFG_OUT_SENT;
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
834
pcb->cfg_state |= NG_BTSOCKET_L2CAP_CFG_OUT;
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
836
if (pcb->cfg_state == NG_BTSOCKET_L2CAP_CFG_BOTH) {
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
838
ng_btsocket_l2cap_untimeout(pcb);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
839
pcb->state = NG_BTSOCKET_L2CAP_OPEN;
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
840
soisconnected(pcb->so);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
842
if (!(pcb->cfg_state & NG_BTSOCKET_L2CAP_CFG_IN_SENT)) {
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
844
error = ng_btsocket_l2cap_send_l2ca_cfg_req(pcb);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
848
pcb->cfg_state |= NG_BTSOCKET_L2CAP_CFG_IN_SENT;
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
852
lockmgr(&pcb->pcb_lock, LK_RELEASE);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
858
ng_btsocket_l2cap_untimeout(pcb);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
861
ng_btsocket_l2cap_send_l2ca_discon_req(0, pcb);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
864
pcb->state = NG_BTSOCKET_L2CAP_CLOSED;
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
865
soisdisconnected(pcb->so);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
867
lockmgr(&pcb->pcb_lock, LK_RELEASE);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
882
ng_btsocket_l2cap_pcb_t *pcb = NULL;
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
893
pcb = ng_btsocket_l2cap_pcb_by_cid(&rt->src, ip->lcid);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
894
if (pcb == NULL) {
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
899
lockmgr(&pcb->pcb_lock, LK_EXCLUSIVE);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
905
pcb->src.b[5], pcb->src.b[4], pcb->src.b[3],
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
906
pcb->src.b[2], pcb->src.b[1], pcb->src.b[0],
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
907
pcb->dst.b[5], pcb->dst.b[4], pcb->dst.b[3],
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
908
pcb->dst.b[2], pcb->dst.b[1], pcb->dst.b[0],
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
909
pcb->psm, pcb->cid, pcb->state, pcb->cfg_state);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
912
if (pcb->state != NG_BTSOCKET_L2CAP_CONFIGURING) {
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
913
lockmgr(&pcb->pcb_lock, LK_RELEASE);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
925
pcb->omtu = ip->omtu;
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
926
bcopy(&ip->iflow, &pcb->iflow, sizeof(pcb->iflow));
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
927
pcb->flush_timo = ip->flush_timo;
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
934
if (!(pcb->cfg_state & NG_BTSOCKET_L2CAP_CFG_OUT_SENT)) {
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
935
error = ng_btsocket_l2cap_send_l2ca_cfg_rsp(pcb);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
937
ng_btsocket_l2cap_untimeout(pcb);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
939
pcb->so->so_error = error;
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
942
ng_btsocket_l2cap_send_l2ca_discon_req(0, pcb);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
945
pcb->state = NG_BTSOCKET_L2CAP_CLOSED;
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
946
soisdisconnected(pcb->so);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
948
pcb->cfg_state |= NG_BTSOCKET_L2CAP_CFG_OUT_SENT;
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
951
lockmgr(&pcb->pcb_lock, LK_RELEASE);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
966
ng_btsocket_l2cap_pcb_t *pcb = NULL;
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
982
pcb = ng_btsocket_l2cap_pcb_by_token(msg->header.token);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
983
if (pcb == NULL) {
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
988
lockmgr(&pcb->pcb_lock, LK_EXCLUSIVE);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
991
if (pcb->state != NG_BTSOCKET_L2CAP_CLOSED) {
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
996
pcb->src.b[5], pcb->src.b[4], pcb->src.b[3],
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
997
pcb->src.b[2], pcb->src.b[1], pcb->src.b[0],
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
998
pcb->dst.b[5], pcb->dst.b[4], pcb->dst.b[3],
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap.c
999
pcb->dst.b[2], pcb->dst.b[1], pcb->dst.b[0],
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap_raw.c
1015
pcb->token = ngmsg->header.token;
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap_raw.c
1016
pcb->msg = NULL;
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap_raw.c
1019
bcopy(&pcb->dst, &ip->bdaddr, sizeof(ip->bdaddr));
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap_raw.c
1026
pcb->token = 0;
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap_raw.c
1032
pcb->rt->hook, 0);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap_raw.c
1034
pcb->token = 0;
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap_raw.c
1038
error = lksleep(&pcb->msg, &pcb->pcb_lock, PCATCH, "l2ctl",
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap_raw.c
1040
pcb->token = 0;
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap_raw.c
1045
if (pcb->msg != NULL &&
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap_raw.c
1046
pcb->msg->header.cmd == NGM_L2CAP_L2CA_PING) {
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap_raw.c
1048
op = (ng_l2cap_l2ca_ping_op *)(pcb->msg->data);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap_raw.c
1058
NG_FREE_MSG(pcb->msg); /* checks for != NULL */
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap_raw.c
1067
if (!(pcb->flags & NG_BTSOCKET_L2CAP_RAW_PRIVILEGED)) {
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap_raw.c
1085
pcb->token = ngmsg->header.token;
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap_raw.c
1086
pcb->msg = NULL;
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap_raw.c
1089
bcopy(&pcb->dst, &ip->bdaddr, sizeof(ip->bdaddr));
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap_raw.c
1093
pcb->rt->hook, 0);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap_raw.c
1095
pcb->token = 0;
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap_raw.c
1099
error = lksleep(&pcb->msg, &pcb->pcb_lock, PCATCH, "l2ctl",
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap_raw.c
1101
pcb->token = 0;
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap_raw.c
1106
if (pcb->msg != NULL &&
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap_raw.c
1107
pcb->msg->header.cmd == NGM_L2CAP_L2CA_GET_INFO) {
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap_raw.c
1109
op = (ng_l2cap_l2ca_get_info_op *)(pcb->msg->data);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap_raw.c
1119
NG_FREE_MSG(pcb->msg); /* checks for != NULL */
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap_raw.c
1126
error = ng_btsocket_l2cap_raw_send_sync_ngmsg(pcb,
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap_raw.c
1135
if (pcb->flags & NG_BTSOCKET_L2CAP_RAW_PRIVILEGED)
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap_raw.c
1136
error = ng_btsocket_l2cap_raw_send_ngmsg(pcb->rt->hook,
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap_raw.c
1148
lockmgr(&pcb->pcb_lock, LK_RELEASE);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap_raw.c
1162
ng_btsocket_l2cap_raw_pcb_p pcb = so2l2cap_raw_pcb(so);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap_raw.c
1165
KASSERT(pcb != NULL, ("nt_btsocket_l2cap_raw_detach: pcb == NULL"));
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap_raw.c
1170
lockmgr(&pcb->pcb_lock, LK_EXCLUSIVE);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap_raw.c
1172
LIST_REMOVE(pcb, next);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap_raw.c
1174
lockmgr(&pcb->pcb_lock, LK_RELEASE);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap_raw.c
1177
lockuninit(&pcb->pcb_lock);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap_raw.c
1179
bzero(pcb, sizeof(*pcb));
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap_raw.c
1180
kfree(pcb, M_NETGRAPH_BTSOCKET_L2CAP_RAW);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap_raw.c
1196
ng_btsocket_l2cap_raw_pcb_p pcb = so2l2cap_raw_pcb(so);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap_raw.c
1199
if (pcb == NULL) {
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap_raw.c
1208
lockmgr(&pcb->pcb_lock, LK_EXCLUSIVE);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap_raw.c
1209
pcb->rt = NULL;
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap_raw.c
1211
lockmgr(&pcb->pcb_lock, LK_RELEASE);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap_raw.c
1226
ng_btsocket_l2cap_raw_pcb_p pcb = so2l2cap_raw_pcb(so);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap_raw.c
1230
if (pcb == NULL) {
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap_raw.c
1239
lockmgr(&pcb->pcb_lock, LK_EXCLUSIVE);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap_raw.c
1240
bcopy(&pcb->dst, &sa.l2cap_bdaddr, sizeof(sa.l2cap_bdaddr));
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap_raw.c
1241
lockmgr(&pcb->pcb_lock, LK_RELEASE);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap_raw.c
1281
ng_btsocket_l2cap_raw_pcb_p pcb = so2l2cap_raw_pcb(so);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap_raw.c
1285
if (pcb == NULL) {
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap_raw.c
1294
lockmgr(&pcb->pcb_lock, LK_EXCLUSIVE);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap_raw.c
1295
bcopy(&pcb->src, &sa.l2cap_bdaddr, sizeof(sa.l2cap_bdaddr));
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap_raw.c
1296
lockmgr(&pcb->pcb_lock, LK_RELEASE);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap_raw.c
1355
ng_btsocket_l2cap_raw_send_sync_ngmsg(ng_btsocket_l2cap_raw_pcb_p pcb,
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap_raw.c
1361
KKASSERT(lockowned(&pcb->pcb_lock) != 0);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap_raw.c
1368
pcb->token = msg->header.token;
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap_raw.c
1369
pcb->msg = NULL;
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap_raw.c
1372
pcb->rt->hook, 0);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap_raw.c
1374
pcb->token = 0;
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap_raw.c
1378
error = lksleep(&pcb->msg, &pcb->pcb_lock, PCATCH, "l2ctl",
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap_raw.c
1380
pcb->token = 0;
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap_raw.c
1385
if (pcb->msg != NULL && pcb->msg->header.cmd == cmd)
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap_raw.c
1386
bcopy(pcb->msg->data, rsp, rsplen);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap_raw.c
1390
NG_FREE_MSG(pcb->msg); /* checks for != NULL */
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap_raw.c
411
ng_btsocket_l2cap_raw_pcb_p pcb = NULL;
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap_raw.c
415
LIST_FOREACH(pcb,&ng_btsocket_l2cap_raw_sockets,next) {
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap_raw.c
416
lockmgr(&pcb->pcb_lock, LK_EXCLUSIVE);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap_raw.c
418
if (pcb->token == msg->header.token) {
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap_raw.c
419
pcb->msg = msg;
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap_raw.c
421
wakeup(&pcb->msg);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap_raw.c
422
lockmgr(&pcb->pcb_lock, LK_RELEASE);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap_raw.c
426
lockmgr(&pcb->pcb_lock, LK_RELEASE);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap_raw.c
453
ng_btsocket_l2cap_raw_pcb_p pcb = NULL;
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap_raw.c
462
LIST_FOREACH(pcb, &ng_btsocket_l2cap_raw_sockets, next) {
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap_raw.c
463
lockmgr(&pcb->pcb_lock, LK_EXCLUSIVE);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap_raw.c
465
if (pcb->rt != NULL &&
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap_raw.c
466
pcb->rt->hook != NULL && NG_HOOK_NOT_VALID(pcb->rt->hook)) {
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap_raw.c
467
if (pcb->so != NULL &&
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap_raw.c
468
pcb->so->so_state & SS_ISCONNECTED)
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap_raw.c
469
soisdisconnected(pcb->so);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap_raw.c
471
pcb->rt = NULL;
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap_raw.c
474
lockmgr(&pcb->pcb_lock, LK_RELEASE);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap_raw.c
602
ng_btsocket_l2cap_raw_pcb_p pcb = so2l2cap_raw_pcb(so);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap_raw.c
605
if (pcb != NULL) {
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap_raw.c
626
pcb = kmalloc(sizeof(*pcb), M_NETGRAPH_BTSOCKET_L2CAP_RAW,
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap_raw.c
628
if (pcb == NULL) {
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap_raw.c
634
so->so_pcb = (caddr_t) pcb;
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap_raw.c
635
pcb->so = so;
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap_raw.c
640
pcb->flags |= NG_BTSOCKET_L2CAP_RAW_PRIVILEGED;
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap_raw.c
643
lockinit(&pcb->pcb_lock, "btsocks_l2cap_raw_pcb_lock", 0, 0);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap_raw.c
647
LIST_INSERT_HEAD(&ng_btsocket_l2cap_raw_sockets, pcb, next);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap_raw.c
663
ng_btsocket_l2cap_raw_pcb_t *pcb = so2l2cap_raw_pcb(so);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap_raw.c
668
if (pcb == NULL) {
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap_raw.c
712
lockmgr(&pcb->pcb_lock, LK_EXCLUSIVE);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap_raw.c
713
bcopy(&sa->l2cap_bdaddr, &pcb->src, sizeof(pcb->src));
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap_raw.c
714
pcb->rt = rt;
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap_raw.c
715
lockmgr(&pcb->pcb_lock, LK_RELEASE);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap_raw.c
730
ng_btsocket_l2cap_raw_pcb_t *pcb = so2l2cap_raw_pcb(so);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap_raw.c
735
if (pcb == NULL) {
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap_raw.c
761
lockmgr(&pcb->pcb_lock, LK_EXCLUSIVE);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap_raw.c
763
bcopy(&sa->l2cap_bdaddr, &pcb->dst, sizeof(pcb->dst));
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap_raw.c
765
if (bcmp(&pcb->src, &pcb->dst, sizeof(pcb->src)) == 0) {
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap_raw.c
766
lockmgr(&pcb->pcb_lock, LK_RELEASE);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap_raw.c
775
if (pcb->rt != NULL) {
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap_raw.c
777
lockmgr(&pcb->pcb_lock, LK_RELEASE);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap_raw.c
791
if (bcmp(&pcb->dst, &rt->src, sizeof(rt->src)) != 0)
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap_raw.c
798
pcb->rt = rt;
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap_raw.c
799
bcopy(&rt->src, &pcb->src, sizeof(pcb->src));
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap_raw.c
804
lockmgr(&pcb->pcb_lock, LK_RELEASE);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap_raw.c
820
ng_btsocket_l2cap_raw_pcb_p pcb = so2l2cap_raw_pcb(so);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap_raw.c
824
if (pcb == NULL) {
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap_raw.c
833
lockmgr(&pcb->pcb_lock, LK_EXCLUSIVE);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap_raw.c
836
if (pcb->rt == NULL) {
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap_raw.c
837
lockmgr(&pcb->pcb_lock, LK_RELEASE);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap_raw.c
843
if (pcb->token != 0) {
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap_raw.c
844
lockmgr(&pcb->pcb_lock, LK_RELEASE);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap_raw.c
854
error = ng_btsocket_l2cap_raw_send_sync_ngmsg(pcb,
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap_raw.c
863
error = ng_btsocket_l2cap_raw_send_sync_ngmsg(pcb,
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap_raw.c
872
if (pcb->flags & NG_BTSOCKET_L2CAP_RAW_PRIVILEGED)
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap_raw.c
873
error = ng_btsocket_l2cap_raw_send_ngmsg(pcb->rt->hook,
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap_raw.c
900
pcb->token = ngmsg->header.token;
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap_raw.c
901
pcb->msg = NULL;
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap_raw.c
904
pcb->rt->hook, 0);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap_raw.c
906
pcb->token = 0;
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap_raw.c
910
error = lksleep(&pcb->msg, &pcb->pcb_lock, PCATCH, "l2ctl",
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap_raw.c
912
pcb->token = 0;
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap_raw.c
917
if (pcb->msg != NULL &&
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap_raw.c
918
pcb->msg->header.cmd == NGM_L2CAP_NODE_GET_CON_LIST) {
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap_raw.c
920
p1 = (ng_l2cap_node_con_list_ep *)(pcb->msg->data);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap_raw.c
932
NG_FREE_MSG(pcb->msg); /* checks for != NULL */
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap_raw.c
955
pcb->token = ngmsg->header.token;
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap_raw.c
956
pcb->msg = NULL;
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap_raw.c
959
pcb->rt->hook, 0);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap_raw.c
961
pcb->token = 0;
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap_raw.c
965
error = lksleep(&pcb->msg, &pcb->pcb_lock, PCATCH, "l2ctl",
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap_raw.c
967
pcb->token = 0;
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap_raw.c
972
if (pcb->msg != NULL &&
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap_raw.c
973
pcb->msg->header.cmd == NGM_L2CAP_NODE_GET_CHAN_LIST) {
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap_raw.c
975
p1 = (ng_l2cap_node_chan_list_ep *)(pcb->msg->data);
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap_raw.c
987
NG_FREE_MSG(pcb->msg); /* checks for != NULL */
sys/netgraph7/bluetooth/socket/ng_btsocket_l2cap_raw.c
996
if (!(pcb->flags & NG_BTSOCKET_L2CAP_RAW_PRIVILEGED)) {
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
1002
if (pcb == NULL) {
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
1007
bcopy(&pcb->dst, &sa.rfcomm_bdaddr, sizeof(sa.rfcomm_bdaddr));
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
1008
sa.rfcomm_channel = pcb->channel;
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
1031
ng_btsocket_rfcomm_pcb_t *pcb = so2rfcomm_pcb(so);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
1035
if (pcb == NULL || m == NULL || control != NULL) {
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
1040
lockmgr(&pcb->pcb_lock, LK_EXCLUSIVE);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
1043
if (pcb->state != NG_BTSOCKET_RFCOMM_DLC_CONNECTED) {
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
1044
lockmgr(&pcb->pcb_lock, LK_RELEASE);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
1050
sbappend(&pcb->so->so_snd.sb, m);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
1053
if (!(pcb->flags & NG_BTSOCKET_RFCOMM_DLC_SENDING)) {
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
1054
pcb->flags |= NG_BTSOCKET_RFCOMM_DLC_SENDING;
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
1058
lockmgr(&pcb->pcb_lock, LK_RELEASE);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
1075
ng_btsocket_rfcomm_pcb_p pcb = so2rfcomm_pcb(so);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
1079
if (pcb == NULL) {
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
1084
bcopy(&pcb->src, &sa.rfcomm_bdaddr, sizeof(sa.rfcomm_bdaddr));
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
1085
sa.rfcomm_channel = pcb->channel;
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
1231
ng_btsocket_rfcomm_pcb_p pcb = NULL, pcb1 = NULL;
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
1243
pcb = ng_btsocket_rfcomm_pcb_listener(&l2pcb->src, channel);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
1244
if (pcb == NULL)
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
1253
lockmgr(&pcb->pcb_lock, LK_EXCLUSIVE);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
1255
if (pcb->so->so_qlen <= pcb->so->so_qlimit)
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
1256
so1 = sonewconn(pcb->so, 0);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
1258
lockmgr(&pcb->pcb_lock, LK_RELEASE);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
1294
ng_btsocket_rfcomm_pcb_p pcb = NULL, pcb_next = NULL;
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
1307
for (pcb = LIST_FIRST(&s->dlcs); pcb != NULL; ) {
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
1308
lockmgr(&pcb->pcb_lock, LK_EXCLUSIVE);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
1309
pcb_next = LIST_NEXT(pcb, session_next);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
1311
if (pcb->state == NG_BTSOCKET_RFCOMM_DLC_W4_CONNECT) {
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
1312
pcb->mtu = s->mtu;
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
1313
bcopy(&so2l2cap_pcb(s->l2so)->src, &pcb->src,
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
1314
sizeof(pcb->src));
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
1316
error = ng_btsocket_rfcomm_send_pn(pcb);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
1318
pcb->state = NG_BTSOCKET_RFCOMM_DLC_CONFIGURING;
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
1320
ng_btsocket_rfcomm_pcb_kill(pcb, error);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
1323
lockmgr(&pcb->pcb_lock, LK_RELEASE);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
1324
pcb = pcb_next;
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
153
(ng_btsocket_rfcomm_pcb_p pcb, u_int8_t cr, u_int8_t flow_control,
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
162
(ng_btsocket_rfcomm_pcb_p pcb);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
164
(ng_btsocket_rfcomm_pcb_p pcb);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
166
(ng_btsocket_rfcomm_pcb_p pcb);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
169
(ng_btsocket_rfcomm_pcb_p pcb, int limit);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
171
(ng_btsocket_rfcomm_pcb_p pcb, int error);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
1744
ng_btsocket_rfcomm_pcb_p pcb = NULL, pcb_next = NULL;
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
1754
for (pcb = LIST_FIRST(&s->dlcs); pcb != NULL; ) {
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
1755
lockmgr(&pcb->pcb_lock, LK_EXCLUSIVE);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
1756
pcb_next = LIST_NEXT(pcb, session_next);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
1760
__func__, pcb->dlci, pcb->state, pcb->flags);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
1762
if (pcb->state == NG_BTSOCKET_RFCOMM_DLC_CONNECTED)
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
1767
ng_btsocket_rfcomm_pcb_kill(pcb, error);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
1769
lockmgr(&pcb->pcb_lock, LK_RELEASE);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
1770
pcb = pcb_next;
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
178
(ng_btsocket_rfcomm_pcb_p pcb);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
1781
ng_btsocket_rfcomm_pcb_p pcb = NULL, pcb_next = NULL;
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
1791
for (pcb = LIST_FIRST(&s->dlcs); pcb != NULL; ) {
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
1792
lockmgr(&pcb->pcb_lock, LK_EXCLUSIVE);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
1793
pcb_next = LIST_NEXT(pcb, session_next);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
1795
switch (pcb->state) {
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
180
(ng_btsocket_rfcomm_pcb_p pcb);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
1803
if (pcb->flags & NG_BTSOCKET_RFCOMM_DLC_DETACHED)
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
1804
ng_btsocket_rfcomm_pcb_kill(pcb, 0);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
1805
else if (pcb->flags & NG_BTSOCKET_RFCOMM_DLC_TIMEDOUT)
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
1806
ng_btsocket_rfcomm_pcb_kill(pcb, ETIMEDOUT);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
1817
if (pcb->flags & NG_BTSOCKET_RFCOMM_DLC_TIMEDOUT)
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
1818
ng_btsocket_rfcomm_pcb_kill(pcb, ETIMEDOUT);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
1831
error = ng_btsocket_rfcomm_pcb_send(pcb, ALOT);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
1833
ng_btsocket_rfcomm_pcb_kill(pcb, error);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
1846
if (!(pcb->flags & NG_BTSOCKET_RFCOMM_DLC_TIMO)) {
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
1848
pcb->session, RFCOMM_FRAME_DISC,
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
1849
pcb->dlci);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
1851
ng_btsocket_rfcomm_timeout(pcb);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
1853
ng_btsocket_rfcomm_pcb_kill(pcb, error);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
1854
} else if (pcb->flags & NG_BTSOCKET_RFCOMM_DLC_TIMEDOUT)
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
1855
ng_btsocket_rfcomm_pcb_kill(pcb, ETIMEDOUT);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
1861
__func__, pcb->state, pcb->flags);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
1865
lockmgr(&pcb->pcb_lock, LK_RELEASE);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
1866
pcb = pcb_next;
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
2049
ng_btsocket_rfcomm_pcb_p pcb = NULL;
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
2099
pcb = ng_btsocket_rfcomm_pcb_by_dlci(s, dlci);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
2100
if (pcb != NULL) {
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
2101
lockmgr(&pcb->pcb_lock, LK_EXCLUSIVE);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
2103
if (pcb->state != NG_BTSOCKET_RFCOMM_DLC_CONNECTING) {
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
2106
__func__, dlci, pcb->state, pcb->flags);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
2107
lockmgr(&pcb->pcb_lock, LK_RELEASE);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
2112
ng_btsocket_rfcomm_untimeout(pcb);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
2116
error = ng_btsocket_rfcomm_send_msc(pcb);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
2119
pcb->state = NG_BTSOCKET_RFCOMM_DLC_CONNECTED;
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
2120
soisconnected(pcb->so);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
2122
ng_btsocket_rfcomm_pcb_kill(pcb, error);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
2124
lockmgr(&pcb->pcb_lock, LK_RELEASE);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
2134
pcb = ng_btsocket_rfcomm_connect_ind(s, RFCOMM_SRVCHANNEL(dlci));
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
2135
if (pcb != NULL) {
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
2136
lockmgr(&pcb->pcb_lock, LK_EXCLUSIVE);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
2138
pcb->dlci = dlci;
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
2142
error = ng_btsocket_rfcomm_send_msc(pcb);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
2145
pcb->state = NG_BTSOCKET_RFCOMM_DLC_CONNECTED;
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
2146
soisconnected(pcb->so);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
2148
ng_btsocket_rfcomm_pcb_kill(pcb, error);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
2150
lockmgr(&pcb->pcb_lock, LK_RELEASE);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
2165
ng_btsocket_rfcomm_pcb_p pcb = NULL;
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
2188
pcb = ng_btsocket_rfcomm_pcb_by_dlci(s, dlci);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
2189
if (pcb != NULL) {
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
2192
lockmgr(&pcb->pcb_lock, LK_EXCLUSIVE);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
2196
__func__, dlci, pcb->state, pcb->flags);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
2201
if (pcb->state == NG_BTSOCKET_RFCOMM_DLC_CONNECTED)
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
2206
ng_btsocket_rfcomm_pcb_kill(pcb, err);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
2208
lockmgr(&pcb->pcb_lock, LK_RELEASE);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
2228
ng_btsocket_rfcomm_pcb_p pcb = NULL;
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
2263
pcb = ng_btsocket_rfcomm_pcb_by_dlci(s, dlci);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
2264
if (pcb != NULL) {
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
2265
lockmgr(&pcb->pcb_lock, LK_EXCLUSIVE);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
2269
__func__, dlci, pcb->state, pcb->flags);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
2271
switch (pcb->state) {
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
2273
ng_btsocket_rfcomm_untimeout(pcb);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
2275
error = ng_btsocket_rfcomm_send_msc(pcb);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
2277
pcb->state = NG_BTSOCKET_RFCOMM_DLC_CONNECTED;
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
2278
soisconnected(pcb->so);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
2283
ng_btsocket_rfcomm_pcb_kill(pcb, 0);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
2289
__func__, dlci, pcb->state, pcb->flags);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
2294
lockmgr(&pcb->pcb_lock, LK_RELEASE);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
2312
ng_btsocket_rfcomm_pcb_p pcb = NULL;
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
2327
pcb = ng_btsocket_rfcomm_pcb_by_dlci(s, dlci);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
2328
if (pcb != NULL) {
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
2329
lockmgr(&pcb->pcb_lock, LK_EXCLUSIVE);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
2333
__func__, dlci, pcb->state, pcb->flags);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
2335
if (pcb->state == NG_BTSOCKET_RFCOMM_DLC_CONNECTED)
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
2340
ng_btsocket_rfcomm_pcb_kill(pcb, error);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
2342
lockmgr(&pcb->pcb_lock, LK_RELEASE);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
2359
ng_btsocket_rfcomm_pcb_p pcb = NULL;
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
2378
pcb = ng_btsocket_rfcomm_pcb_by_dlci(s, dlci);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
2379
if (pcb == NULL) {
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
2386
lockmgr(&pcb->pcb_lock, LK_EXCLUSIVE);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
2389
if (pcb->state != NG_BTSOCKET_RFCOMM_DLC_CONNECTED) {
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
2392
__func__, dlci, pcb->state, pcb->flags);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
2398
if (((pcb->flags & NG_BTSOCKET_RFCOMM_DLC_CFC) && pcb->rx_cred <= 0) ||
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
2399
(pcb->lmodem & RFCOMM_MODEM_FC)) {
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
2403
__func__, dlci, pcb->state, pcb->flags,
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
2404
pcb->rx_cred, pcb->lmodem);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
2409
if ((pcb->flags & NG_BTSOCKET_RFCOMM_DLC_CFC) && pf) {
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
2413
__func__, *mtod(m0, u_int8_t *), dlci, pcb->state,
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
2414
pcb->flags, pcb->rx_cred, pcb->tx_cred);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
2416
pcb->tx_cred += *mtod(m0, u_int8_t *);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
2420
ng_btsocket_rfcomm_pcb_send(pcb, ALOT);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
2426
if (pcb->flags & NG_BTSOCKET_RFCOMM_DLC_CFC) {
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
2428
if (-- pcb->rx_cred <= RFCOMM_MAX_CREDITS / 2)
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
2429
ng_btsocket_rfcomm_send_credits(pcb);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
2433
"rx_cred=%d, tx_cred=%d\n", __func__, dlci, pcb->state, pcb->flags,
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
2434
pcb->rx_cred, pcb->tx_cred);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
2438
if (m0->m_pkthdr.len > pcb->mtu) {
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
2441
__func__, dlci, pcb->state, pcb->flags,
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
2442
pcb->mtu, m0->m_pkthdr.len);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
2445
} else if (m0->m_pkthdr.len > ssb_space(&pcb->so->so_rcv)) {
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
2456
__func__, dlci, pcb->state, pcb->flags,
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
2457
m0->m_pkthdr.len, ssb_space(&pcb->so->so_rcv));
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
2462
sbappend(&pcb->so->so_rcv.sb, m0);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
2465
sorwakeup(pcb->so);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
2469
lockmgr(&pcb->pcb_lock, LK_RELEASE);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
2669
ng_btsocket_rfcomm_pcb_t *pcb = NULL;
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
2682
pcb = ng_btsocket_rfcomm_pcb_by_dlci(s, RFCOMM_DLCI(msc->address));
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
2683
if (pcb == NULL) {
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
2692
lockmgr(&pcb->pcb_lock, LK_EXCLUSIVE);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
2694
if (pcb->state != NG_BTSOCKET_RFCOMM_DLC_CONNECTING &&
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
2695
pcb->state != NG_BTSOCKET_RFCOMM_DLC_CONNECTED) {
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
2699
pcb->state);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
2701
lockmgr(&pcb->pcb_lock, LK_RELEASE);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
2707
pcb->rmodem = msc->modem; /* Update remote port signals */
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
2715
if (!(pcb->rmodem & RFCOMM_MODEM_FC) &&
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
2716
!(pcb->flags & NG_BTSOCKET_RFCOMM_DLC_CFC))
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
2717
ng_btsocket_rfcomm_pcb_send(pcb, ALOT);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
2720
lockmgr(&pcb->pcb_lock, LK_RELEASE);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
2885
ng_btsocket_rfcomm_pcb_t *pcb = NULL;
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
2907
pcb = ng_btsocket_rfcomm_pcb_by_dlci(s, pn->dlci);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
2908
if (pcb != NULL) {
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
2909
lockmgr(&pcb->pcb_lock, LK_EXCLUSIVE);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
2913
ng_btsocket_rfcomm_set_pn(pcb, 1, pn->flow_control,
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
2916
if (pcb->flags & NG_BTSOCKET_RFCOMM_DLC_CFC) {
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
2930
if (pcb->state == NG_BTSOCKET_RFCOMM_DLC_CONFIGURING) {
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
2931
ng_btsocket_rfcomm_set_pn(pcb, 0,
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
2934
pcb->state = NG_BTSOCKET_RFCOMM_DLC_CONNECTING;
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
2940
__func__, pn->dlci, pcb->state);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
2945
lockmgr(&pcb->pcb_lock, LK_RELEASE);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
2948
pcb = ng_btsocket_rfcomm_connect_ind(s,
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
2950
if (pcb != NULL) {
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
2951
lockmgr(&pcb->pcb_lock, LK_EXCLUSIVE);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
2953
pcb->dlci = pn->dlci;
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
2955
ng_btsocket_rfcomm_set_pn(pcb, 1, pn->flow_control,
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
2958
if (pcb->flags & NG_BTSOCKET_RFCOMM_DLC_CFC) {
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
2972
ng_btsocket_rfcomm_timeout(pcb);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
2973
pcb->state = NG_BTSOCKET_RFCOMM_DLC_CONNECTING;
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
2974
soisconnecting(pcb->so);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
2976
ng_btsocket_rfcomm_pcb_kill(pcb, error);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
2978
lockmgr(&pcb->pcb_lock, LK_RELEASE);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
3014
ng_btsocket_rfcomm_set_pn(ng_btsocket_rfcomm_pcb_p pcb, u_int8_t cr,
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
3017
KKASSERT(lockowned(&pcb->pcb_lock) != 0);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
3019
pcb->mtu = le16toh(mtu);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
3023
pcb->flags |= NG_BTSOCKET_RFCOMM_DLC_CFC;
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
3024
pcb->tx_cred = credits;
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
3026
pcb->flags &= ~NG_BTSOCKET_RFCOMM_DLC_CFC;
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
3027
pcb->tx_cred = 0;
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
3031
pcb->flags |= NG_BTSOCKET_RFCOMM_DLC_CFC;
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
3032
pcb->tx_cred = credits;
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
3034
pcb->flags &= ~NG_BTSOCKET_RFCOMM_DLC_CFC;
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
3035
pcb->tx_cred = 0;
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
3041
__func__, cr, pcb->dlci, pcb->state, pcb->flags, pcb->mtu,
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
3042
pcb->rx_cred, pcb->tx_cred);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
3176
ng_btsocket_rfcomm_send_msc(ng_btsocket_rfcomm_pcb_p pcb)
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
3182
KKASSERT(lockowned(&pcb->session->session_lock) != 0);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
3183
KKASSERT(lockowned(&pcb->pcb_lock) != 0);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
3197
msc->address = RFCOMM_MKADDRESS(1, pcb->dlci);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
3198
msc->modem = pcb->lmodem;
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
3202
__func__, pcb->dlci, pcb->state, pcb->flags, msc->address,
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
3205
return (ng_btsocket_rfcomm_send_uih(pcb->session,
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
3206
RFCOMM_MKADDRESS(INITIATOR(pcb->session), 0), 0, 0, m));
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
3214
ng_btsocket_rfcomm_send_pn(ng_btsocket_rfcomm_pcb_p pcb)
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
3220
KKASSERT(lockowned(&pcb->session->session_lock) != 0);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
3221
KKASSERT(lockowned(&pcb->pcb_lock) != 0);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
3235
pn->dlci = pcb->dlci;
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
3242
pn->priority = (pcb->dlci < 56)? (((pcb->dlci >> 3) << 3) + 7) : 61;
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
3244
pn->mtu = htole16(pcb->mtu);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
3247
if (pcb->flags & NG_BTSOCKET_RFCOMM_DLC_CFC) {
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
3249
pn->credits = pcb->rx_cred;
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
3257
"credits=%d\n", __func__, pcb->dlci, pcb->state, pcb->flags, pcb->mtu,
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
3260
return (ng_btsocket_rfcomm_send_uih(pcb->session,
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
3261
RFCOMM_MKADDRESS(INITIATOR(pcb->session), 0), 0, 0, m));
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
3269
ng_btsocket_rfcomm_send_credits(ng_btsocket_rfcomm_pcb_p pcb)
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
3274
KKASSERT(lockowned(&pcb->pcb_lock) != 0);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
3275
KKASSERT(lockowned(&pcb->session->session_lock) != 0);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
3280
__func__, pcb->dlci, pcb->state, pcb->flags, pcb->mtu,
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
3281
ssb_space(&pcb->so->so_rcv), pcb->tx_cred, pcb->rx_cred);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
3283
credits = ssb_space(&pcb->so->so_rcv) / pcb->mtu;
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
3285
if (pcb->rx_cred + credits > RFCOMM_MAX_CREDITS)
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
3286
credits = RFCOMM_MAX_CREDITS - pcb->rx_cred;
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
3289
pcb->session,
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
3290
RFCOMM_MKADDRESS(INITIATOR(pcb->session),
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
3291
pcb->dlci), 1, credits, NULL);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
3293
pcb->rx_cred += credits;
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
3297
"rx_cred=%d, tx_cred=%d\n", __func__, credits, pcb->dlci, pcb->state,
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
3298
pcb->flags, pcb->rx_cred, pcb->tx_cred);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
3303
__func__, error, pcb->dlci, pcb->state,
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
3304
pcb->flags, pcb->mtu, ssb_space(&pcb->so->so_rcv),
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
3305
pcb->tx_cred, pcb->rx_cred);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
3323
ng_btsocket_rfcomm_pcb_send(ng_btsocket_rfcomm_pcb_p pcb, int limit)
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
3328
KKASSERT(lockowned(&pcb->session->session_lock) != 0);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
3329
KKASSERT(lockowned(&pcb->pcb_lock) != 0);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
3331
if (pcb->flags & NG_BTSOCKET_RFCOMM_DLC_CFC)
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
3332
limit = min(limit, pcb->tx_cred);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
3333
else if (!(pcb->rmodem & RFCOMM_MODEM_FC))
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
3342
__func__, pcb->dlci, pcb->flags, pcb->rmodem,
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
3343
pcb->tx_cred);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
3349
length = min(pcb->mtu, pcb->so->so_snd.sb.sb_cc);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
3354
m = ng_btsocket_rfcomm_prepare_packet(&pcb->so->so_snd.sb,
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
3361
sbdrop(&pcb->so->so_snd.sb, length);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
3363
error = ng_btsocket_rfcomm_send_uih(pcb->session,
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
3364
RFCOMM_MKADDRESS(INITIATOR(pcb->session),
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
3365
pcb->dlci), 0, 0, m);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
3370
if (pcb->flags & NG_BTSOCKET_RFCOMM_DLC_CFC)
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
3371
pcb->tx_cred -= sent;
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
3374
pcb->flags &= ~NG_BTSOCKET_RFCOMM_DLC_SENDING;
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
3375
sowwakeup(pcb->so);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
3388
ng_btsocket_rfcomm_pcb_kill(ng_btsocket_rfcomm_pcb_p pcb, int error)
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
3390
ng_btsocket_rfcomm_session_p s = pcb->session;
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
3394
__func__, pcb->so, pcb->dlci, pcb->state, pcb->flags, error);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
3396
if (pcb->session == NULL)
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
3398
__func__, pcb, pcb->state, pcb->flags);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
3400
KKASSERT(lockowned(&pcb->session->session_lock) != 0);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
3401
KKASSERT(lockowned(&pcb->pcb_lock) != 0);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
3403
if (pcb->flags & NG_BTSOCKET_RFCOMM_DLC_TIMO)
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
3404
ng_btsocket_rfcomm_untimeout(pcb);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
3407
LIST_REMOVE(pcb, session_next);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
3408
pcb->session = NULL;
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
3411
pcb->state = NG_BTSOCKET_RFCOMM_DLC_CLOSED;
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
3412
pcb->so->so_error = error;
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
3413
soisdisconnected(pcb->so);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
3414
wakeup(&pcb->state);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
3465
ng_btsocket_rfcomm_pcb_p pcb = NULL;
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
3469
LIST_FOREACH(pcb, &s->dlcs, session_next)
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
3470
if (pcb->dlci == dlci)
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
3473
return (pcb);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
3483
ng_btsocket_rfcomm_pcb_p pcb = NULL, pcb1 = NULL;
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
3487
LIST_FOREACH(pcb, &ng_btsocket_rfcomm_sockets, next) {
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
3488
if (pcb->channel != channel ||
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
3489
!(pcb->so->so_options & SO_ACCEPTCONN))
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
3492
if (bcmp(&pcb->src, src, sizeof(*src)) == 0)
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
3495
if (bcmp(&pcb->src, NG_HCI_BDADDR_ANY, sizeof(bdaddr_t)) == 0)
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
3496
pcb1 = pcb;
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
3501
return ((pcb != NULL)? pcb : pcb1);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
3515
ng_btsocket_rfcomm_timeout(ng_btsocket_rfcomm_pcb_p pcb)
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
3517
KKASSERT(lockowned(&pcb->pcb_lock) != 0);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
3519
if (!(pcb->flags & NG_BTSOCKET_RFCOMM_DLC_TIMO)) {
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
3520
pcb->flags |= NG_BTSOCKET_RFCOMM_DLC_TIMO;
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
3521
pcb->flags &= ~NG_BTSOCKET_RFCOMM_DLC_TIMEDOUT;
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
3522
callout_reset(&pcb->timo, ng_btsocket_rfcomm_timo * hz,
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
3523
ng_btsocket_rfcomm_process_timeout, pcb);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
3533
ng_btsocket_rfcomm_untimeout(ng_btsocket_rfcomm_pcb_p pcb)
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
3535
KKASSERT(lockowned(&pcb->pcb_lock) != 0);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
3537
if (pcb->flags & NG_BTSOCKET_RFCOMM_DLC_TIMO) {
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
3538
callout_stop(&pcb->timo);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
3539
pcb->flags &= ~NG_BTSOCKET_RFCOMM_DLC_TIMO;
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
3540
pcb->flags &= ~NG_BTSOCKET_RFCOMM_DLC_TIMEDOUT;
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
3552
ng_btsocket_rfcomm_pcb_p pcb = (ng_btsocket_rfcomm_pcb_p) xpcb;
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
3554
lockmgr(&pcb->pcb_lock, LK_EXCLUSIVE);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
3558
__func__, pcb->so, pcb->dlci, pcb->state, pcb->flags);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
3560
pcb->flags &= ~NG_BTSOCKET_RFCOMM_DLC_TIMO;
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
3561
pcb->flags |= NG_BTSOCKET_RFCOMM_DLC_TIMEDOUT;
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
3563
switch (pcb->state) {
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
3566
pcb->state = NG_BTSOCKET_RFCOMM_DLC_DISCONNECTING;
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
3576
__func__, pcb->dlci, pcb->state, pcb->flags);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
3582
lockmgr(&pcb->pcb_lock, LK_RELEASE);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
383
ng_btsocket_rfcomm_pcb_p pcb = so2rfcomm_pcb(so);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
400
if (pcb != NULL) {
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
414
pcb = kmalloc(sizeof(*pcb), M_NETGRAPH_BTSOCKET_RFCOMM,
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
416
if (pcb == NULL) {
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
422
so->so_pcb = (caddr_t) pcb;
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
423
pcb->so = so;
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
426
pcb->state = NG_BTSOCKET_RFCOMM_DLC_CLOSED;
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
427
pcb->flags = NG_BTSOCKET_RFCOMM_DLC_CFC;
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
429
pcb->lmodem =
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
430
pcb->rmodem = (RFCOMM_MODEM_RTC | RFCOMM_MODEM_RTR | RFCOMM_MODEM_DV);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
432
pcb->mtu = RFCOMM_DEFAULT_MTU;
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
433
pcb->tx_cred = 0;
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
434
pcb->rx_cred = RFCOMM_DEFAULT_CREDITS;
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
436
lockinit(&pcb->pcb_lock, "btsocks_rfcomm_pcb_lock", 0, 0);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
437
callout_init_mp(&pcb->timo);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
441
LIST_INSERT_HEAD(&ng_btsocket_rfcomm_sockets, pcb, next);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
457
ng_btsocket_rfcomm_pcb_t *pcb = so2rfcomm_pcb(so), *pcb1;
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
461
if (pcb == NULL) {
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
484
lockmgr(&pcb->pcb_lock, LK_EXCLUSIVE);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
494
lockmgr(&pcb->pcb_lock, LK_RELEASE);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
504
bcopy(&sa->rfcomm_bdaddr, &pcb->src, sizeof(pcb->src));
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
505
pcb->channel = sa->rfcomm_channel;
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
507
lockmgr(&pcb->pcb_lock, LK_RELEASE);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
523
ng_btsocket_rfcomm_pcb_t *pcb = so2rfcomm_pcb(so);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
529
if (pcb == NULL) {
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
576
s = ng_btsocket_rfcomm_session_by_addr(&pcb->src, &sa->rfcomm_bdaddr);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
590
&pcb->src, &sa->rfcomm_bdaddr, td);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
605
lockmgr(&pcb->pcb_lock, LK_EXCLUSIVE);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
610
lockmgr(&pcb->pcb_lock, LK_RELEASE);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
631
bcopy(&sa->rfcomm_bdaddr, &pcb->dst, sizeof(pcb->dst));
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
632
pcb->channel = sa->rfcomm_channel;
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
633
pcb->dlci = dlci;
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
635
LIST_INSERT_HEAD(&s->dlcs, pcb, session_next);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
636
pcb->session = s;
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
638
ng_btsocket_rfcomm_timeout(pcb);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
639
soisconnecting(pcb->so);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
642
pcb->mtu = s->mtu;
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
643
bcopy(&so2l2cap_pcb(s->l2so)->src, &pcb->src,
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
644
sizeof(pcb->src));
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
646
pcb->state = NG_BTSOCKET_RFCOMM_DLC_CONFIGURING;
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
648
error = ng_btsocket_rfcomm_send_pn(pcb);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
652
pcb->state = NG_BTSOCKET_RFCOMM_DLC_W4_CONNECT;
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
660
lockmgr(&pcb->pcb_lock, LK_RELEASE);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
688
ng_btsocket_rfcomm_pcb_p pcb = so2rfcomm_pcb(so);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
692
if (pcb == NULL) {
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
699
lockmgr(&pcb->pcb_lock, LK_EXCLUSIVE);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
705
error = sooptcopyout(sopt, &pcb->mtu, sizeof(pcb->mtu));
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
709
fcinfo.lmodem = pcb->lmodem;
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
710
fcinfo.rmodem = pcb->rmodem;
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
711
fcinfo.tx_cred = pcb->tx_cred;
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
712
fcinfo.rx_cred = pcb->rx_cred;
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
713
fcinfo.cfc = (pcb->flags & NG_BTSOCKET_RFCOMM_DLC_CFC)?
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
739
lockmgr(&pcb->pcb_lock, LK_RELEASE);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
753
ng_btsocket_rfcomm_pcb_p pcb = so2rfcomm_pcb(so);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
756
KASSERT(pcb != NULL, ("ng_btsocket_rfcomm_detach: pcb == NULL"));
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
758
lockmgr(&pcb->pcb_lock, LK_EXCLUSIVE);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
762
switch (pcb->state) {
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
768
if (pcb->flags & NG_BTSOCKET_RFCOMM_DLC_TIMO)
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
769
ng_btsocket_rfcomm_untimeout(pcb);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
771
if (pcb->state == NG_BTSOCKET_RFCOMM_DLC_W4_CONNECT)
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
772
pcb->flags |= NG_BTSOCKET_RFCOMM_DLC_DETACHED;
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
774
pcb->state = NG_BTSOCKET_RFCOMM_DLC_DISCONNECTING;
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
784
while (pcb->state != NG_BTSOCKET_RFCOMM_DLC_CLOSED)
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
785
lksleep(&pcb->state, &pcb->pcb_lock, 0, "rf_det", 0);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
787
if (pcb->session != NULL)
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
789
if (pcb->flags & NG_BTSOCKET_RFCOMM_DLC_TIMO)
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
791
__func__, pcb->flags);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
794
LIST_REMOVE(pcb, next);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
797
lockmgr(&pcb->pcb_lock, LK_RELEASE);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
799
lockuninit(&pcb->pcb_lock);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
800
bzero(pcb, sizeof(*pcb));
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
801
kfree(pcb, M_NETGRAPH_BTSOCKET_RFCOMM);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
817
ng_btsocket_rfcomm_pcb_p pcb = so2rfcomm_pcb(so);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
820
if (pcb == NULL) {
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
825
lockmgr(&pcb->pcb_lock, LK_EXCLUSIVE);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
827
if (pcb->state == NG_BTSOCKET_RFCOMM_DLC_DISCONNECTING) {
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
828
lockmgr(&pcb->pcb_lock, LK_RELEASE);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
834
if (pcb->flags & NG_BTSOCKET_RFCOMM_DLC_TIMO)
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
835
ng_btsocket_rfcomm_untimeout(pcb);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
837
switch (pcb->state) {
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
847
pcb->state = NG_BTSOCKET_RFCOMM_DLC_DISCONNECTING;
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
859
__func__, pcb->state, pcb->flags);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
863
lockmgr(&pcb->pcb_lock, LK_RELEASE);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
879
ng_btsocket_rfcomm_pcb_p pcb = so2rfcomm_pcb(so), pcb1;
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
884
if (pcb == NULL) {
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
888
if (pcb->channel > 30) {
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
895
lockmgr(&pcb->pcb_lock, LK_EXCLUSIVE);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
897
if (pcb->channel == 0) {
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
902
bcmp(&pcb1->src, &pcb->src, sizeof(pcb->src)) == 0)
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
905
for (pcb->channel = 30; pcb->channel > 0; pcb->channel --)
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
906
if (!(usedchannels & (1 << (pcb->channel - 1))))
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
909
if (pcb->channel == 0) {
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
911
lockmgr(&pcb->pcb_lock, LK_RELEASE);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
920
lockmgr(&pcb->pcb_lock, LK_RELEASE);
sys/netgraph7/bluetooth/socket/ng_btsocket_rfcomm.c
998
ng_btsocket_rfcomm_pcb_p pcb = so2rfcomm_pcb(so);
sys/platform/pc64/include/pcb.h
99
void savectx(struct pcb *);
sys/platform/pc64/include/pcb_ext.h
60
struct pcb;
sys/platform/pc64/include/pcb_ext.h
62
void set_user_ldt (struct pcb *);
sys/platform/pc64/include/pcb_ext.h
63
struct pcb_ldt *user_ldt_alloc (struct pcb *, int);
sys/platform/pc64/include/pcb_ext.h
64
void user_ldt_free (struct pcb *);
sys/platform/pc64/include/smp.h
58
extern struct pcb stoppcbs[];
sys/platform/pc64/x86_64/genassym.c
106
ASSYM(PCB_CR3_ISO, offsetof(struct pcb, pcb_cr3_iso));
sys/platform/pc64/x86_64/genassym.c
107
ASSYM(PCB_CR3, offsetof(struct pcb, pcb_cr3));
sys/platform/pc64/x86_64/genassym.c
108
ASSYM(PCB_R15, offsetof(struct pcb, pcb_r15));
sys/platform/pc64/x86_64/genassym.c
109
ASSYM(PCB_R14, offsetof(struct pcb, pcb_r14));
sys/platform/pc64/x86_64/genassym.c
110
ASSYM(PCB_R13, offsetof(struct pcb, pcb_r13));
sys/platform/pc64/x86_64/genassym.c
111
ASSYM(PCB_R12, offsetof(struct pcb, pcb_r12));
sys/platform/pc64/x86_64/genassym.c
112
ASSYM(PCB_RSI, offsetof(struct pcb, pcb_rsi));
sys/platform/pc64/x86_64/genassym.c
113
ASSYM(PCB_RBP, offsetof(struct pcb, pcb_rbp));
sys/platform/pc64/x86_64/genassym.c
114
ASSYM(PCB_RSP, offsetof(struct pcb, pcb_rsp));
sys/platform/pc64/x86_64/genassym.c
115
ASSYM(PCB_RBX, offsetof(struct pcb, pcb_rbx));
sys/platform/pc64/x86_64/genassym.c
116
ASSYM(PCB_RIP, offsetof(struct pcb, pcb_rip));
sys/platform/pc64/x86_64/genassym.c
119
ASSYM(PCB_DR0, offsetof(struct pcb, pcb_dr0));
sys/platform/pc64/x86_64/genassym.c
120
ASSYM(PCB_DR1, offsetof(struct pcb, pcb_dr1));
sys/platform/pc64/x86_64/genassym.c
121
ASSYM(PCB_DR2, offsetof(struct pcb, pcb_dr2));
sys/platform/pc64/x86_64/genassym.c
122
ASSYM(PCB_DR3, offsetof(struct pcb, pcb_dr3));
sys/platform/pc64/x86_64/genassym.c
123
ASSYM(PCB_DR6, offsetof(struct pcb, pcb_dr6));
sys/platform/pc64/x86_64/genassym.c
124
ASSYM(PCB_DR7, offsetof(struct pcb, pcb_dr7));
sys/platform/pc64/x86_64/genassym.c
137
ASSYM(PCB_EXT, offsetof(struct pcb, pcb_ext));
sys/platform/pc64/x86_64/genassym.c
138
ASSYM(PCB_FLAGS, offsetof(struct pcb, pcb_flags));
sys/platform/pc64/x86_64/genassym.c
139
ASSYM(PCB_ONFAULT, offsetof(struct pcb, pcb_onfault));
sys/platform/pc64/x86_64/genassym.c
140
ASSYM(PCB_ONFAULT_SP, offsetof(struct pcb, pcb_onfault_sp));
sys/platform/pc64/x86_64/genassym.c
141
ASSYM(PCB_FSBASE, offsetof(struct pcb, pcb_fsbase));
sys/platform/pc64/x86_64/genassym.c
142
ASSYM(PCB_GSBASE, offsetof(struct pcb, pcb_gsbase));
sys/platform/pc64/x86_64/genassym.c
143
ASSYM(PCB_SAVEFPU, offsetof(struct pcb, pcb_save));
sys/platform/pc64/x86_64/genassym.c
145
ASSYM(PCB_SIZE, sizeof(struct pcb));
sys/platform/pc64/x86_64/machdep.c
1480
struct pcb *pcb = td->td_pcb;
sys/platform/pc64/x86_64/machdep.c
1483
user_ldt_free(pcb);
sys/platform/pc64/x86_64/machdep.c
1499
if (pcb->pcb_flags & PCB_DBREGS) {
sys/platform/pc64/x86_64/machdep.c
1500
pcb->pcb_dr0 = 0;
sys/platform/pc64/x86_64/machdep.c
1501
pcb->pcb_dr1 = 0;
sys/platform/pc64/x86_64/machdep.c
1502
pcb->pcb_dr2 = 0;
sys/platform/pc64/x86_64/machdep.c
1503
pcb->pcb_dr3 = 0;
sys/platform/pc64/x86_64/machdep.c
1504
pcb->pcb_dr6 = 0;
sys/platform/pc64/x86_64/machdep.c
1505
pcb->pcb_dr7 = 0; /* JG set bit 10? */
sys/platform/pc64/x86_64/machdep.c
1506
if (pcb == td->td_pcb) {
sys/platform/pc64/x86_64/machdep.c
1514
pcb->pcb_flags &= ~PCB_DBREGS;
sys/platform/pc64/x86_64/machdep.c
1524
pcb->pcb_flags &= ~FP_SOFTFP;
sys/platform/pc64/x86_64/machdep.c
1539
pcb->pcb_fsbase = 0; /* Values loaded from PCB on switch */
sys/platform/pc64/x86_64/machdep.c
1540
pcb->pcb_gsbase = 0;
sys/platform/pc64/x86_64/machdep.c
1550
pcb->pcb_ds = _udatasel;
sys/platform/pc64/x86_64/machdep.c
1551
pcb->pcb_es = _udatasel;
sys/platform/pc64/x86_64/machdep.c
1552
pcb->pcb_fs = _udatasel;
sys/platform/pc64/x86_64/machdep.c
1553
pcb->pcb_gs = _udatasel;
sys/platform/pc64/x86_64/machdep.c
3106
struct pcb *pcb;
sys/platform/pc64/x86_64/machdep.c
3119
if (lp->lwp_thread == NULL || (pcb = lp->lwp_thread->td_pcb) == NULL)
sys/platform/pc64/x86_64/machdep.c
3121
dbregs->dr[0] = pcb->pcb_dr0;
sys/platform/pc64/x86_64/machdep.c
3122
dbregs->dr[1] = pcb->pcb_dr1;
sys/platform/pc64/x86_64/machdep.c
3123
dbregs->dr[2] = pcb->pcb_dr2;
sys/platform/pc64/x86_64/machdep.c
3124
dbregs->dr[3] = pcb->pcb_dr3;
sys/platform/pc64/x86_64/machdep.c
3127
dbregs->dr[6] = pcb->pcb_dr6;
sys/platform/pc64/x86_64/machdep.c
3128
dbregs->dr[7] = pcb->pcb_dr7;
sys/platform/pc64/x86_64/machdep.c
3145
struct pcb *pcb;
sys/platform/pc64/x86_64/machdep.c
3171
pcb = lp->lwp_thread->td_pcb;
sys/platform/pc64/x86_64/machdep.c
3215
pcb->pcb_dr0 = dbregs->dr[0];
sys/platform/pc64/x86_64/machdep.c
3216
pcb->pcb_dr1 = dbregs->dr[1];
sys/platform/pc64/x86_64/machdep.c
3217
pcb->pcb_dr2 = dbregs->dr[2];
sys/platform/pc64/x86_64/machdep.c
3218
pcb->pcb_dr3 = dbregs->dr[3];
sys/platform/pc64/x86_64/machdep.c
3219
pcb->pcb_dr6 = dbregs->dr[6];
sys/platform/pc64/x86_64/machdep.c
3220
pcb->pcb_dr7 = dbregs->dr[7];
sys/platform/pc64/x86_64/machdep.c
3222
pcb->pcb_flags |= PCB_DBREGS;
sys/platform/pc64/x86_64/mp_machdep.c
151
struct pcb stoppcbs[MAXCPU];
sys/platform/pc64/x86_64/pmap.c
2248
td->td_pcb = (struct pcb *)(td->td_kstack + td->td_kstack_size) - 1;
sys/platform/pc64/x86_64/pmap.c
2249
td->td_pcb = (struct pcb *)((intptr_t)td->td_pcb & ~(intptr_t)0xF);
sys/platform/pc64/x86_64/userldt.c
42
set_user_ldt (struct pcb *pcb)
sys/platform/pc64/x86_64/userldt.c
48
user_ldt_alloc (struct pcb *pcb, int len)
sys/platform/pc64/x86_64/userldt.c
54
user_ldt_free (struct pcb *pcb)
sys/platform/pc64/x86_64/userldt.c
56
if (pcb->pcb_ldt)
sys/platform/pc64/x86_64/vm_machdep.c
104
struct pcb *pcb2;
sys/platform/pc64/x86_64/vm_machdep.c
115
struct pcb *pcb1 = lp1->lwp_thread->td_pcb;
sys/platform/pc64/x86_64/vm_machdep.c
306
struct pcb *pcb;
sys/platform/pc64/x86_64/vm_machdep.c
308
pcb = td->td_pcb;
sys/platform/pc64/x86_64/vm_machdep.c
311
KKASSERT(pcb->pcb_ext == NULL);
sys/platform/pc64/x86_64/vm_machdep.c
316
if (pcb->pcb_flags & PCB_DBREGS) {
sys/platform/pc64/x86_64/vm_machdep.c
318
pcb->pcb_flags &= ~PCB_DBREGS;
sys/platform/vkernel64/include/pcb.h
86
void savectx(struct pcb *);
sys/platform/vkernel64/include/pcb_ext.h
60
struct pcb;
sys/platform/vkernel64/include/pcb_ext.h
62
void set_user_ldt (struct pcb *);
sys/platform/vkernel64/include/pcb_ext.h
63
struct pcb_ldt *user_ldt_alloc (struct pcb *, int);
sys/platform/vkernel64/include/pcb_ext.h
64
void user_ldt_free (struct pcb *);
sys/platform/vkernel64/platform/pmap.c
1006
td->td_pcb = (struct pcb *)(td->td_kstack + td->td_kstack_size) - 1;
sys/platform/vkernel64/x86_64/cpu_regs.c
550
struct pcb *pcb = td->td_pcb;
sys/platform/vkernel64/x86_64/cpu_regs.c
553
user_ldt_free(pcb);
sys/platform/vkernel64/x86_64/cpu_regs.c
568
if (pcb->pcb_flags & PCB_DBREGS) {
sys/platform/vkernel64/x86_64/cpu_regs.c
569
pcb->pcb_dr0 = 0;
sys/platform/vkernel64/x86_64/cpu_regs.c
570
pcb->pcb_dr1 = 0;
sys/platform/vkernel64/x86_64/cpu_regs.c
571
pcb->pcb_dr2 = 0;
sys/platform/vkernel64/x86_64/cpu_regs.c
572
pcb->pcb_dr3 = 0;
sys/platform/vkernel64/x86_64/cpu_regs.c
573
pcb->pcb_dr6 = 0;
sys/platform/vkernel64/x86_64/cpu_regs.c
574
pcb->pcb_dr7 = 0; /* JG set bit 10? */
sys/platform/vkernel64/x86_64/cpu_regs.c
575
if (pcb == td->td_pcb) {
sys/platform/vkernel64/x86_64/cpu_regs.c
583
pcb->pcb_flags &= ~PCB_DBREGS;
sys/platform/vkernel64/x86_64/cpu_regs.c
593
pcb->pcb_flags &= ~FP_SOFTFP;
sys/platform/vkernel64/x86_64/cpu_regs.c
610
pcb->pcb_fsbase = 0; /* Values loaded from PCB on switch */
sys/platform/vkernel64/x86_64/cpu_regs.c
611
pcb->pcb_gsbase = 0;
sys/platform/vkernel64/x86_64/genassym.c
100
ASSYM(PCB_DR3, offsetof(struct pcb, pcb_dr3));
sys/platform/vkernel64/x86_64/genassym.c
101
ASSYM(PCB_DR6, offsetof(struct pcb, pcb_dr6));
sys/platform/vkernel64/x86_64/genassym.c
102
ASSYM(PCB_DR7, offsetof(struct pcb, pcb_dr7));
sys/platform/vkernel64/x86_64/genassym.c
104
ASSYM(PCB_FLAGS, offsetof(struct pcb, pcb_flags));
sys/platform/vkernel64/x86_64/genassym.c
105
ASSYM(PCB_FSBASE, offsetof(struct pcb, pcb_fsbase));
sys/platform/vkernel64/x86_64/genassym.c
106
ASSYM(PCB_GSBASE, offsetof(struct pcb, pcb_gsbase));
sys/platform/vkernel64/x86_64/genassym.c
107
ASSYM(PCB_SAVEFPU, offsetof(struct pcb, pcb_save));
sys/platform/vkernel64/x86_64/genassym.c
87
ASSYM(PCB_R15, offsetof(struct pcb, pcb_r15));
sys/platform/vkernel64/x86_64/genassym.c
88
ASSYM(PCB_R14, offsetof(struct pcb, pcb_r14));
sys/platform/vkernel64/x86_64/genassym.c
89
ASSYM(PCB_R13, offsetof(struct pcb, pcb_r13));
sys/platform/vkernel64/x86_64/genassym.c
90
ASSYM(PCB_R12, offsetof(struct pcb, pcb_r12));
sys/platform/vkernel64/x86_64/genassym.c
91
ASSYM(PCB_RBP, offsetof(struct pcb, pcb_rbp));
sys/platform/vkernel64/x86_64/genassym.c
92
ASSYM(PCB_RSP, offsetof(struct pcb, pcb_rsp));
sys/platform/vkernel64/x86_64/genassym.c
93
ASSYM(PCB_RBX, offsetof(struct pcb, pcb_rbx));
sys/platform/vkernel64/x86_64/genassym.c
94
ASSYM(PCB_RIP, offsetof(struct pcb, pcb_rip));
sys/platform/vkernel64/x86_64/genassym.c
97
ASSYM(PCB_DR0, offsetof(struct pcb, pcb_dr0));
sys/platform/vkernel64/x86_64/genassym.c
98
ASSYM(PCB_DR1, offsetof(struct pcb, pcb_dr1));
sys/platform/vkernel64/x86_64/genassym.c
99
ASSYM(PCB_DR2, offsetof(struct pcb, pcb_dr2));
sys/platform/vkernel64/x86_64/userldt.c
42
set_user_ldt (struct pcb *pcb)
sys/platform/vkernel64/x86_64/userldt.c
48
user_ldt_alloc (struct pcb *pcb, int len)
sys/platform/vkernel64/x86_64/userldt.c
54
user_ldt_free (struct pcb *pcb)
sys/platform/vkernel64/x86_64/userldt.c
56
if (pcb->pcb_ldt)
sys/platform/vkernel64/x86_64/vm_machdep.c
258
struct pcb *pcb;
sys/platform/vkernel64/x86_64/vm_machdep.c
260
pcb = td->td_pcb;
sys/platform/vkernel64/x86_64/vm_machdep.c
263
KKASSERT(pcb->pcb_ext == NULL);
sys/platform/vkernel64/x86_64/vm_machdep.c
268
if (pcb->pcb_flags & PCB_DBREGS) {
sys/platform/vkernel64/x86_64/vm_machdep.c
270
pcb->pcb_flags &= ~PCB_DBREGS;
sys/platform/vkernel64/x86_64/vm_machdep.c
93
struct pcb *pcb2;
sys/platform/vkernel64/x86_64/vm_machdep.c
98
struct pcb *pcb1 = lp1->lwp_thread->td_pcb;
sys/sys/kerneldump.h
58
extern struct pcb dumppcb;
sys/sys/thread.h
293
struct pcb *td_pcb; /* points to pcb and top of kstack */
test/debug/wildcardinfo.c
151
struct inpcb pcb;
test/debug/wildcardinfo.c
162
kkread(kd, (intptr_t)node.ic_inp, &pcb, sizeof(pcb));
test/debug/wildcardinfo.c
164
inet_ntoa(pcb.inp_inc.inc_laddr),
test/debug/wildcardinfo.c
165
ntohs(pcb.inp_inc.inc_lport),
test/debug/wildcardinfo.c
166
inet_ntoa(pcb.inp_inc.inc_faddr),
test/debug/wildcardinfo.c
167
ntohs(pcb.inp_inc.inc_fport));
usr.bin/sockstat/sockstat.c
342
sock->pcb = xup->xu_unpp;
usr.bin/sockstat/sockstat.c
526
if (s->pcb == p)
usr.bin/sockstat/sockstat.c
78
void *pcb;