CMGDK r49-rc2
|
00001 # i f n d e f H G L _ S O C K E T _ I N C L U D E 00002 00003 # d e f i n e H G L _ S O C K E T _ I N C L U D E 00004 00005 00006 00007 # i n c l u d e < h g l / t y p e / D a t a T y p e . H > 00008 00009 # i n c l u d e < h g l / t y p e / W i d e S t r i n g . H > 00010 00011 00012 00013 # i f n d e f F D _ S E T S I Z E 00014 00015 # d e f i n e F D _ S E T S I Z E 1 0 2 4 00016 00017 # e l s e 00018 00019 # i f F D _ S E T S I Z E < 1 0 2 4 00020 00021 # u n d e f F D _ S E T S I Z E 00022 00023 # d e f i n e F D _ S E T S I Z E 1 0 2 4 00024 00025 # e n d i f / / 00026 00027 # e n d i f / / 00028 00029 00030 00031 # i f H G L _ O S = = H G L _ O S _ W i n d o w s 00032 00033 # i n c l u d e < w i n s o c k 2 . h > 00034 00035 00036 00037 # i f S O M A X C O N N = = 5 00038 00039 # e r r o r P l e a s e u s e < w i n s o c k 2 . h > 00040 00041 # e n d i f / / 00042 00043 00044 00045 # d e f i n e G e t L a s t S o c k e t E r r o r ( ) W S A G e t L a s t E r r o r ( ) 00046 00047 # e l s e 00048 00049 # i n c l u d e < s y s / s o c k e t . h > 00050 00051 00052 00053 # d e f i n e G e t L a s t S o c k e t E r r o r ( ) ( e r r n o ) 00054 00055 # e n d i f / / 00056 00057 00058 00059 / / # d e f i n e H G L _ R E C V _ B Y T E _ C O U N T / / / < c6eW[pe~( Ջ(u) 00060 00061 / / # d e f i n e H G L _ S E N D _ B Y T E _ C O U N T / / / < SW[pe~( Ջ(u) 00062 00063 00064 00065 / / # d e f i n e H G L _ S O C K E T _ S E N D _ L I M I T _ S I Z E / / / < SP6RS:\[, ؞:N 00066 NP6R 00067 00068 00069 00070 n a m e s p a c e h g l 00071 00072 { 00073 00074 n a m e s p a c e n e t w o r k / / / Q~vsQYt!jWW 00075 TW[zz 00076 00077 { 00078 00079 e n u m S o c k e t E r r o r 00080 00081 { 00082 00083 n s e C l i e n t B r e a k = 1 0 0 5 3 , / / / < [7bz;NRe _ 00084 00085 n s e S e r v e r B r e a k , / / / < 00086 gRhVz;NRe _ 00087 00088 00089 00090 n s e T i m e O u t = 1 0 0 6 0 , / / / < e 00091 00092 } ; / / e n u m S o c k e t E r r o r 00093 00094 00095 00096 # d e f i n e H G L _ T C P _ T I M E _ O U T 6 0 / / / < ؞T C P ee 00097 00098 # d e f i n e H G L _ T C P _ H E A R T _ T I M E 3 0 / / / < ؞T C P _e( l_v^ 00099 N/fkc[eS/fy 00100 N N!kSNa\SǏc[eMbS) 00101 00102 00103 00104 # d e f i n e H G L _ T C P _ P A C K E T _ S I Z E 1 0 2 4 / / / < T C P SYS^ 00105 00106 # d e f i n e H G L _ T C P _ C L I E N T _ B U F F E R _ S I Z E 3 2 * 1 0 2 4 / / / < T C P [7bzQ:S'Y\ 00107 00108 # d e f i n e H G L _ T C P _ A C C E P T _ B U F F E R _ S I Z E 3 2 * 1 0 2 4 / / / < T C P 00109 gRhVceQzQ:S'Y\ 00110 00111 00112 00113 t y p e d e f i n t 3 2 H G L _ P A C K E T _ S I Z E ; / / / < S^penc{|W[IN 00114 00115 t y p e d e f u i n t 3 2 H G L _ P A C K E T _ T Y P E ; / / / < S{|Wpenc{|W[IN 00116 00117 00118 00119 c o n s t i n t H G L _ P A C K E T _ S I Z E _ B Y T E S = s i z e o f ( H G L _ P A C K E T _ S I Z E ) ; 00120 00121 c o n s t i n t H G L _ P A C K E T _ T Y P E _ B Y T E S = s i z e o f ( H G L _ P A C K E T _ T Y P E ) ; 00122 00123 c o n s t i n t H G L _ P A C K E T _ H E A D E R _ B Y T E S = H G L _ P A C K E T _ S I Z E _ B Y T E S + H G L _ P A C K E T _ T Y P E _ B Y T E S ; 00124 00125 00126 00127 / * * 00128 00129 * @b gS o c k e t O{|vW{| 00130 00131 * / 00132 00133 c l a s s S o c k e t / / / S o c k e t W{| 00134 00135 { 00136 00137 p r o t e c t e d : 00138 00139 00140 00141 b o o l b i n d a d d r ( c o n s t c h a r * , i n t ) ; / / / < ~[c[W 00142 T/ I P TP O R T 0RS_MRs o c k e t 00143 00144 00145 00146 p u b l i c : / / ^\'` 00147 00148 00149 00150 i n t T h i s S o c k e t ; / / / < S_MRs o c k e t S 00151 00152 00153 00154 p u b l i c : / / el 00155 00156 00157 00158 S o c k e t ( ) ; 00159 00160 v i r t u a l ~ S o c k e t ( ) ; 00161 00162 00163 00164 v i r t u a l v o i d C l o s e S o c k e t ( ) ; / / / < sQޏc 00165 00166 v o i d S e t B l o c k ( b o o l , d o u b l e = 6 0 ) ; / / / < n/f&TO(u5X^Xe_ 00167 00168 v o i d S e t N o d e l a y ( b o o l ) ; / / / < n/f&TO(ue^ߏe_ 00169 00170 } ; / / c l a s s S o c k e t 00171 00172 00173 00174 i n t G e t L o c a l I P ( i n _ a d d r * * , c h a r * ) ; / / / < S_,g:gI P 00175 00176 i n t D o m a i n N a m e 2 I P v 4 ( c o n s t W i d e S t r i n g & , i n _ a d d r * * ) ; / / / < lbcW 00177 T0RI P 00178 00179 v o i d S o c k T o S t r ( s o c k a d d r _ i n & , w c h a r _ t * , i n t * ) ; / / / < lbcs o c k a d d r _ i n 0R N*NW[&{2N 00180 00181 b o o l F i l l A d d r ( s o c k a d d r _ i n * , c o n s t c h a r * , i n t ) ; / / / < \c[W 00182 TbI P kXEQ0Rs o c k a d d r _ i n ~g-N 00183 00184 v o i d C l o s e S o c k e t ( i n t ) ; / / / < sQs o c k e t 00185 00186 00187 00188 c o n s t w c h a r _ t * G e t S o c k e t S t r i n g ( i n t ) ; 00189 00190 00191 00192 # d e f i n e G e t L a s t S o c k e t E r r o r S t r i n g ( ) G e t S o c k e t S t r i n g ( G e t L a s t S o c k e t E r r o r ( ) ) 00193 00194 } / / n a m e s p a c e n e t w o r k 00195 00196 00197 00198 u s i n g n a m e s p a c e n e t w o r k ; 00199 00200 } / / n a m e s p a c e h g l 00201 00202 # e n d i f / / H G L _ S O C K E T _ I N C L U D E 00203 00204