Lines Matching refs:ddp

59 #include <netat/ddp.h>
84 snmpStats_t snmpStats; /* snmp ddp & echo stats */
351 dPrintf(D_M_DDP, D_L_STARTUP, ("ddp:adding ifID_table[%d]\n", port));
355 ifID->ifPort = port; /* set ddp port # in ifID */
480 *ddp = (at_ddp_t *)gbuf_rptr(m),
484 if (UAS_VALUE(ddp->checksum)) {
486 UAS_ASSIGN_HTON(ddp->checksum, tmp);
494 NET_NET(tmp_ddp->src_net, ddp->src_net);
495 tmp_ddp->src_node = ddp->src_node;
496 tmp_ddp->src_socket = ddp->src_socket;
499 UAS_ASSIGN_HTON(ddp->checksum, tmp);
517 * Called to queue a atp/ddp data packet on the network interface.
529 register at_ddp_t *ddp;
548 ddp = (at_ddp_t *)gbuf_rptr(m);
558 if ((ddp->dst_socket > (unsigned) (DDP_SOCKET_LAST + 1)) ||
559 (ddp->dst_socket < DDP_SOCKET_1st_RESERVED)) {
562 ddp->dst_socket));
580 DDPLEN_ASSIGN(ddp, len);
581 ddp->hopcount =
582 ddp->unused = 0;
591 dst_net = NET_VALUE(ddp->dst_net);
597 if ((ddp->dst_node == 0xfe) &&
602 NET_ASSIGN(ddp->dst_net, ifID_home->ifARouter.s_net);
604 ddp->dst_node = ifID_home->ifARouter.s_node;
607 if (MULTIHOME_MODE && (ifIDTmp = forUs(ddp))) {
615 loop = ((ddp->dst_node == ifID->ifThisNode.s_node) &&
622 NET_ASSIGN(ddp->src_net, ifID->ifThisNode.s_net);
623 ddp->src_node = ifID->ifThisNode.s_node;
625 ddp->src_socket = src_socket;
629 NET_VALUE(ddp->dst_net),
630 ddp->dst_node,
637 ddp->src_socket, ddp->dst_socket));
646 if ((ddp->dst_socket == ZIP_SOCKET) &&
648 ddp->src_socket = src_socket;
726 ddp->src_node = ifID->ifThisNode.s_node;
727 NET_ASSIGN(ddp->src_net, ifID->ifThisNode.s_net);
729 ddp->src_socket = src_socket;
749 at_dest.atalk_node = ddp->dst_node;
771 ddp->src_node = ifID->ifThisNode.s_node;
772 NET_ASSIGN(ddp->src_net, ifID->ifThisNode.s_net);
776 ddp->src_node = ifID_home->ifThisNode.s_node;
777 NET_ASSIGN(ddp->src_net, ifID_home->ifThisNode.s_net);
779 ddp->src_socket = src_socket;
783 dst_net, ddp->dst_node, ddp->dst_socket, ifID->ifName));
795 /* the incoming frame is of the form {flag, address, ddp...}
837 /* At this point, rptr points to ddp header for sure */
857 * we don't want elap to be looking into ddp header, so
878 register at_ddp_t *ddp; /* DDP header */
906 * stripped in the lap level immediately below ddp
923 * form {extended ddp,...}. The packet is meant to go
930 * the form {ddp,...}.
941 * {extended ddp, ... }.
943 ddp = (at_ddp_t *)gbuf_rptr(mp);
944 len = DDPLEN_VALUE(ddp);
950 ("Length problems, ddp length %d, buffer length %d",
965 ("Length problems, ddp length %d, buffer length %d",
973 socket = ddp->dst_socket;
984 ddp->dst_socket));
992 if (UAS_VALUE(ddp->checksum) &&
993 (UAS_VALUE_NTOH(ddp->checksum) != ddp_checksum(mp, 4))) {
996 ddp_checksum(mp, 4), UAS_VALUE_NTOH(ddp->checksum)));
1025 dst_net = NET_VALUE(ddp->dst_net);
1028 forUs(ddp) ||
1030 ((ddp->dst_node == 255) &&
1041 if (ddp->type == DDP_ATP) {
1047 } else if (ddp->type == DDP_ADSP) {
1060 (gref->ddptype == 0 || gref->ddptype == ddp->type)) {
1067 ddp_in.sat_addr.s_net = NET_VALUE(ddp->src_net);
1068 ddp_in.sat_addr.s_node = ddp->src_node;
1069 ddp_in.sat_port = ddp->src_socket;
1105 ifID->ifPort, ddp->dst_socket));
1129 * address found in the ddp packet... This is the trick about routing, the
1142 register at_ddp_t *ddp;
1153 ddp = (at_ddp_t *)gbuf_rptr(mp);
1189 if ((ddp->dst_node == ifID->ifThisNode.s_node) &&
1190 (NET_VALUE(ddp->dst_net) == ifID->ifThisNode.s_net)) {
1193 ifID->ifPort, ddp->dst_socket));
1195 UAS_ASSIGN(ddp->checksum, 0);
1207 ifID->ifPort, NET_VALUE(ddp->dst_net), ddp->dst_node, router_net,
1216 ifID->ifPort, NET_VALUE(ddp->dst_net), ddp->dst_node));
1234 /* the incoming frame is of the form {flag, address, ddp...}
1277 /* At this point, rptr points to ddp header for sure */
1297 * we don't want elap to be looking into ddp header, so
1403 at_ifaddr_t *forUs(ddp)
1404 register at_ddp_t *ddp;
1409 if ((ddp->dst_node == ifID->ifThisNode.s_node) &&
1410 (NET_VALUE(ddp->dst_net) == ifID->ifThisNode.s_net)