Lines Matching defs:vcc

46 static void svc_disconnect(struct atm_vcc *vcc)
50 struct sock *sk = sk_atm(vcc);
52 pr_debug("%p\n", vcc);
53 if (test_bit(ATM_VF_REGIS, &vcc->flags)) {
54 sigd_enq(vcc, as_close, NULL, NULL, NULL);
57 if (test_bit(ATM_VF_RELEASED, &vcc->flags) || !sigd)
66 atm_return(vcc, skb->truesize);
68 sigd_enq2(NULL, as_reject, vcc, NULL, NULL, &vcc->qos, 0);
71 clear_bit(ATM_VF_REGIS, &vcc->flags);
78 struct atm_vcc *vcc;
81 vcc = ATM_SD(sock);
82 pr_debug("%p\n", vcc);
83 clear_bit(ATM_VF_READY, &vcc->flags);
89 svc_disconnect(vcc);
101 struct atm_vcc *vcc;
115 vcc = ATM_SD(sock);
121 clear_bit(ATM_VF_BOUND, &vcc->flags);
124 if (!test_bit(ATM_VF_HASQOS, &vcc->flags)) {
128 vcc->local = *addr;
129 set_bit(ATM_VF_WAITING, &vcc->flags);
130 sigd_enq(vcc, as_bind, NULL, NULL, &vcc->local);
133 if (!test_bit(ATM_VF_WAITING, &vcc->flags) || !sigd)
138 clear_bit(ATM_VF_REGIS, &vcc->flags); /* doesn't count */
144 set_bit(ATM_VF_BOUND, &vcc->flags);
157 struct atm_vcc *vcc = ATM_SD(sock);
160 pr_debug("%p\n", vcc);
175 if (test_bit(ATM_VF_WAITING, &vcc->flags)) {
191 if (!test_bit(ATM_VF_HASQOS, &vcc->flags)) {
195 if (vcc->qos.txtp.traffic_class == ATM_ANYCLASS ||
196 vcc->qos.rxtp.traffic_class == ATM_ANYCLASS) {
200 if (!vcc->qos.txtp.traffic_class &&
201 !vcc->qos.rxtp.traffic_class) {
205 vcc->remote = *addr;
206 set_bit(ATM_VF_WAITING, &vcc->flags);
207 sigd_enq(vcc, as_connect, NULL, NULL, &vcc->remote);
215 while (test_bit(ATM_VF_WAITING, &vcc->flags) && sigd) {
235 sigd_enq(vcc, as_close, NULL, NULL, NULL);
236 while (test_bit(ATM_VF_WAITING, &vcc->flags) && sigd) {
242 while (!test_bit(ATM_VF_RELEASED, &vcc->flags) &&
248 clear_bit(ATM_VF_REGIS, &vcc->flags);
249 clear_bit(ATM_VF_RELEASED, &vcc->flags);
250 clear_bit(ATM_VF_CLOSE, &vcc->flags);
268 vcc->qos.txtp.max_pcr = SELECT_TOP_PCR(vcc->qos.txtp);
269 vcc->qos.txtp.pcr = 0;
270 vcc->qos.txtp.min_pcr = 0;
272 error = vcc_connect(sock, vcc->itf, vcc->vpi, vcc->vci);
276 (void)svc_disconnect(vcc);
286 struct atm_vcc *vcc = ATM_SD(sock);
289 pr_debug("%p\n", vcc);
292 if (test_bit(ATM_VF_SESSION, &vcc->flags)) {
296 if (test_bit(ATM_VF_LISTEN, &vcc->flags)) {
300 set_bit(ATM_VF_WAITING, &vcc->flags);
301 sigd_enq(vcc, as_listen, NULL, NULL, &vcc->local);
304 if (!test_bit(ATM_VF_WAITING, &vcc->flags) || !sigd)
313 set_bit(ATM_VF_LISTEN, &vcc->flags);
432 int svc_change_qos(struct atm_vcc *vcc, struct atm_qos *qos)
434 struct sock *sk = sk_atm(vcc);
437 set_bit(ATM_VF_WAITING, &vcc->flags);
438 sigd_enq2(vcc, as_modify, NULL, NULL, &vcc->local, qos, 0);
441 if (!test_bit(ATM_VF_WAITING, &vcc->flags) ||
442 test_bit(ATM_VF_RELEASED, &vcc->flags) || !sigd) {
457 struct atm_vcc *vcc = ATM_SD(sock);
467 if (copy_from_sockptr(&vcc->sap, optval, optlen)) {
471 set_bit(ATM_VF_HASSAP, &vcc->flags);
483 set_bit(ATM_VF_SESSION, &vcc->flags);
485 clear_bit(ATM_VF_SESSION, &vcc->flags);
531 struct atm_vcc *vcc = ATM_SD(sock);
535 set_bit(ATM_VF_WAITING, &vcc->flags);
536 sigd_enq(vcc, as_addparty, NULL, NULL,
545 if (!test_bit(ATM_VF_WAITING, &vcc->flags) || !sigd)
560 struct atm_vcc *vcc = ATM_SD(sock);
564 set_bit(ATM_VF_WAITING, &vcc->flags);
565 sigd_enq2(vcc, as_dropparty, NULL, NULL, NULL, NULL, ep_ref);
568 if (!test_bit(ATM_VF_WAITING, &vcc->flags) || !sigd)
587 struct atm_vcc *vcc = ATM_SD(sock);
591 if (!test_bit(ATM_VF_SESSION, &vcc->flags))
599 if (!test_bit(ATM_VF_SESSION, &vcc->flags))