@@ -28,11 +28,11 @@ int EthernetClient::connect(const char * host, uint16_t port)
28
28
DNSClient dns; // Look up the host first
29
29
IPAddress remote_addr;
30
30
31
- if (sockindex < MAX_SOCK_NUM) {
32
- if (Ethernet.socketStatus (sockindex ) != SnSR::CLOSED) {
33
- Ethernet.socketDisconnect (sockindex ); // TODO: should we call stop()?
31
+ if (_sockindex < MAX_SOCK_NUM) {
32
+ if (Ethernet.socketStatus (_sockindex ) != SnSR::CLOSED) {
33
+ Ethernet.socketDisconnect (_sockindex ); // TODO: should we call stop()?
34
34
}
35
- sockindex = MAX_SOCK_NUM;
35
+ _sockindex = MAX_SOCK_NUM;
36
36
}
37
37
dns.begin (Ethernet.dnsServerIP ());
38
38
if (!dns.getHostByName (host, remote_addr)) return 0 ; // TODO: use _timeout
@@ -41,38 +41,38 @@ int EthernetClient::connect(const char * host, uint16_t port)
41
41
42
42
int EthernetClient::connect (IPAddress ip, uint16_t port)
43
43
{
44
- if (sockindex < MAX_SOCK_NUM) {
45
- if (Ethernet.socketStatus (sockindex ) != SnSR::CLOSED) {
46
- Ethernet.socketDisconnect (sockindex ); // TODO: should we call stop()?
44
+ if (_sockindex < MAX_SOCK_NUM) {
45
+ if (Ethernet.socketStatus (_sockindex ) != SnSR::CLOSED) {
46
+ Ethernet.socketDisconnect (_sockindex ); // TODO: should we call stop()?
47
47
}
48
- sockindex = MAX_SOCK_NUM;
48
+ _sockindex = MAX_SOCK_NUM;
49
49
}
50
50
#if defined(ESP8266) || defined(ESP32)
51
51
if (ip == IPAddress ((uint32_t )0 ) || ip == IPAddress (0xFFFFFFFFul )) return 0 ;
52
52
#else
53
53
if (ip == IPAddress (0ul ) || ip == IPAddress (0xFFFFFFFFul )) return 0 ;
54
54
#endif
55
- sockindex = Ethernet.socketBegin (SnMR::TCP, 0 );
56
- if (sockindex >= MAX_SOCK_NUM) return 0 ;
57
- Ethernet.socketConnect (sockindex , rawIPAddress (ip), port);
55
+ _sockindex = Ethernet.socketBegin (SnMR::TCP, 0 );
56
+ if (_sockindex >= MAX_SOCK_NUM) return 0 ;
57
+ Ethernet.socketConnect (_sockindex , rawIPAddress (ip), port);
58
58
uint32_t start = millis ();
59
59
while (1 ) {
60
- uint8_t stat = Ethernet.socketStatus (sockindex );
60
+ uint8_t stat = Ethernet.socketStatus (_sockindex );
61
61
if (stat == SnSR::ESTABLISHED) return 1 ;
62
62
if (stat == SnSR::CLOSE_WAIT) return 1 ;
63
63
if (stat == SnSR::CLOSED) return 0 ;
64
64
if (millis () - start > _timeout) break ;
65
65
delay (1 );
66
66
}
67
- Ethernet.socketClose (sockindex );
68
- sockindex = MAX_SOCK_NUM;
67
+ Ethernet.socketClose (_sockindex );
68
+ _sockindex = MAX_SOCK_NUM;
69
69
return 0 ;
70
70
}
71
71
72
72
int EthernetClient::availableForWrite (void )
73
73
{
74
- if (sockindex >= MAX_SOCK_NUM) return 0 ;
75
- return Ethernet.socketSendAvailable (sockindex );
74
+ if (_sockindex >= MAX_SOCK_NUM) return 0 ;
75
+ return Ethernet.socketSendAvailable (_sockindex );
76
76
}
77
77
78
78
size_t EthernetClient::write (uint8_t b)
@@ -82,16 +82,16 @@ size_t EthernetClient::write(uint8_t b)
82
82
83
83
size_t EthernetClient::write (const uint8_t *buf, size_t size)
84
84
{
85
- if (sockindex >= MAX_SOCK_NUM) return 0 ;
86
- if (Ethernet.socketSend (sockindex , buf, size)) return size;
85
+ if (_sockindex >= MAX_SOCK_NUM) return 0 ;
86
+ if (Ethernet.socketSend (_sockindex , buf, size)) return size;
87
87
setWriteError ();
88
88
return 0 ;
89
89
}
90
90
91
91
int EthernetClient::available ()
92
92
{
93
- if (sockindex >= MAX_SOCK_NUM) return 0 ;
94
- return Ethernet.socketRecvAvailable (sockindex );
93
+ if (_sockindex >= MAX_SOCK_NUM) return 0 ;
94
+ return Ethernet.socketRecvAvailable (_sockindex );
95
95
// TODO: do the WIZnet chips automatically retransmit TCP ACK
96
96
// packets if they are lost by the network? Someday this should
97
97
// be checked by a man-in-the-middle test which discards certain
@@ -102,88 +102,88 @@ int EthernetClient::available()
102
102
103
103
int EthernetClient::read (uint8_t *buf, size_t size)
104
104
{
105
- if (sockindex >= MAX_SOCK_NUM) return 0 ;
106
- return Ethernet.socketRecv (sockindex , buf, size);
105
+ if (_sockindex >= MAX_SOCK_NUM) return 0 ;
106
+ return Ethernet.socketRecv (_sockindex , buf, size);
107
107
}
108
108
109
109
int EthernetClient::peek ()
110
110
{
111
- if (sockindex >= MAX_SOCK_NUM) return -1 ;
111
+ if (_sockindex >= MAX_SOCK_NUM) return -1 ;
112
112
if (!available ()) return -1 ;
113
- return Ethernet.socketPeek (sockindex );
113
+ return Ethernet.socketPeek (_sockindex );
114
114
}
115
115
116
116
int EthernetClient::read ()
117
117
{
118
118
uint8_t b;
119
- if (Ethernet.socketRecv (sockindex , &b, 1 ) > 0 ) return b;
119
+ if (Ethernet.socketRecv (_sockindex , &b, 1 ) > 0 ) return b;
120
120
return -1 ;
121
121
}
122
122
123
123
void EthernetClient::flush ()
124
124
{
125
- while (sockindex < MAX_SOCK_NUM) {
126
- uint8_t stat = Ethernet.socketStatus (sockindex );
125
+ while (_sockindex < MAX_SOCK_NUM) {
126
+ uint8_t stat = Ethernet.socketStatus (_sockindex );
127
127
if (stat != SnSR::ESTABLISHED && stat != SnSR::CLOSE_WAIT) return ;
128
- if (Ethernet.socketSendAvailable (sockindex ) >= W5100.SSIZE ) return ;
128
+ if (Ethernet.socketSendAvailable (_sockindex ) >= W5100.SSIZE ) return ;
129
129
}
130
130
}
131
131
132
132
void EthernetClient::stop ()
133
133
{
134
- if (sockindex >= MAX_SOCK_NUM) return ;
134
+ if (_sockindex >= MAX_SOCK_NUM) return ;
135
135
136
136
// attempt to close the connection gracefully (send a FIN to other side)
137
- Ethernet.socketDisconnect (sockindex );
137
+ Ethernet.socketDisconnect (_sockindex );
138
138
unsigned long start = millis ();
139
139
140
140
// wait up to a second for the connection to close
141
141
do {
142
- if (Ethernet.socketStatus (sockindex ) == SnSR::CLOSED) {
143
- sockindex = MAX_SOCK_NUM;
142
+ if (Ethernet.socketStatus (_sockindex ) == SnSR::CLOSED) {
143
+ _sockindex = MAX_SOCK_NUM;
144
144
return ; // exit the loop
145
145
}
146
146
delay (1 );
147
147
} while (millis () - start < _timeout);
148
148
149
149
// if it hasn't closed, close it forcefully
150
- Ethernet.socketClose (sockindex );
151
- sockindex = MAX_SOCK_NUM;
150
+ Ethernet.socketClose (_sockindex );
151
+ _sockindex = MAX_SOCK_NUM;
152
152
}
153
153
154
154
uint8_t EthernetClient::connected ()
155
155
{
156
- if (sockindex >= MAX_SOCK_NUM) return 0 ;
156
+ if (_sockindex >= MAX_SOCK_NUM) return 0 ;
157
157
158
- uint8_t s = Ethernet.socketStatus (sockindex );
158
+ uint8_t s = Ethernet.socketStatus (_sockindex );
159
159
return !(s == SnSR::LISTEN || s == SnSR::CLOSED || s == SnSR::FIN_WAIT ||
160
160
(s == SnSR::CLOSE_WAIT && !available ()));
161
161
}
162
162
163
163
uint8_t EthernetClient::status ()
164
164
{
165
- if (sockindex >= MAX_SOCK_NUM) return SnSR::CLOSED;
166
- return Ethernet.socketStatus (sockindex );
165
+ if (_sockindex >= MAX_SOCK_NUM) return SnSR::CLOSED;
166
+ return Ethernet.socketStatus (_sockindex );
167
167
}
168
168
169
169
// the next function allows us to use the client returned by
170
170
// EthernetServer::available() as the condition in an if-statement.
171
171
bool EthernetClient::operator ==(const EthernetClient& rhs)
172
172
{
173
- if (sockindex != rhs.sockindex ) return false ;
174
- if (sockindex >= MAX_SOCK_NUM) return false ;
175
- if (rhs.sockindex >= MAX_SOCK_NUM) return false ;
173
+ if (_sockindex != rhs._sockindex ) return false ;
174
+ if (_sockindex >= MAX_SOCK_NUM) return false ;
175
+ if (rhs._sockindex >= MAX_SOCK_NUM) return false ;
176
176
return true ;
177
177
}
178
178
179
179
// https://github.com/per1234/EthernetMod
180
180
// from: https://github.com/ntruchsess/Arduino-1/commit/937bce1a0bb2567f6d03b15df79525569377dabd
181
181
uint16_t EthernetClient::localPort ()
182
182
{
183
- if (sockindex >= MAX_SOCK_NUM) return 0 ;
183
+ if (_sockindex >= MAX_SOCK_NUM) return 0 ;
184
184
uint16_t port;
185
185
SPI.beginTransaction (SPI_ETHERNET_SETTINGS);
186
- port = W5100.readSnPORT (sockindex );
186
+ port = W5100.readSnPORT (_sockindex );
187
187
SPI.endTransaction ();
188
188
return port;
189
189
}
@@ -192,10 +192,10 @@ uint16_t EthernetClient::localPort()
192
192
// returns the remote IP address: https://forum.arduino.cc/index.php?topic=82416.0
193
193
IPAddress EthernetClient::remoteIP ()
194
194
{
195
- if (sockindex >= MAX_SOCK_NUM) return IPAddress ((uint32_t )0 );
195
+ if (_sockindex >= MAX_SOCK_NUM) return IPAddress ((uint32_t )0 );
196
196
uint8_t remoteIParray[4 ];
197
197
SPI.beginTransaction (SPI_ETHERNET_SETTINGS);
198
- W5100.readSnDIPR (sockindex , remoteIParray);
198
+ W5100.readSnDIPR (_sockindex , remoteIParray);
199
199
SPI.endTransaction ();
200
200
return IPAddress (remoteIParray);
201
201
}
@@ -204,10 +204,10 @@ IPAddress EthernetClient::remoteIP()
204
204
// from: https://github.com/ntruchsess/Arduino-1/commit/ca37de4ba4ecbdb941f14ac1fe7dd40f3008af75
205
205
uint16_t EthernetClient::remotePort ()
206
206
{
207
- if (sockindex >= MAX_SOCK_NUM) return 0 ;
207
+ if (_sockindex >= MAX_SOCK_NUM) return 0 ;
208
208
uint16_t port;
209
209
SPI.beginTransaction (SPI_ETHERNET_SETTINGS);
210
- port = W5100.readSnDPORT (sockindex );
210
+ port = W5100.readSnDPORT (_sockindex );
211
211
SPI.endTransaction ();
212
212
return port;
213
213
}
0 commit comments