• Home
  • History
  • Annotate
  • Raw
  • Download
  • only in /netgear-WNDR4500v2-V1.0.0.60_1.0.38/src/linux/linux-2.6/net/atm/

Lines Matching defs:vcc

61 static void modify_qos(struct atm_vcc *vcc,struct atmsvc_msg *msg)
65 if (test_bit(ATM_VF_RELEASED,&vcc->flags) ||
66 !test_bit(ATM_VF_READY,&vcc->flags))
69 if (!vcc->dev->ops->change_qos) msg->reply = -EOPNOTSUPP;
72 msg->reply = vcc->dev->ops->change_qos(vcc,&msg->qos,
87 static int sigd_send(struct atm_vcc *vcc,struct sk_buff *skb)
94 atomic_sub(skb->truesize, &sk_atm(vcc)->sk_wmem_alloc);
96 (unsigned long) msg->vcc);
97 vcc = *(struct atm_vcc **) &msg->vcc;
98 sk = sk_atm(vcc);
103 clear_bit(ATM_VF_WAITING, &vcc->flags);
104 if (!*vcc->local.sas_addr.prv &&
105 !*vcc->local.sas_addr.pub) {
106 vcc->local.sas_family = AF_ATMSVC;
107 memcpy(vcc->local.sas_addr.prv,
109 memcpy(vcc->local.sas_addr.pub,
112 session_vcc = vcc->session ? vcc->session : vcc;
121 clear_bit(ATM_VF_REGIS,&vcc->flags);
122 clear_bit(ATM_VF_READY,&vcc->flags);
124 clear_bit(ATM_VF_WAITING, &vcc->flags);
127 vcc = *(struct atm_vcc **) &msg->listen_vcc;
128 sk = sk_atm(vcc);
132 sigd_enq(NULL,as_reject,vcc,NULL,NULL);
144 set_bit(ATM_VF_RELEASED,&vcc->flags);
145 vcc_release_async(vcc, msg->reply);
148 modify_qos(vcc,msg);
153 clear_bit(ATM_VF_WAITING, &vcc->flags);
167 void sigd_enq2(struct atm_vcc *vcc,enum atmsvc_msg_type type,
175 DPRINTK("sigd_enq %d (0x%p)\n",(int) type,vcc);
181 *(struct atm_vcc **) &msg->vcc = vcc;
185 if (vcc) msg->sap = vcc->sap;
187 if (vcc) msg->local = vcc->local;
189 if (vcc) {
190 if (type == as_connect && test_bit(ATM_VF_SESSION, &vcc->flags))
195 if (vcc) set_bit(ATM_VF_REGIS,&vcc->flags);
199 void sigd_enq(struct atm_vcc *vcc,enum atmsvc_msg_type type,
203 sigd_enq2(vcc,type,listen_vcc,pvc,svc,vcc ? &vcc->qos : NULL,0);
208 static void purge_vcc(struct atm_vcc *vcc)
210 if (sk_atm(vcc)->sk_family == PF_ATMSVC &&
211 !test_bit(ATM_VF_META, &vcc->flags)) {
212 set_bit(ATM_VF_RELEASED, &vcc->flags);
213 clear_bit(ATM_VF_REGIS, &vcc->flags);
214 vcc_release_async(vcc, -EUNATCH);
219 static void sigd_close(struct atm_vcc *vcc)
227 if (skb_peek(&sk_atm(vcc)->sk_receive_queue))
229 skb_queue_purge(&sk_atm(vcc)->sk_receive_queue);
236 struct atm_vcc *vcc = atm_sk(s);
238 purge_vcc(vcc);
259 int sigd_attach(struct atm_vcc *vcc)
263 sigd = vcc;
264 vcc->dev = &sigd_dev;
265 vcc_insert_socket(sk_atm(vcc));
266 set_bit(ATM_VF_META,&vcc->flags);
267 set_bit(ATM_VF_READY,&vcc->flags);