98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
|
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
|
-
+
-
+
-
-
+
+
|
if (ret > 0) {
dprintf("Successfully wrote %" TCL_SIZE_MODIFIER "d bytes of data", ret);
} else if (ret == 0) {
if (is_eof) {
dprintf("Got EOF while writing, returning a Connection Reset error which maps to Soft EOF");
Tcl_SetErrno(ECONNRESET);
Tcl_SetErrno(ECONNRESET);
BIO_set_flags(bio, BIO_FLAGS_IN_EOF);
} else {
dprintf("Got 0 from Tcl_WriteRaw, and EOF is not set; ret = 0");
dprintf("Got 0 from Tcl_WriteRaw, and EOF is not set; ret = 0");
BIO_set_retry_write(bio);
dprintf("Setting retry read flag");
BIO_set_retry_read(bio);
dprintf("Setting retry read flag");
BIO_set_retry_read(bio);
}
} else {
dprintf("We got some kind of I/O error");
if (BIOShouldRetry(tclErrno)) {
dprintf("Try again for: %i=%s", tclErrno, Tcl_ErrnoMsg(tclErrno));
|
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
|
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
|
-
+
-
+
-
|
if (ret > 0) {
dprintf("Successfully read %" TCL_SIZE_MODIFIER "d bytes of data", ret);
} else if (ret == 0) {
if (is_eof) {
dprintf("Got EOF while reading, returning a Connection Reset error which maps to Soft EOF");
Tcl_SetErrno(ECONNRESET);
Tcl_SetErrno(ECONNRESET);
BIO_set_flags(bio, BIO_FLAGS_IN_EOF);
} else if (is_blocked) {
dprintf("Got input blocked from Tcl_ReadRaw");
dprintf("Got input blocked from Tcl_ReadRaw. Setting retry read flag");
dprintf("Setting retry read flag");
BIO_set_retry_read(bio);
}
} else {
dprintf("We got some kind of I/O error");
if (BIOShouldRetry(tclErrno)) {
|