⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 sps.c

📁 由smsc公司改进的lwip2.1.1基于嵌入式系统的TCP/ip协议栈
💻 C
📖 第 1 页 / 共 5 页
字号:
/* Auto generation time stamp: 8/6/2008 12:43:58 PM*/
/*
 * Copyright (c) 2001-2004 Swedish Institute of Computer Science.
 * All rights reserved. 
 * 
 * Redistribution and use in source and binary forms, with or without modification, 
 * are permitted provided that the following conditions are met:
 *
 * 1. Redistributions of source code must retain the above copyright notice,
 *    this list of conditions and the following disclaimer.
 * 2. Redistributions in binary form must reproduce the above copyright notice,
 *    this list of conditions and the following disclaimer in the documentation
 *    and/or other materials provided with the distribution.
 * 3. The name of the author may not be used to endorse or promote products
 *    derived from this software without specific prior written permission. 
 *
 * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED 
 * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF 
 * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT 
 * SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, 
 * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT 
 * OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS 
 * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 
 * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING 
 * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY 
 * OF SUCH DAMAGE.
 *
 * This file is part of the lwIP TCP/IP stack.
 * 
 * Author: Adam Dunkels <adam@sics.se>
 *
 */
/* 
Modifications of this software Copyright(C) 2008, Standard Microsystems Corporation
  All Rights Reserved.
  The modifications to this program code are proprietary to SMSC and may not be copied,
  distributed, or used without a license to do so.  Such license may have
  Limited or Restricted Rights. Please refer to the license for further
  clarification.
*/

#include "core/sps.h"
#if UDP_ENABLED
#define md8(x) x
#else
#define md8(x)
#endif
#if TCP_ENABLED
#define hm6(x) x
#else
#define hm6(x)
#endif
#if TCP_DEBUG
#define DKy(x) x
#else
#define DKy(x)
#endif
#if SMSC911X_USE_PHY_WORK_AROUND
#define Gre(x) x
#else
#define Gre(x)
#endif
#if SMSC911X_USE_EXTERNAL_PHY
#define dfI(x) x
#else
#define dfI(x)
#endif
#if SMSC911X_PACKET_DUMP_ENABLED
#define kCa(x) x
#else
#define kCa(x)
#endif
#if SMSC911X_LINK_STATUS_INTERRUPT_MODE
#define PGr(x) x
#else
#define PGr(x)
#endif
#if SMSC911X_ENABLED
#define oG7(x) x
#else
#define oG7(x)
#endif
#if SMSC_WARNING_ENABLED
#define UXb(x) x
#else
#define UXb(x)
#endif
#if SMSC_TRACE_ENABLED
#define RT1(x) x
#else
#define RT1(x)
#endif
#if SMSC_THREADING_ENABLED
#define snj(x) x
#else
#define snj(x)
#endif
#if SMSC_NOTICE_ENABLED
#define Jg5(x) x
#else
#define Jg5(x)
#endif
#if SMSC_ERROR_ENABLED
#define lU2(x) x
#else
#define lU2(x)
#endif
#if LOOP_BACK_ENABLED
#define DXZ(x) x
#else
#define DXZ(x)
#endif
#if IPV6_ENABLED
#define AID(x) x
#else
#define AID(x)
#endif
#if IPV4_HEADER_DUMP_ENABLED
#define XJr(x) x
#else
#define XJr(x)
#endif
#if IPV4_FRAGMENTS_ENABLED
#define zB0(x) x
#else
#define zB0(x)
#endif
#if IPV4_FORWARDING_ENABLED
#define pPr(x) x
#else
#define pPr(x)
#endif
#if IPV4_FILTER_MAXIMUM_DELAY==0
#define Kkk(x) x
#else
#define Kkk(x)
#endif
#if IPV4_FILTER_MAXIMUM_DELAY
#define KJN(x) x
#else
#define KJN(x)
#endif
#if IPV4_FILTER_ENABLED
#define rnj(x) x
#else
#define rnj(x)
#endif
#if IPV4_FILTER_DUPLICATE_RATE>0
#define FI2(x) x
#else
#define FI2(x)
#endif
#if IPV4_FILTER_DROP_RATE>0
#define Oit(x) x
#else
#define Oit(x)
#endif
#if IPV4_FILTER_CREATE_FRAGMENT_OVERLAPS
#define D7s(x) x
#else
#define D7s(x)
#endif
#if IPV4_FILTER_BIT_ERROR_RATE>0
#define XuP(x) x
#else
#define XuP(x)
#endif
#if IPV4_ENABLED
#define ddw(x) x
#else
#define ddw(x)
#endif
#if ICMPV4_ECHO_REQUEST_ENABLED
#define qxt(x) x
#else
#define qxt(x)
#endif
#if ICMPV4_ECHO_REPLY_ENABLED
#define st1(x) x
#else
#define st1(x)
#endif
#if ETHERNET_ENABLED
#define kjk(x) x
#else
#define kjk(x)
#endif
#if DHCP_ENABLED
#define gc5(x) x
#else
#define gc5(x)
#endif
#if DHCP_DOES_ARP_CHECK
#define hjJ(x) x
#else
#define hjJ(x)
#endif
#if 0
#define n1C(x) x
#else
#define n1C(x)
#endif
#if (SMSC_WARNING_ENABLED)
#define JA6(x) x
#else
#define JA6(x)
#endif
#if (SMSC_TRACE_ENABLED)
#define OTS(x) x
#else
#define OTS(x)
#endif
#if (SMSC_NOTICE_ENABLED)
#define rnk(x) x
#else
#define rnk(x)
#endif
#if (SMSC_ERROR_ENABLED)
#define goj(x) x
#else
#define goj(x)
#endif
#if (ENDIAN_SETTING==LITTLE_ENDIAN)
#define HDG(x) x
#else
#define HDG(x)
#endif
#if (DHCP_ENABLED && DHCP_DOES_ARP_CHECK)
#define WvY(x) x
#else
#define WvY(x)
#endif
#if ((IPV4_FILTER_DROP_RATE)||(IPV4_FILTER_BIT_ERROR_RATE)||(IPV4_FILTER_MAXIMUM_DELAY)||(IPV4_FILTER_DUPLICATE_RATE))
#define Wrr(x) x
#else
#define Wrr(x)
#endif
#if !(SMSC911X_USE_EXTERNAL_PHY)
#define mHq(x) x
#else
#define mHq(x)
#endif
#if !(IPV4_FRAGMENTS_ENABLED)
#define Yrh(x) x
#else
#define Yrh(x)
#endif
#if !(IPV4_FILTER_MAXIMUM_DELAY==0)
#define _MF(x) x
#else
#define _MF(x)
#endif
#if !(IPV4_FILTER_ENABLED)
#define cH5(x) x
#else
#define cH5(x)
#endif
#if !(IPV4_ENABLED)&&IPV6_ENABLED
#define P3S(x) x
#else
#define P3S(x)
#endif
#if !(IPV4_ENABLED)&&!(IPV6_ENABLED)
#define SWN(x) x
#else
#define SWN(x)
#endif
#if !(DHCP_DOES_ARP_CHECK)
#define Ltg(x) x
#else
#define Ltg(x)
#endif
#if !((ENDIAN_SETTING==LITTLE_ENDIAN))
#define DZ0(x) x
#else
#define DZ0(x)
#endif
#define PlF X32_F
#define gJe X16_F
#define YpS while
#define tuQ volatile
#define GdC void
#define YAM union
#define vib UDP_LOCAL_PORT_RANGE_START
#define KQQ UDP_LOCAL_PORT_RANGE_END
#define YNE UDP_FLAGS_UDPLITE
#define SVC UDP_FLAGS_CONNECTED
#define SIl UDP_DEBUG
#define qu6 UDP_CONTROL_BLOCK_COUNT
#define Arc u8_t
#define bNQ u32_t
#define QUi U32_F
#define okv u16_t
#define TGv U16_F
#define Upz typedef
#define Ebc TCP_WINDOW_SIZE
#define Jm9 TCP_SYNMAXRTX
#define nkO TCP_SEND_SPACE
#define G7H TCP_SEGMENT_COUNT
#define AF6 TCP_MAXRTX
#define HGp TCP_MAXIMUM_SEGMENT_SIZE
#define d7q TCP_LOCAL_PORT_RANGE_START
#define YGm TCP_LOCAL_PORT_RANGE_END
#define Adm TCP_DEBUG
#define aul TCP_CONTROL_BLOCK_COUNT
#define Dgk TASK_PRIORITY_TX
#define rWj TASK_PRIORITY_TIMER
#define uDq TASK_PRIORITY_RX_FILTER
#define kdm TASK_PRIORITY_RX
#define CsM TASK_MANAGER_HIGHEST_PRIORITY
#define y6o TASK_COUNT
#define iDR switch
#define FIV struct
#define K7m strncmp
#define LRA strlen
#define K4S static
#define ZTP sprintf
#define M97 Smsc911xPlatform_IsWritingDone
#define cb5 Smsc911xPlatform_IsReadingDone
#define N1E Smsc911xPlatform_InvalidateCache
#define igZ Smsc911xPlatform_InstallIsr
#define U1h Smsc911xPlatform_Initialize
#define iaI Smsc911xPlatform_GetMacAddress
#define e65 Smsc911xPlatform_GetIOAddress
#define iQR Smsc911xPlatform_FlushCache
#define yBy Smsc911xPlatform_DisplayResources
#define w1v Smsc911xPlatform_BeginWriting
#define vXR Smsc911xPlatform_BeginReading
#define TZQ SMSC911X_TX_BURST_COUNT
#define Y61 SMSC911X_RX_BURST_COUNT
#define diG SMSC911X_PLATFORM_WRITE_REGISTER
#define boR SMSC911X_PLATFORM_READ_REGISTER
#define TlX SMSC911X_INTERFACE_COUNT
#define Lja SMSC911X_DEBUG
#define HO9 smsc_udelay
#define cM6 smsc_time_plus
#define j6p smsc_time_now
#define RDi smsc_time_minus
#define e3f smsc_time_after
#define YQ9 smsc_tick_to_msec
#define fgB smsc_threading_initialize
#define LFD SMSC_THREAD_NULL
#define SPI smsc_thread_get_current
#define jD5 smsc_semaphore_wait_timeout
#define _NN smsc_semaphore_wait
#define G2A smsc_semaphore_signal
#define a0z smsc_semaphore_initialize
#define axx SMSC_SEMAPHORE
#define lIH smsc_sec_to_tick
#define SON SMSC_PLATFORM_MESSAGE
#define I67 SMSC_PLATFORM_HALT_MESSAGE
#define Yw4 smsc_msec_to_tick
#define jjJ smsc_mdelay
#define xUk SMSC_IPCHECKSUM
#define jz3 smsc_initialize
#define gso smsc_enable_interrupts
#define i0X smsc_disable_interrupts
#define HXL smsc_clock_t
#define pJb SMALL_BUFFER_SIZE
#define XFR SMALL_BUFFER_COUNT
#define QnA sizeof
#define qMB s8_t
#define DZi s32_t
#define ZaY S32_F
#define RLc s16_t
#define dJR S16_F
#define Fwu return
#define kI8 PSMSC_THREAD
#define z4D PIP_ADDRESS
#define Y4f MINIMUM_MTU
#define R6X memset
#define a2B MEMORY_ALIGNMENT
#define Vph memcpy
#define _U4 mem_ptr_t
#define lXE MAXIMUM_TRANSFER_ALIGNMENT
#define JN7 LOOP_BACK_RX_BURST_COUNT
#define EcV LOOP_BACK_DEBUG
#define USg LARGE_BUFFER_SIZE
#define EZS LARGE_BUFFER_COUNT
#define jle IPV4_FRAGMENTS_DATAGRAM_MAX_AGE
#define rS6 IPV4_FRAGMENTS_DATAGRAM_COUNT
#define td1 IPV4_FILTER_MAXIMUM_FRAGMENT_SIZE
#define MWA IPV4_FILTER_MAXIMUM_DELAY
#define cYt IPV4_FILTER_DUPLICATE_RATE
#define psG IPV4_FILTER_DROP_RATE
#define IJs IPV4_FILTER_DEBUG
#define maV IPV4_FILTER_BURST_COUNT
#define chz IPV4_FILTER_BIT_ERROR_RATE
#define jzA IPV4_DEBUG
#define ThX IPV4_ADDRESS_STRING_SIZE
#define WPV IPV4_ADDRESS_NETWORK_COMPARE
#define ULa IPV4_ADDRESS_MAKE
#define H7V IPV4_ADDRESS_IS_MULTICAST
#define kfk IPV4_ADDRESS_IS_ANY
#define PzD IPV4_ADDRESS_GET_BYTE_4
#define UF8 IPV4_ADDRESS_GET_BYTE_3
#define Zsy IPV4_ADDRESS_GET_BYTE_2
#define k8Q IPV4_ADDRESS_GET_BYTE_1
#define zrq IPV4_ADDRESS_COMPARE
#define LmX IP_ADDRESS_TO_STRING
#define Ayw IP_ADDRESS_STRING_SIZE
#define G16 IP_ADDRESS_IS_MULTICAST
#define Qjf IP_ADDRESS_IS_BROADCAST
#define onx IP_ADDRESS_IS_ANY
#define vTv IP_ADDRESS_COPY_FROM_IPV4_ADDRESS
#define u3L IP_ADDRESS_COPY
#define tBj IP_ADDRESS_COMPARE
#define Jhx IP_ADDRESS_ANY
#define _dM IP_ADDRESS
#define iMd int
#define HKK if
#define B97 ICMPV4_ECHO_REQUEST_COUNT
#define GI3 ICMPV4_DEBUG
#define Fqo goto
#define gW9 for
#define QOy ETHERNET_DEBUG
#define Mcg ERR_VAL
#define JP6 ERR_USE
#define LN1 ERR_RST
#define Ynz ERR_OK
#define e4V ERR_MEM
#define SUV ERR_IF
#define V2G ERR_BUF
#define HRq ERR_ABRT
#define di6 enum
#define Ltr else
#define zcY do
#define R52 DHCP_INTERFACE_COUNT
#define _Kn DHCP_DEBUG
#define LxM default
#define r2Q DEBUG_WARNING_BIT
#define xAm DEBUG_TRACE_BIT
#define zkn DEBUG_NOTICE_BIT
#define uXI continue
#define JLN const
#define Sg4 char
#define uYr case
#define JOC break
#define s7t ARP_TABLE_SIZE
#define rV6 ARP_ENTRY_MAX_PENDING_AGE
#define iUP ARP_ENTRY_MAX_AGE
#define wSK 9UL
#define P_2 9U
#define EbX 99UL
#define v45 993674637UL
#define SiT 99
#define Rzz 985
#define s0d 98
#define gq_ 978104252UL
#define q9J 9776
#define jd4 976064211UL
#define qT0 9720
#define LDS 9709
#define wTK 970693794
#define nsm 97
#define g2E 961928870UL
#define YBg 96
#define MlP 952393597
#define SqY 95
#define _x8 94U
#define _SY 949840429UL
#define rKK 94
#define _7n 93U
#define DvA 9378U
#define z5m 937283844UL
#define E43 937144186UL
#define fEJ 936010139UL
#define iKm 9350
#define FOd 9324
#define y62 931680186
#define jc0 93
#define dZO 92
#define m1O 9146
#define ymc 913278663
#define Mhe 91
#define d1E 905112928UL
#define G2J 904263861UL
#define zEg 9008
#define U_d 90
#define d5_ 9
#define wvp 894695130
#define JTF 893020463UL
#define QOz 891742675UL
#define ayG 89
#define PNN 88
#define w6a 879648392UL
#define OYH 878507984UL
#define UXw 87405898
#define J8t 871130551UL
#define InL 87
#define T6X 869401035
#define qYk 86
#define QWu 85U
#define NG_ 85
#define PYT 84U
#define mgW 849586235UL
#define j_0 848224807UL
#define oBW 847308558
#define sOw 8461
#define ddk 842144304
#define X8z 84
#define R6o 83U
#define zuR 839758948UL
#define ZXP 839036316
#define aFK 836333606
#define ANT 835249881
#define uij 832575964
#define Ueh 83
#define Rab 82U
#define ACm 827522197UL
#define DuP 823067182UL
#define wTy 82
#define gle 81U
#define n6D 816UL
#define Cy0 815106537UL
#define sF5 81
#define b6n 80UL
#define jaS 80U
#define kh4 806451815
#define GaP 804346730
#define Fdh 80
#define HVu 8
#define TLx 798083645UL
#define psT 796789987UL
#define XfM 795324977
#define gUf 791143552UL
#define bZG 7903
#define uan 79
#define ss5 789557140UL
#define yTt 783051059
#define ZFy 78
#define m0F 77
#define fmp 76UL
#define hFA 761378720
#define fIr 7612
#define xBC 76
#define vtn 7509U
#define Lpi 75
#define R25 74UL
#define rK2 74U
#define NiO 748173229UL
#define kDn 7471
#define EK9 74
#define HI4 73
#define mo8 72
#define ED8 71UL
#define IHl 71U
#define iS8 715527354
#define i73 71
#define JeC 706643217
#define j5W 705552699UL
#define VtJ 70
#define ZB0 7
#define Ahi 69UL
#define HMs 693508067UL
#define XhJ 691805620UL
#define IIe 69
#define BPc 6865
#define erH 684164185
#define iuj 68
#define j9r 6744
#define O8A 67
#define ZkY 667481674
#define pT3 665637800
#define uOe 66
#define Jyh 65UL
#define fld 65657287
#define wxb 65190
#define ViI 650304132
#define hHa 65024
#define Iff 65
#define MtR 64779
#define CJR 64736
#define TWT 647089191UL
#define z_v 6465
#define e1_ 646044564
#define BAN 645821280
#define rBq 64577UL
#define nIg 64457
#define A0d 64453
#define QL5 64370
#define IxX 64099
#define vQR 64018
#define tUK 64
#define ulz 63UL
#define z98 63U
#define Y7X 63907UL
#define JdY 6387
#define Juj 63676
#define Q3U 63644
#define D0o 63582
#define IMv 63548
#define Bmu 63466
#define M6J 63303
#define vTO 63260
#define Ki_ 63190
#define ZrZ 63174

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -