Lines Matching refs:scp

137 	struct dn_scp scp;  member
158 struct dn_scp *scp = DN_SK(sk); in dn_find_list() local
160 if (scp->addr.sdn_flags & SDF_WILD) in dn_find_list()
163 return &dn_sk_hash[le16_to_cpu(scp->addrloc) & DN_SK_HASH_MASK]; in dn_find_list()
177 struct dn_scp *scp = DN_SK(sk); in check_port() local
178 if (scp->addrloc == port) in check_port()
186 struct dn_scp *scp = DN_SK(sk); in port_alloc() local
195 scp->addrloc = cpu_to_le16(port); in port_alloc()
207 struct dn_scp *scp = DN_SK(sk); in dn_hash_sock() local
215 if (!scp->addrloc && !port_alloc(sk)) in dn_hash_sock()
267 struct dn_scp *scp = DN_SK(sk); in dn_rehash_sock() local
269 if (scp->addr.sdn_flags & SDF_WILD) in dn_rehash_sock()
374 struct dn_scp *scp = DN_SK(sk); in dn_sklist_find_listener() local
377 if (scp->addr.sdn_objnum) { in dn_sklist_find_listener()
378 if (scp->addr.sdn_objnum != addr->sdn_objnum) in dn_sklist_find_listener()
383 if (scp->addr.sdn_objnamel != addr->sdn_objnamel) in dn_sklist_find_listener()
385 if (memcmp(scp->addr.sdn_objname, addr->sdn_objname, le16_to_cpu(addr->sdn_objnamel)) != 0) in dn_sklist_find_listener()
409 struct dn_scp *scp; in dn_find_by_skb() local
413 scp = DN_SK(sk); in dn_find_by_skb()
414 if (cb->src != dn_saddr2dn(&scp->peer)) in dn_find_by_skb()
416 if (cb->dst_port != scp->addrloc) in dn_find_by_skb()
418 if (scp->addrrem && (cb->src_port != scp->addrrem)) in dn_find_by_skb()
433 struct dn_scp *scp = DN_SK(sk); in dn_destruct() local
435 skb_queue_purge(&scp->data_xmit_queue); in dn_destruct()
436 skb_queue_purge(&scp->other_xmit_queue); in dn_destruct()
437 skb_queue_purge(&scp->other_receive_queue); in dn_destruct()
466 struct dn_scp *scp; in dn_alloc_sock() local
486 scp = DN_SK(sk); in dn_alloc_sock()
487 scp->state = DN_O; /* Open */ in dn_alloc_sock()
488 scp->numdat = 1; /* Next data seg to tx */ in dn_alloc_sock()
489 scp->numoth = 1; /* Next oth data to tx */ in dn_alloc_sock()
490 scp->ackxmt_dat = 0; /* Last data seg ack'ed */ in dn_alloc_sock()
491 scp->ackxmt_oth = 0; /* Last oth data ack'ed */ in dn_alloc_sock()
492 scp->ackrcv_dat = 0; /* Highest data ack recv*/ in dn_alloc_sock()
493 scp->ackrcv_oth = 0; /* Last oth data ack rec*/ in dn_alloc_sock()
494 scp->flowrem_sw = DN_SEND; in dn_alloc_sock()
495 scp->flowloc_sw = DN_SEND; in dn_alloc_sock()
496 scp->flowrem_dat = 0; in dn_alloc_sock()
497 scp->flowrem_oth = 1; in dn_alloc_sock()
498 scp->flowloc_dat = 0; in dn_alloc_sock()
499 scp->flowloc_oth = 1; in dn_alloc_sock()
500 scp->services_rem = 0; in dn_alloc_sock()
501 scp->services_loc = 1 | NSP_FC_NONE; in dn_alloc_sock()
502 scp->info_rem = 0; in dn_alloc_sock()
503 scp->info_loc = 0x03; /* NSP version 4.1 */ in dn_alloc_sock()
504 scp->segsize_rem = 230 - DN_MAX_NSP_DATA_HEADER; /* Default: Updated by remote segsize */ in dn_alloc_sock()
505 scp->nonagle = 0; in dn_alloc_sock()
506 scp->multi_ireq = 1; in dn_alloc_sock()
507 scp->accept_mode = ACC_IMMED; in dn_alloc_sock()
508 scp->addr.sdn_family = AF_DECnet; in dn_alloc_sock()
509 scp->peer.sdn_family = AF_DECnet; in dn_alloc_sock()
510 scp->accessdata.acc_accl = 5; in dn_alloc_sock()
511 memcpy(scp->accessdata.acc_acc, "LINUX", 5); in dn_alloc_sock()
513 scp->max_window = NSP_MAX_WINDOW; in dn_alloc_sock()
514 scp->snd_window = NSP_MIN_WINDOW; in dn_alloc_sock()
515 scp->nsp_srtt = NSP_INITIAL_SRTT; in dn_alloc_sock()
516 scp->nsp_rttvar = NSP_INITIAL_RTTVAR; in dn_alloc_sock()
517 scp->nsp_rxtshift = 0; in dn_alloc_sock()
519 skb_queue_head_init(&scp->data_xmit_queue); in dn_alloc_sock()
520 skb_queue_head_init(&scp->other_xmit_queue); in dn_alloc_sock()
521 skb_queue_head_init(&scp->other_receive_queue); in dn_alloc_sock()
523 scp->persist = 0; in dn_alloc_sock()
524 scp->persist_fxn = NULL; in dn_alloc_sock()
525 scp->keepalive = 10 * HZ; in dn_alloc_sock()
526 scp->keepalive_fxn = dn_keepalive; in dn_alloc_sock()
539 struct dn_scp *scp = DN_SK(sk); in dn_keepalive() local
546 if (skb_queue_empty(&scp->other_xmit_queue)) in dn_keepalive()
560 struct dn_scp *scp = DN_SK(sk); in dn_destroy_timer() local
562 scp->persist = dn_nsp_persist(sk); in dn_destroy_timer()
564 switch (scp->state) { in dn_destroy_timer()
567 if (scp->nsp_rxtshift >= decnet_di_count) in dn_destroy_timer()
568 scp->state = DN_CN; in dn_destroy_timer()
573 if (scp->nsp_rxtshift >= decnet_dr_count) in dn_destroy_timer()
574 scp->state = DN_DRC; in dn_destroy_timer()
578 if (scp->nsp_rxtshift < decnet_dn_count) { in dn_destroy_timer()
586 scp->persist = (HZ * decnet_time_wait); in dn_destroy_timer()
591 if (time_after_eq(jiffies, scp->stamp + HZ * decnet_time_wait)) { in dn_destroy_timer()
602 struct dn_scp *scp = DN_SK(sk); in dn_destroy_sock() local
604 scp->nsp_rxtshift = 0; /* reset back off */ in dn_destroy_sock()
613 switch (scp->state) { in dn_destroy_sock()
617 scp->persist_fxn = dn_destroy_timer; in dn_destroy_sock()
618 scp->persist = dn_nsp_persist(sk); in dn_destroy_sock()
621 scp->state = DN_DR; in dn_destroy_sock()
624 scp->state = DN_DI; in dn_destroy_sock()
639 scp->persist_fxn = dn_destroy_timer; in dn_destroy_sock()
640 scp->persist = dn_nsp_persist(sk); in dn_destroy_sock()
720 struct dn_scp *scp = DN_SK(sk); in dn_bind() local
765 memcpy(&scp->addr, saddr, addr_len); in dn_bind()
781 struct dn_scp *scp = DN_SK(sk); in dn_auto_bind() local
786 scp->addr.sdn_flags = 0; in dn_auto_bind()
787 scp->addr.sdn_objnum = 0; in dn_auto_bind()
793 if ((scp->accessdata.acc_accl != 0) && in dn_auto_bind()
794 (scp->accessdata.acc_accl <= 12)) { in dn_auto_bind()
796 scp->addr.sdn_objnamel = cpu_to_le16(scp->accessdata.acc_accl); in dn_auto_bind()
797 memcpy(scp->addr.sdn_objname, scp->accessdata.acc_acc, le16_to_cpu(scp->addr.sdn_objnamel)); in dn_auto_bind()
799 scp->accessdata.acc_accl = 0; in dn_auto_bind()
800 memset(scp->accessdata.acc_acc, 0, 40); in dn_auto_bind()
804 scp->addr.sdn_add.a_len = cpu_to_le16(2); in dn_auto_bind()
805 rv = dn_dev_bind_default((__le16 *)scp->addr.sdn_add.a_addr); in dn_auto_bind()
817 struct dn_scp *scp = DN_SK(sk); in dn_confirm_accept() local
821 if (scp->state != DN_CR) in dn_confirm_accept()
824 scp->state = DN_CC; in dn_confirm_accept()
825 scp->segsize_loc = dst_metric_advmss(__sk_dst_get(sk)); in dn_confirm_accept()
831 if (scp->state == DN_CC) in dn_confirm_accept()
835 if (scp->state == DN_RUN) in dn_confirm_accept()
851 } else if (scp->state != DN_CC) { in dn_confirm_accept()
859 struct dn_scp *scp = DN_SK(sk); in dn_wait_run() local
863 if (scp->state == DN_RUN) in dn_wait_run()
872 if (scp->state == DN_CI || scp->state == DN_CC) in dn_wait_run()
876 if (scp->state == DN_RUN) in dn_wait_run()
893 } else if (scp->state != DN_CI && scp->state != DN_CC) { in dn_wait_run()
902 struct dn_scp *scp = DN_SK(sk); in __dn_connect() local
912 if (scp->state == DN_RUN) { in __dn_connect()
917 if (scp->state != DN_CI && scp->state != DN_CC) { in __dn_connect()
925 if (scp->state != DN_O) in __dn_connect()
941 memcpy(&scp->peer, addr, sizeof(struct sockaddr_dn)); in __dn_connect()
946 fld.daddr = dn_saddr2dn(&scp->peer); in __dn_connect()
947 fld.saddr = dn_saddr2dn(&scp->addr); in __dn_connect()
948 dn_sk_ports_copy(&fld, scp); in __dn_connect()
955 scp->state = DN_CI; in __dn_connect()
956 scp->segsize_loc = dst_metric_advmss(dst); in __dn_connect()
983 struct dn_scp *scp = DN_SK(sk); in dn_check_state() local
985 switch (scp->state) { in dn_check_state()
1179 struct dn_scp *scp = DN_SK(sk); in dn_getname() local
1186 scp->accept_mode == ACC_IMMED) { in dn_getname()
1191 memcpy(sa, &scp->peer, sizeof(struct sockaddr_dn)); in dn_getname()
1193 memcpy(sa, &scp->addr, sizeof(struct sockaddr_dn)); in dn_getname()
1205 struct dn_scp *scp = DN_SK(sk); in dn_poll() local
1208 if (!skb_queue_empty_lockless(&scp->other_receive_queue)) in dn_poll()
1217 struct dn_scp *scp = DN_SK(sk); in dn_ioctl() local
1231 val = !skb_queue_empty(&scp->other_receive_queue); in dn_ioctl()
1232 if (scp->state != DN_RUN) in dn_ioctl()
1246 skb = skb_peek(&scp->other_receive_queue); in dn_ioctl()
1294 struct dn_scp *scp = DN_SK(sk); in dn_shutdown() local
1307 if (scp->state == DN_O) in dn_shutdown()
1344 struct dn_scp *scp = DN_SK(sk); in __dn_setsockopt() local
1370 if ((scp->state != DN_O) && (scp->state != DN_CR)) in __dn_setsockopt()
1379 memcpy(&scp->conndata_out, &u.opt, optlen); in __dn_setsockopt()
1384 scp->accept_mode == ACC_IMMED) in __dn_setsockopt()
1393 memcpy(&scp->discdata_out, &u.opt, optlen); in __dn_setsockopt()
1399 if (scp->state != DN_O) in __dn_setsockopt()
1410 memcpy(&scp->accessdata, &u.acc, optlen); in __dn_setsockopt()
1416 if (scp->state != DN_O) in __dn_setsockopt()
1425 scp->accept_mode = (unsigned char)u.mode; in __dn_setsockopt()
1429 if (scp->state != DN_CR) in __dn_setsockopt()
1436 if (scp->state != DN_CR) in __dn_setsockopt()
1439 scp->state = DN_DR; in __dn_setsockopt()
1451 scp->max_window = u.win; in __dn_setsockopt()
1452 if (scp->snd_window > u.win) in __dn_setsockopt()
1453 scp->snd_window = u.win; in __dn_setsockopt()
1459 if (scp->nonagle == TCP_NAGLE_CORK) in __dn_setsockopt()
1461 scp->nonagle = (u.val == 0) ? 0 : TCP_NAGLE_OFF; in __dn_setsockopt()
1468 if (scp->nonagle == TCP_NAGLE_OFF) in __dn_setsockopt()
1470 scp->nonagle = (u.val == 0) ? 0 : TCP_NAGLE_CORK; in __dn_setsockopt()
1481 scp->services_loc = u.services; in __dn_setsockopt()
1489 scp->info_loc = u.info; in __dn_setsockopt()
1531 struct dn_scp *scp = DN_SK(sk); in __dn_getsockopt() local
1544 r_data = &scp->conndata_in; in __dn_getsockopt()
1550 r_data = &scp->discdata_in; in __dn_getsockopt()
1556 r_data = &scp->accessdata; in __dn_getsockopt()
1562 r_data = &scp->accept_mode; in __dn_getsockopt()
1585 link.idn_segsize = scp->segsize_rem; in __dn_getsockopt()
1592 r_data = &scp->max_window; in __dn_getsockopt()
1598 val = (scp->nonagle == TCP_NAGLE_OFF); in __dn_getsockopt()
1605 val = (scp->nonagle == TCP_NAGLE_CORK); in __dn_getsockopt()
1612 r_data = &scp->services_rem; in __dn_getsockopt()
1618 r_data = &scp->info_rem; in __dn_getsockopt()
1674 struct dn_scp *scp = DN_SK(sk); in dn_recvmsg() local
1706 queue = &scp->other_receive_queue; in dn_recvmsg()
1721 if (!skb_queue_empty(&scp->other_receive_queue)) { in dn_recvmsg()
1724 if (!scp->other_report) { in dn_recvmsg()
1725 scp->other_report = 1; in dn_recvmsg()
1731 if (scp->state != DN_RUN) in dn_recvmsg()
1779 if ((scp->flowloc_sw == DN_DONTSEND) && !dn_congested(sk)) { in dn_recvmsg()
1780 scp->flowloc_sw = DN_SEND; in dn_recvmsg()
1811 memcpy(msg->msg_name, &scp->peer, sizeof(struct sockaddr_dn)); in dn_recvmsg()
1821 static inline int dn_queue_too_long(struct dn_scp *scp, struct sk_buff_head *queue, int flags) in dn_queue_too_long() argument
1823 unsigned char fctype = scp->services_rem & NSP_FC_MASK; in dn_queue_too_long()
1824 if (skb_queue_len(queue) >= scp->snd_window) in dn_queue_too_long()
1828 if (scp->flowrem_oth == 0) in dn_queue_too_long()
1831 if (scp->flowrem_dat == 0) in dn_queue_too_long()
1871 struct dn_scp *scp = DN_SK(sk); in dn_current_mss() local
1872 int mss_now = min_t(int, scp->segsize_loc, scp->segsize_rem); in dn_current_mss()
1909 struct dn_scp *scp = DN_SK(sk); in dn_sendmsg() local
1911 struct sk_buff_head *queue = &scp->data_xmit_queue; in dn_sendmsg()
1959 mss = scp->segsize_rem; in dn_sendmsg()
1960 fctype = scp->services_rem & NSP_FC_MASK; in dn_sendmsg()
1965 queue = &scp->other_xmit_queue; in dn_sendmsg()
1972 scp->persist_fxn = dn_nsp_xmit_timeout; in dn_sendmsg()
1996 if (dn_queue_too_long(scp, queue, flags)) { in dn_sendmsg()
2007 !dn_queue_too_long(scp, queue, flags), &wait); in dn_sendmsg()
2040 scp->flowrem_oth--; in dn_sendmsg()
2043 if (scp->seg_total == 0) in dn_sendmsg()
2046 scp->seg_total += len; in dn_sendmsg()
2050 scp->seg_total = 0; in dn_sendmsg()
2052 scp->flowrem_dat--; in dn_sendmsg()
2055 scp->flowrem_dat--; in dn_sendmsg()
2062 scp->persist = dn_nsp_persist(sk); in dn_sendmsg()
2261 struct dn_scp *scp = DN_SK(sk); in dn_socket_format_entry() local
2267 dn_printable_object(&scp->addr, local_object); in dn_socket_format_entry()
2268 dn_printable_object(&scp->peer, remote_object); in dn_socket_format_entry()
2273 dn_addr2asc(le16_to_cpu(dn_saddr2dn(&scp->addr)), buf1), in dn_socket_format_entry()
2274 scp->addrloc, in dn_socket_format_entry()
2275 scp->numdat, in dn_socket_format_entry()
2276 scp->numoth, in dn_socket_format_entry()
2277 scp->ackxmt_dat, in dn_socket_format_entry()
2278 scp->ackxmt_oth, in dn_socket_format_entry()
2279 scp->flowloc_sw, in dn_socket_format_entry()
2281 dn_addr2asc(le16_to_cpu(dn_saddr2dn(&scp->peer)), buf2), in dn_socket_format_entry()
2282 scp->addrrem, in dn_socket_format_entry()
2283 scp->numdat_rcv, in dn_socket_format_entry()
2284 scp->numoth_rcv, in dn_socket_format_entry()
2285 scp->ackrcv_dat, in dn_socket_format_entry()
2286 scp->ackrcv_oth, in dn_socket_format_entry()
2287 scp->flowrem_sw, in dn_socket_format_entry()
2289 dn_state2asc(scp->state), in dn_socket_format_entry()
2290 ((scp->accept_mode == ACC_IMMED) ? "IMMED" : "DEFER")); in dn_socket_format_entry()