📄 dhcpccommonlib.c
字号:
break; case _DHCP_MAX_DGRAM_SIZE_TAG: /* Option Tag 22 */ bcopy (pData, (char *)&pOptList->tag22, sizeof (USHORT)); break; case _DHCP_IF_MTU_TAG: /* Option Tag 26 */ bcopy (pData, (char *)&pOptList->tag26, sizeof (USHORT)); break; /* 4 byte values */ case _DHCP_SUBNET_MASK_TAG: /* Option Tag 1 */ bcopy (pData, (char *)&pOptList->tag1, sizeof (ULONG)); break; case _DHCP_TIME_OFFSET_TAG: /* Option Tag 2 */ bcopy (pData, (char *)&pOptList->tag2, sizeof (long)); break; case _DHCP_SWAP_SERVER_TAG: /* Option Tag 16 */ bcopy (pData, (char *)&pOptList->tag16, sizeof (ULONG)); break; case _DHCP_MTU_AGING_TIMEOUT_TAG: /* Option Tag 24 */ bcopy (pData, (char *)&pOptList->tag24, sizeof (ULONG)); break; case _DHCP_BRDCAST_ADDR_TAG: /* Option Tag 28 */ bcopy (pData, (char *)&pOptList->tag28, sizeof (ULONG)); break; case _DHCP_ROUTER_SOLICIT_TAG: /* Option Tag 32 */ bcopy (pData, (char *)&pOptList->tag32, sizeof (ULONG)); break; case _DHCP_ARP_CACHE_TIMEOUT_TAG: /* Option Tag 35 */ bcopy (pData, (char *)&pOptList->tag35, sizeof (ULONG)); break; case _DHCP_KEEPALIVE_INTERVAL_TAG: /* Option Tag 38 */ bcopy (pData, (char *)&pOptList->tag38, sizeof (ULONG)); break; case _DHCP_REQUEST_IPADDR_TAG: /* Option Tag 50 */ /* * This option is stored separately since it is not * always included in the client's initial message. */ bcopy (pData, (char *)&pReqSpec->ipaddr.s_addr, sizeof (ULONG)); break; case _DHCP_LEASE_TIME_TAG: /* Option Tag 51 */ bcopy (pData, (char *)&pOptList->tag51, sizeof (ULONG)); break; case _DHCP_T1_TAG: /* Option Tag 58 */ bcopy (pData, (char *)&pOptList->tag58, sizeof (ULONG)); break; case _DHCP_T2_TAG: /* Option Tag 59 */ bcopy (pData, (char *)&pOptList->tag59, sizeof (ULONG)); break; /* * Variable-length lists. Add new entry or merge. * Store tag value and length before option body. */ case _DHCP_MTU_PLATEAU_TABLE_TAG: /* Option Tag 25 */ pDest = dhcpcOptionMerge (option, pOptList->pTag25, pData, length); if (pDest == NULL) { errno = S_dhcpcLib_OPTION_NOT_STORED; return (ERROR); } else pOptList->pTag25 = pDest; break; case _DHCP_ROUTER_TAG: /* Option Tag 3 */ pDest = dhcpcOptionMerge (option, pOptList->pTag3, pData, length); if (pDest == NULL) { errno = S_dhcpcLib_OPTION_NOT_STORED; return (ERROR); } else pOptList->pTag3 = pDest; break; case _DHCP_TIME_SERVER_TAG: /* Option Tag 4 */ pDest = dhcpcOptionMerge (option, pOptList->pTag4, pData, length); if (pDest == NULL) { errno = S_dhcpcLib_OPTION_NOT_STORED; return (ERROR); } else pOptList->pTag4 = pDest; break; case _DHCP_NAME_SERVER_TAG: /* Option Tag 5 */ pDest = dhcpcOptionMerge (option, pOptList->pTag5, pData, length); if (pDest == NULL) { errno = S_dhcpcLib_OPTION_NOT_STORED; return (ERROR); } else pOptList->pTag5 = pDest; break; case _DHCP_DNS_SERVER_TAG: /* Option Tag 6 */ pDest = dhcpcOptionMerge (option, pOptList->pTag6, pData, length); if (pDest == NULL) { errno = S_dhcpcLib_OPTION_NOT_STORED; return (ERROR); } else pOptList->pTag6 = pDest; break; case _DHCP_LOG_SERVER_TAG: /* Option Tag 7 */ pDest = dhcpcOptionMerge (option, pOptList->pTag7, pData, length); if (pDest == NULL) { errno = S_dhcpcLib_OPTION_NOT_STORED; return (ERROR); } else pOptList->pTag7 = pDest; break; case _DHCP_COOKIE_SERVER_TAG: /* Option Tag 8 */ pDest = dhcpcOptionMerge (option, pOptList->pTag8, pData, length); if (pDest == NULL) { errno = S_dhcpcLib_OPTION_NOT_STORED; return (ERROR); } else pOptList->pTag8 = pDest; break; case _DHCP_LPR_SERVER_TAG: /* Option Tag 9 */ pDest = dhcpcOptionMerge (option, pOptList->pTag9, pData, length); if (pDest == NULL) { errno = S_dhcpcLib_OPTION_NOT_STORED; return (ERROR); } else pOptList->pTag9 = pDest; break; case _DHCP_IMPRESS_SERVER_TAG: /* Option Tag 10 */ pDest = dhcpcOptionMerge (option, pOptList->pTag10, pData, length); if (pDest == NULL) { errno = S_dhcpcLib_OPTION_NOT_STORED; return (ERROR); } else pOptList->pTag10 = pDest; break; case _DHCP_RLS_SERVER_TAG: /* Option Tag 11 */ pDest = dhcpcOptionMerge (option, pOptList->pTag11, pData, length); if (pDest == NULL) { errno = S_dhcpcLib_OPTION_NOT_STORED; return (ERROR); } else pOptList->pTag11 = pDest; break; case _DHCP_NIS_SERVER_TAG: /* Option Tag 41 */ pDest = dhcpcOptionMerge (option, pOptList->pTag41, pData, length); if (pDest == NULL) { errno = S_dhcpcLib_OPTION_NOT_STORED; return (ERROR); } else pOptList->pTag41 = pDest; break; case _DHCP_NTP_SERVER_TAG: /* Option Tag 42 */ pDest = dhcpcOptionMerge (option, pOptList->pTag42, pData, length); if (pDest == NULL) { errno = S_dhcpcLib_OPTION_NOT_STORED; return (ERROR); } else pOptList->pTag42 = pDest; break; case _DHCP_NBN_SERVER_TAG: /* Option Tag 44 */ pDest = dhcpcOptionMerge (option, pOptList->pTag44, pData, length); if (pDest == NULL) { errno = S_dhcpcLib_OPTION_NOT_STORED; return (ERROR); } else pOptList->pTag44 = pDest; break; case _DHCP_NBDD_SERVER_TAG: /* Option Tag 45 */ pDest = dhcpcOptionMerge (option, pOptList->pTag45, pData, length); if (pDest == NULL) { errno = S_dhcpcLib_OPTION_NOT_STORED; return (ERROR); } else pOptList->pTag45 = pDest; break; case _DHCP_XFONT_SERVER_TAG: /* Option Tag 48 */ pDest = dhcpcOptionMerge (option, pOptList->pTag48, pData, length); if (pDest == NULL) { errno = S_dhcpcLib_OPTION_NOT_STORED; return (ERROR); } else pOptList->pTag48 = pDest; break; case _DHCP_XDISPLAY_MANAGER_TAG: /* Option Tag 49 */ pDest = dhcpcOptionMerge (option, pOptList->pTag49, pData, length); if (pDest == NULL) { errno = S_dhcpcLib_OPTION_NOT_STORED; return (ERROR); } else pOptList->pTag49 = pDest; break; case _DHCP_NISP_SERVER_TAG: /* Option Tag 65 */ pDest = dhcpcOptionMerge (option, pOptList->pTag65, pData, length); if (pDest == NULL) { errno = S_dhcpcLib_OPTION_NOT_STORED; return (ERROR); } else pOptList->pTag65 = pDest; break; case _DHCP_MOBILEIP_HA_TAG: /* Option Tag 68 */ pDest = dhcpcOptionMerge (option, pOptList->pTag68, pData, length); if (pDest == NULL) { errno = S_dhcpcLib_OPTION_NOT_STORED; return (ERROR); } else pOptList->pTag68 = pDest; break; case _DHCP_SMTP_SERVER_TAG: /* Option Tag 69 */ pDest = dhcpcOptionMerge (option, pOptList->pTag69, pData, length); if (pDest == NULL) { errno = S_dhcpcLib_OPTION_NOT_STORED; return (ERROR); } else pOptList->pTag69 = pDest; break; case _DHCP_POP3_SERVER_TAG: /* Option Tag 70 */ pDest = dhcpcOptionMerge (option, pOptList->pTag70, pData, length); if (pDest == NULL) { errno = S_dhcpcLib_OPTION_NOT_STORED; return (ERROR); } else pOptList->pTag70 = pDest; break; case _DHCP_NNTP_SERVER_TAG: /* Option Tag 71 */ pDest = dhcpcOptionMerge (option, pOptList->pTag71, pData, length); if (pDest == NULL) { errno = S_dhcpcLib_OPTION_NOT_STORED; return (ERROR); } else pOptList->pTag71 = pDest; break; case _DHCP_DFLT_WWW_SERVER_TAG: /* Option Tag 72 */ pDest = dhcpcOptionMerge (option, pOptList->pTag72, pData, length); if (pDest == NULL) { errno = S_dhcpcLib_OPTION_NOT_STORED; return (ERROR); } else pOptList->pTag72 = pDest; break; case _DHCP_DFLT_FINGER_SERVER_TAG: /* Option Tag 73 */ pDest = dhcpcOptionMerge (option, pOptList->pTag73, pData, length); if (pDest == NULL) { errno = S_dhcpcLib_OPTION_NOT_STORED; return (ERROR); } else pOptList->pTag73 = pDest; break; case _DHCP_DFLT_IRC_SERVER_TAG: /* Option Tag 74 */ pDest = dhcpcOptionMerge (option, pOptList->pTag74, pData, length); if (pDest == NULL) { errno = S_dhcpcLib_OPTION_NOT_STORED; return (ERROR); } else pOptList->pTag74 = pDest; break; case _DHCP_STREETTALK_SERVER_TAG: /* Option Tag 75 */ pDest = dhcpcOptionMerge (option, pOptList->pTag75, pData, length); if (pDest == NULL) { errno = S_dhcpcLib_OPTION_NOT_STORED; return (ERROR); } else pOptList->pTag75 = pDest; break; case _DHCP_STDA_SERVER_TAG: /* Option Tag 76 */ pDest = dhcpcOptionMerge (option, pOptList->pTag76, pData, length); if (pDest == NULL) { errno = S_dhcpcLib_OPTION_NOT_STORED; return (ERROR); } else pOptList->pTag76 = pDest; break; case _DHCP_POLICY_FILTER_TAG: /* Option Tag 21 */ pDest = dhcpcOptionMerge (option, pOptList->pTag21, pData, length); if (pDest == NULL) { errno = S_dhcpcLib_OPTION_NOT_STORED; return (ERROR); } else pOptList->pTag21 = pDest; break; case _DHCP_STATIC_ROUTE_TAG: /* Option Tag 33 */ pDest = dhcpcOptionMerge (option, pOptList->pTag33, pData, length); if (pDest == NULL) { errno = S_dhcpcLib_OPTION_NOT_STORED; return (ERROR); } else pOptList->pTag33 = pDest; break; case _DHCP_VENDOR_SPEC_TAG: /* Option Tag 43 */ pDest = dhcpcOptionMerge (option, pOptList->pTag43, pData, length); if (pDest == NULL) { errno = S_dhcpcLib_OPTION_NOT_STORED; return (ERROR); } else pOptList->pTag43 = pDest; break; case _DHCP_REQ_LIST_TAG: /* Option Tag 55 */ pDest = dhcpcOptionMerge (option, pOptList->pTag55, pData, length); if (pDest == NULL) { errno = S_dhcpcLib_OPTION_NOT_STORED; return (ERROR); } else { /* Add new list. Ignore dhcpcOptionSet() routine results. */ pReqSpec->reqlist.len = 0; pOptList->pTag55 = pDest; } break; /* * Variable-length values. Add new entry or replace existing one. * Store tag value and length before option body. */ case _DHCP_HOSTNAME_TAG: /* Option Tag 12 */ pDest = dhcpcOptCreate (option, pOptList->pTag12, pData, length); if (pDest == NULL) {
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -