Commit c7743bf8efbd18454545f7f1625bcabba161d1c2
1 parent
e48d6f69
Exists in
master
and in
3 other branches
Finalizando diálogo de transferência de arquivos
Showing
3 changed files
with
115 additions
and
85 deletions
Show diff stats
| @@ -160,11 +160,16 @@ static void set_ft_state(H3270FT *session, LIB3270_FT_STATE state); | @@ -160,11 +160,16 @@ static void set_ft_state(H3270FT *session, LIB3270_FT_STATE state); | ||
| 160 | return 0; | 160 | return 0; |
| 161 | } | 161 | } |
| 162 | 162 | ||
| 163 | - static void def_complete(H3270FT *ft, const char *errmsg,unsigned long length,double kbytes_sec,const char *mode) | 163 | + static void def_complete(H3270FT *ft,unsigned long length,double kbytes_sec,const char *mode) |
| 164 | { | 164 | { |
| 165 | 165 | ||
| 166 | } | 166 | } |
| 167 | 167 | ||
| 168 | + static void def_message(H3270FT *ft, const char *errmsg) | ||
| 169 | + { | ||
| 170 | + lib3270_write_log(ft->host,"ft","%s",errmsg); | ||
| 171 | + } | ||
| 172 | + | ||
| 168 | static void def_update(H3270FT *ft, unsigned long current, unsigned long length, double kbytes_sec) | 173 | static void def_update(H3270FT *ft, unsigned long current, unsigned long length, double kbytes_sec) |
| 169 | { | 174 | { |
| 170 | 175 | ||
| @@ -189,20 +194,9 @@ static void set_ft_state(H3270FT *session, LIB3270_FT_STATE state); | @@ -189,20 +194,9 @@ static void set_ft_state(H3270FT *session, LIB3270_FT_STATE state); | ||
| 189 | LIB3270_EXPORT H3270FT * lib3270_ft_new(H3270 *session, LIB3270_FT_OPTION flags, const char *local, const char *remote, int lrecl, int blksize, int primspace, int secspace, int dft, const char **msg) | 194 | LIB3270_EXPORT H3270FT * lib3270_ft_new(H3270 *session, LIB3270_FT_OPTION flags, const char *local, const char *remote, int lrecl, int blksize, int primspace, int secspace, int dft, const char **msg) |
| 190 | { | 195 | { |
| 191 | H3270FT * ftHandle = NULL; | 196 | H3270FT * ftHandle = NULL; |
| 192 | - static const char * rec = "fvu"; | ||
| 193 | - static const char * un[] = { "tracks", "cylinders", "avblock" }; | ||
| 194 | - | ||
| 195 | - unsigned short recfm = (flags & FT_RECORD_FORMAT_MASK) >> 8; | ||
| 196 | - unsigned short units = (flags & FT_ALLOCATION_UNITS_MASK) >> 12; | ||
| 197 | - | ||
| 198 | FILE * ft_local_file = NULL; | 197 | FILE * ft_local_file = NULL; |
| 199 | unsigned long ft_length = 0L; | 198 | unsigned long ft_length = 0L; |
| 200 | 199 | ||
| 201 | - char op[4096]; | ||
| 202 | - char buffer[4096]; | ||
| 203 | - | ||
| 204 | - unsigned int flen; | ||
| 205 | - | ||
| 206 | // trace("%s(%s)",__FUNCTION__,local); | 200 | // trace("%s(%s)",__FUNCTION__,local); |
| 207 | if(!lib3270_connected(session)) | 201 | if(!lib3270_connected(session)) |
| 208 | { | 202 | { |
| @@ -246,62 +240,112 @@ static void set_ft_state(H3270FT *session, LIB3270_FT_STATE state); | @@ -246,62 +240,112 @@ static void set_ft_state(H3270FT *session, LIB3270_FT_STATE state); | ||
| 246 | dft_buffersize = dft; | 240 | dft_buffersize = dft; |
| 247 | set_dft_buffersize(); | 241 | set_dft_buffersize(); |
| 248 | 242 | ||
| 249 | - ascii_flag = ((flags & LIB3270_FT_OPTION_ASCII) != 0); | ||
| 250 | - cr_flag = ((flags & LIB3270_FT_OPTION_CRLF) != 0); | ||
| 251 | - remap_flag = ((flags & LIB3270_FT_OPTION_ASCII) != 0); | 243 | + // Initialize ft control structure. |
| 244 | + ft_last_cr = False; | ||
| 245 | + ft_is_cut = False; | ||
| 246 | + | ||
| 247 | + ftHandle = lib3270_malloc(sizeof(H3270FT)+strlen(local)+strlen(remote)+3); | ||
| 248 | + | ||
| 249 | + ftHandle->sz = sizeof(H3270FT); | ||
| 250 | + ftHandle->host = session; | ||
| 251 | + ftHandle->flags = flags; | ||
| 252 | + ftHandle->local_file = ft_local_file; | ||
| 253 | + ftHandle->length = ft_length; | ||
| 254 | + ftHandle->state = LIB3270_FT_STATE_AWAIT_ACK; | ||
| 255 | + ftHandle->complete = def_complete; | ||
| 256 | + ftHandle->message = def_message; | ||
| 257 | + ftHandle->update = def_update; | ||
| 258 | + ftHandle->running = def_running; | ||
| 259 | + ftHandle->aborting = def_aborting; | ||
| 260 | + ftHandle->state_changed = def_state_changed; | ||
| 261 | + ftHandle->lrecl = lrecl; | ||
| 262 | + ftHandle->blksize = blksize; | ||
| 263 | + ftHandle->primspace = primspace; | ||
| 264 | + ftHandle->secspace = secspace; | ||
| 265 | + ftHandle->dft = dft; | ||
| 266 | + | ||
| 267 | + ftHandle->local = (char *) (ftHandle+1); | ||
| 268 | + strcpy((char *) ftHandle->local,local); | ||
| 269 | + | ||
| 270 | + ftHandle->remote = ftHandle->local + strlen(ftHandle->local)+1; | ||
| 271 | + strcpy((char *) ftHandle->remote,remote); | ||
| 272 | + | ||
| 273 | + session->ft = ftHandle; | ||
| 274 | + | ||
| 275 | + return ftsession = ftHandle; | ||
| 276 | + } | ||
| 252 | 277 | ||
| 253 | - if(flags & LIB3270_FT_OPTION_RECEIVE) | 278 | + LIB3270_EXPORT int lib3270_ft_start(H3270FT *ft) |
| 279 | + { | ||
| 280 | + static const char * rec = "fvu"; | ||
| 281 | + static const char * un[] = { "tracks", "cylinders", "avblock" }; | ||
| 282 | + | ||
| 283 | + char op[4096]; | ||
| 284 | + char buffer[4096]; | ||
| 285 | + unsigned int flen; | ||
| 286 | + unsigned short recfm; | ||
| 287 | + unsigned short units; | ||
| 288 | + | ||
| 289 | + CHECK_FT_HANDLE(ft); | ||
| 290 | + | ||
| 291 | + recfm = (ft->flags & FT_RECORD_FORMAT_MASK) >> 8; | ||
| 292 | + units = (ft->flags & FT_ALLOCATION_UNITS_MASK) >> 12; | ||
| 293 | + ascii_flag = ((ft->flags & LIB3270_FT_OPTION_ASCII) != 0); | ||
| 294 | + cr_flag = ((ft->flags & LIB3270_FT_OPTION_CRLF) != 0); | ||
| 295 | + remap_flag = ((ft->flags & LIB3270_FT_OPTION_ASCII) != 0); | ||
| 296 | + | ||
| 297 | + if(ft->flags & LIB3270_FT_OPTION_RECEIVE) | ||
| 254 | { | 298 | { |
| 255 | // Receiving file | 299 | // Receiving file |
| 256 | - lib3270_write_log(session,"ft","Receiving file %s",local); | 300 | + lib3270_write_log(ft->host,"ft","Receiving file %s",ft->local); |
| 257 | } | 301 | } |
| 258 | else | 302 | else |
| 259 | { | 303 | { |
| 260 | // Sending file | 304 | // Sending file |
| 261 | - if(fseek(ft_local_file,0L,SEEK_END) < 0) | 305 | + if(fseek(ft->local_file,0L,SEEK_END) < 0) |
| 262 | { | 306 | { |
| 263 | - *msg = N_( "Can't get file size" ); | ||
| 264 | - return NULL; | 307 | + ft_complete(ft,N_( "Can't get file size" )); |
| 308 | + return errno ? errno : -1; | ||
| 265 | } | 309 | } |
| 266 | 310 | ||
| 267 | - ft_length = ftell(ft_local_file); | 311 | + ft_length = ftell(ft->local_file); |
| 268 | 312 | ||
| 269 | - lib3270_write_log(session,"ft","Sending file %s (%ld bytes)",local,ft_length); | ||
| 270 | - rewind(ft_local_file); | 313 | + lib3270_write_log(ft->host,"ft","Sending file %s (%ld bytes)",ft->local,ft_length); |
| 314 | + rewind(ft->local_file); | ||
| 271 | } | 315 | } |
| 272 | 316 | ||
| 273 | /* Build the ind$file command */ | 317 | /* Build the ind$file command */ |
| 274 | snprintf(op,4095,"%s%s%s", | 318 | snprintf(op,4095,"%s%s%s", |
| 275 | - (flags & LIB3270_FT_OPTION_ASCII) ? " ASCII" : "", | ||
| 276 | - (flags & LIB3270_FT_OPTION_CRLF) ? " CRLF" : "", | ||
| 277 | - (flags & LIB3270_FT_OPTION_APPEND) ? " APPEND" : "" | 319 | + (ft->flags & LIB3270_FT_OPTION_ASCII) ? " ASCII" : "", |
| 320 | + (ft->flags & LIB3270_FT_OPTION_CRLF) ? " CRLF" : "", | ||
| 321 | + (ft->flags & LIB3270_FT_OPTION_APPEND) ? " APPEND" : "" | ||
| 278 | ); | 322 | ); |
| 279 | 323 | ||
| 280 | - if(!(flags & LIB3270_FT_OPTION_RECEIVE)) | 324 | + if(!(ft->flags & LIB3270_FT_OPTION_RECEIVE)) |
| 281 | { | 325 | { |
| 282 | - if(flags & LIB3270_FT_OPTION_TSO) | 326 | + if(ft->flags & LIB3270_FT_OPTION_TSO) |
| 283 | { | 327 | { |
| 284 | // TSO Host | 328 | // TSO Host |
| 285 | if(recfm > 0) | 329 | if(recfm > 0) |
| 286 | { | 330 | { |
| 287 | snconcat(op,4096," recfm(%c)",rec[recfm-1]); | 331 | snconcat(op,4096," recfm(%c)",rec[recfm-1]); |
| 288 | 332 | ||
| 289 | - if(lrecl > 0) | ||
| 290 | - snconcat(op,4096," lrecl(%d)",lrecl); | 333 | + if(ft->lrecl > 0) |
| 334 | + snconcat(op,4096," lrecl(%d)",ft->lrecl); | ||
| 291 | 335 | ||
| 292 | - if(blksize > 0) | ||
| 293 | - snconcat(op,4096," blksize(%d)", blksize); | 336 | + if(ft->blksize > 0) |
| 337 | + snconcat(op,4096," blksize(%d)", ft->blksize); | ||
| 294 | } | 338 | } |
| 295 | 339 | ||
| 296 | if(units > 0) | 340 | if(units > 0) |
| 297 | { | 341 | { |
| 298 | snconcat(op,4096," %s",un[units-1]); | 342 | snconcat(op,4096," %s",un[units-1]); |
| 299 | 343 | ||
| 300 | - if(primspace > 0) | 344 | + if(ft->primspace > 0) |
| 301 | { | 345 | { |
| 302 | - snconcat(op,4096," space(%d",primspace); | ||
| 303 | - if(secspace) | ||
| 304 | - snconcat(op,4096,",%d",secspace); | 346 | + snconcat(op,4096," space(%d",ft->primspace); |
| 347 | + if(ft->secspace) | ||
| 348 | + snconcat(op,4096,",%d",ft->secspace); | ||
| 305 | snconcat(op,4096,"%s",")"); | 349 | snconcat(op,4096,"%s",")"); |
| 306 | } | 350 | } |
| 307 | } | 351 | } |
| @@ -313,20 +357,20 @@ static void set_ft_state(H3270FT *session, LIB3270_FT_STATE state); | @@ -313,20 +357,20 @@ static void set_ft_state(H3270FT *session, LIB3270_FT_STATE state); | ||
| 313 | { | 357 | { |
| 314 | snconcat(op,4096," recfm %c",rec[recfm-1]); | 358 | snconcat(op,4096," recfm %c",rec[recfm-1]); |
| 315 | 359 | ||
| 316 | - if(lrecl > 0) | ||
| 317 | - snconcat(op,4096," lrecl %d",lrecl); | 360 | + if(ft->lrecl > 0) |
| 361 | + snconcat(op,4096," lrecl %d",ft->lrecl); | ||
| 318 | 362 | ||
| 319 | } | 363 | } |
| 320 | } | 364 | } |
| 321 | } | 365 | } |
| 322 | 366 | ||
| 323 | snprintf(buffer,4095,"%s %s %s", "IND$FILE", | 367 | snprintf(buffer,4095,"%s %s %s", "IND$FILE", |
| 324 | - (flags & LIB3270_FT_OPTION_RECEIVE) ? "GET" : "PUT", | ||
| 325 | - remote ); | 368 | + (ft->flags & LIB3270_FT_OPTION_RECEIVE) ? "GET" : "PUT", |
| 369 | + ft->remote ); | ||
| 326 | 370 | ||
| 327 | if(*op) | 371 | if(*op) |
| 328 | { | 372 | { |
| 329 | - if(flags & LIB3270_FT_OPTION_TSO) | 373 | + if(ft->flags & LIB3270_FT_OPTION_TSO) |
| 330 | snconcat(buffer,4095," %s",op+1); | 374 | snconcat(buffer,4095," %s",op+1); |
| 331 | else | 375 | else |
| 332 | snconcat(buffer,4095," (%s)",op+1); | 376 | snconcat(buffer,4095," (%s)",op+1); |
| @@ -338,40 +382,25 @@ static void set_ft_state(H3270FT *session, LIB3270_FT_STATE state); | @@ -338,40 +382,25 @@ static void set_ft_state(H3270FT *session, LIB3270_FT_STATE state); | ||
| 338 | flen = kybd_prime(); | 382 | flen = kybd_prime(); |
| 339 | if (!flen || flen < strlen(buffer) - 1) | 383 | if (!flen || flen < strlen(buffer) - 1) |
| 340 | { | 384 | { |
| 341 | - lib3270_write_log(session, "Unable to send command \"%s\" (flen=%d szBuffer=%d)",buffer,flen,strlen(buffer)); | ||
| 342 | - fclose(ft_local_file); | ||
| 343 | - *msg = _( "Unable to send file-transfer request" ); | ||
| 344 | - errno = EINVAL; | ||
| 345 | - return NULL; | 385 | + lib3270_write_log(ft->host, "Unable to send command \"%s\" (flen=%d szBuffer=%d)",buffer,flen,strlen(buffer)); |
| 386 | + ft_complete(ft,N_( "Unable to send file-transfer request" )); | ||
| 387 | + return errno = EINVAL; | ||
| 346 | } | 388 | } |
| 347 | 389 | ||
| 348 | trace_event("Sending FT request:\n%s\n",buffer); | 390 | trace_event("Sending FT request:\n%s\n",buffer); |
| 349 | 391 | ||
| 350 | - (void) lib3270_emulate_input(NULL, buffer, strlen(buffer), False); | ||
| 351 | - | ||
| 352 | - // Get this thing started. | ||
| 353 | - | ||
| 354 | - ft_last_cr = False; | ||
| 355 | - ft_is_cut = False; | 392 | + lib3270_emulate_input(ft->host, buffer, strlen(buffer), False); |
| 356 | 393 | ||
| 357 | - ftHandle = lib3270_malloc(sizeof(H3270FT)); | ||
| 358 | - | ||
| 359 | - ftHandle->sz = sizeof(H3270FT); | ||
| 360 | - ftHandle->host = session; | ||
| 361 | - ftHandle->ft_local_file = ft_local_file; | ||
| 362 | - ftHandle->length = ft_length; | ||
| 363 | - ftHandle->state = LIB3270_FT_STATE_AWAIT_ACK; | ||
| 364 | - ftHandle->complete = def_complete; | ||
| 365 | - ftHandle->update = def_update; | ||
| 366 | - ftHandle->running = def_running; | ||
| 367 | - ftHandle->aborting = def_aborting; | ||
| 368 | - ftHandle->state_changed = def_state_changed; | 394 | + if(ft->flags & LIB3270_FT_OPTION_RECEIVE) |
| 395 | + ft->message(ft,N_( "Waiting for GET response" )); | ||
| 396 | + else | ||
| 397 | + ft->message(ft,N_( "Waiting for PUT response" )); | ||
| 369 | 398 | ||
| 370 | - session->ft = ftHandle; | 399 | + return 0; |
| 371 | 400 | ||
| 372 | - return ftsession = ftHandle; | ||
| 373 | } | 401 | } |
| 374 | 402 | ||
| 403 | + | ||
| 375 | /* External entry points called by ft_dft and ft_cut. */ | 404 | /* External entry points called by ft_dft and ft_cut. */ |
| 376 | 405 | ||
| 377 | /** | 406 | /** |
| @@ -391,10 +420,10 @@ void ft_complete(H3270FT *session, const char *errmsg) | @@ -391,10 +420,10 @@ void ft_complete(H3270FT *session, const char *errmsg) | ||
| 391 | (double)(t1.tv_usec - starting_time.tv_usec) / 1.0e6); | 420 | (double)(t1.tv_usec - starting_time.tv_usec) / 1.0e6); |
| 392 | 421 | ||
| 393 | // Close the local file. | 422 | // Close the local file. |
| 394 | - if(session->ft_local_file) | 423 | + if(session->local_file) |
| 395 | { | 424 | { |
| 396 | - fclose(session->ft_local_file); | ||
| 397 | - session->ft_local_file = NULL; | 425 | + fclose(session->local_file); |
| 426 | + session->local_file = NULL; | ||
| 398 | } | 427 | } |
| 399 | 428 | ||
| 400 | // Clean up the state. | 429 | // Clean up the state. |
| @@ -402,7 +431,8 @@ void ft_complete(H3270FT *session, const char *errmsg) | @@ -402,7 +431,8 @@ void ft_complete(H3270FT *session, const char *errmsg) | ||
| 402 | 431 | ||
| 403 | ft_update_length(session); | 432 | ft_update_length(session); |
| 404 | 433 | ||
| 405 | - session->complete(session,errmsg,ft_length,kbytes_sec,ft_is_cut ? "CUT" : "DFT"); | 434 | + session->message(session,errmsg); |
| 435 | + session->complete(session,ft_length,kbytes_sec,ft_is_cut ? "CUT" : "DFT"); | ||
| 406 | 436 | ||
| 407 | } | 437 | } |
| 408 | 438 | ||
| @@ -413,10 +443,10 @@ LIB3270_EXPORT void lib3270_ft_destroy(H3270FT *session) | @@ -413,10 +443,10 @@ LIB3270_EXPORT void lib3270_ft_destroy(H3270FT *session) | ||
| 413 | if (session->state != LIB3270_FT_STATE_NONE) | 443 | if (session->state != LIB3270_FT_STATE_NONE) |
| 414 | lib3270_ft_cancel(session,1); | 444 | lib3270_ft_cancel(session,1); |
| 415 | 445 | ||
| 416 | - if(session->ft_local_file) | 446 | + if(session->local_file) |
| 417 | { | 447 | { |
| 418 | - fclose(session->ft_local_file); | ||
| 419 | - session->ft_local_file = NULL; | 448 | + fclose(session->local_file); |
| 449 | + session->local_file = NULL; | ||
| 420 | } | 450 | } |
| 421 | 451 | ||
| 422 | if(session == ftsession) | 452 | if(session == ftsession) |
ft_cut.c
| @@ -398,7 +398,7 @@ cut_data_request(void) | @@ -398,7 +398,7 @@ cut_data_request(void) | ||
| 398 | } | 398 | } |
| 399 | 399 | ||
| 400 | /* Check for errors. */ | 400 | /* Check for errors. */ |
| 401 | - if (ferror(((H3270FT *) h3270.ft)->ft_local_file)) { | 401 | + if (ferror(((H3270FT *) h3270.ft)->local_file)) { |
| 402 | int j; | 402 | int j; |
| 403 | 403 | ||
| 404 | /* Clean out any data we may have written. */ | 404 | /* Clean out any data we may have written. */ |
| @@ -411,7 +411,7 @@ cut_data_request(void) | @@ -411,7 +411,7 @@ cut_data_request(void) | ||
| 411 | } | 411 | } |
| 412 | 412 | ||
| 413 | /* Send special data for EOF. */ | 413 | /* Send special data for EOF. */ |
| 414 | - if (!count && feof(((H3270FT *) h3270.ft)->ft_local_file)) { | 414 | + if (!count && feof(((H3270FT *) h3270.ft)->local_file)) { |
| 415 | ctlr_add(O_UP_DATA, EOF_DATA1, 0); | 415 | ctlr_add(O_UP_DATA, EOF_DATA1, 0); |
| 416 | ctlr_add(O_UP_DATA+1, EOF_DATA2, 0); | 416 | ctlr_add(O_UP_DATA+1, EOF_DATA2, 0); |
| 417 | count = 2; | 417 | count = 2; |
| @@ -502,7 +502,7 @@ cut_data(void) | @@ -502,7 +502,7 @@ cut_data(void) | ||
| 502 | return; | 502 | return; |
| 503 | 503 | ||
| 504 | /* Write it to the file. */ | 504 | /* Write it to the file. */ |
| 505 | - if (fwrite((char *)cvbuf, conv_length, 1, ((H3270FT *) h3270.ft)->ft_local_file) == 0) { | 505 | + if (fwrite((char *)cvbuf, conv_length, 1, ((H3270FT *) h3270.ft)->local_file) == 0) { |
| 506 | cut_abort(SC_ABORT_FILE,_( "Error \"%s\" writing to local file (rc=%d)" ),strerror(errno),errno); | 506 | cut_abort(SC_ABORT_FILE,_( "Error \"%s\" writing to local file (rc=%d)" ),strerror(errno),errno); |
| 507 | } else { | 507 | } else { |
| 508 | ft_length += conv_length; | 508 | ft_length += conv_length; |
| @@ -570,7 +570,7 @@ xlate_getc(void) | @@ -570,7 +570,7 @@ xlate_getc(void) | ||
| 570 | } | 570 | } |
| 571 | 571 | ||
| 572 | /* Get the next byte from the file. */ | 572 | /* Get the next byte from the file. */ |
| 573 | - c = fgetc(((H3270FT *) h3270.ft)->ft_local_file); | 573 | + c = fgetc(((H3270FT *) h3270.ft)->local_file); |
| 574 | if (c == EOF) | 574 | if (c == EOF) |
| 575 | return c; | 575 | return c; |
| 576 | ft_length++; | 576 | ft_length++; |
ft_dft.c
| @@ -291,7 +291,7 @@ dft_data_insert(struct data_buffer *data_bufr) | @@ -291,7 +291,7 @@ dft_data_insert(struct data_buffer *data_bufr) | ||
| 291 | 291 | ||
| 292 | if (l) | 292 | if (l) |
| 293 | { | 293 | { |
| 294 | - rv = fwrite(s, l, (size_t)1,((H3270FT *) h3270.ft)->ft_local_file); | 294 | + rv = fwrite(s, l, (size_t)1,((H3270FT *) h3270.ft)->local_file); |
| 295 | if (rv == 0) | 295 | if (rv == 0) |
| 296 | break; | 296 | break; |
| 297 | ft_length += l; | 297 | ft_length += l; |
| @@ -302,7 +302,7 @@ dft_data_insert(struct data_buffer *data_bufr) | @@ -302,7 +302,7 @@ dft_data_insert(struct data_buffer *data_bufr) | ||
| 302 | len -= l; | 302 | len -= l; |
| 303 | } | 303 | } |
| 304 | } else { | 304 | } else { |
| 305 | - rv = fwrite((char *)data_bufr->data, my_length,(size_t)1, ((H3270FT *) h3270.ft)->ft_local_file); | 305 | + rv = fwrite((char *)data_bufr->data, my_length,(size_t)1, ((H3270FT *) h3270.ft)->local_file); |
| 306 | ft_length += my_length; | 306 | ft_length += my_length; |
| 307 | } | 307 | } |
| 308 | 308 | ||
| @@ -363,7 +363,7 @@ dft_get_request(void) | @@ -363,7 +363,7 @@ dft_get_request(void) | ||
| 363 | int c; | 363 | int c; |
| 364 | 364 | ||
| 365 | /* Read one byte and do CR/LF translation. */ | 365 | /* Read one byte and do CR/LF translation. */ |
| 366 | - c = fgetc(((H3270FT *) h3270.ft)->ft_local_file); | 366 | + c = fgetc(((H3270FT *) h3270.ft)->local_file); |
| 367 | if (c == EOF) { | 367 | if (c == EOF) { |
| 368 | break; | 368 | break; |
| 369 | } | 369 | } |
| @@ -373,7 +373,7 @@ dft_get_request(void) | @@ -373,7 +373,7 @@ dft_get_request(void) | ||
| 373 | * Not enough room to expand NL to | 373 | * Not enough room to expand NL to |
| 374 | * CR/LF. | 374 | * CR/LF. |
| 375 | */ | 375 | */ |
| 376 | - ungetc(c, ((H3270FT *) h3270.ft)->ft_local_file); | 376 | + ungetc(c, ((H3270FT *) h3270.ft)->local_file); |
| 377 | break; | 377 | break; |
| 378 | } | 378 | } |
| 379 | *bufptr++ = '\r'; | 379 | *bufptr++ = '\r'; |
| @@ -386,7 +386,7 @@ dft_get_request(void) | @@ -386,7 +386,7 @@ dft_get_request(void) | ||
| 386 | total_read++; | 386 | total_read++; |
| 387 | } else { | 387 | } else { |
| 388 | /* Binary read. */ | 388 | /* Binary read. */ |
| 389 | - numread = fread(bufptr, 1, numbytes, ((H3270FT *) h3270.ft)->ft_local_file); | 389 | + numread = fread(bufptr, 1, numbytes, ((H3270FT *) h3270.ft)->local_file); |
| 390 | if (numread <= 0) { | 390 | if (numread <= 0) { |
| 391 | break; | 391 | break; |
| 392 | } | 392 | } |
| @@ -404,13 +404,13 @@ dft_get_request(void) | @@ -404,13 +404,13 @@ dft_get_request(void) | ||
| 404 | numbytes -= numread; | 404 | numbytes -= numread; |
| 405 | total_read += numread; | 405 | total_read += numread; |
| 406 | } | 406 | } |
| 407 | - if (feof(((H3270FT *) h3270.ft)->ft_local_file) || ferror(((H3270FT *) h3270.ft)->ft_local_file)) { | 407 | + if (feof(((H3270FT *) h3270.ft)->local_file) || ferror(((H3270FT *) h3270.ft)->local_file)) { |
| 408 | break; | 408 | break; |
| 409 | } | 409 | } |
| 410 | } | 410 | } |
| 411 | 411 | ||
| 412 | /* Check for read error. */ | 412 | /* Check for read error. */ |
| 413 | - if (ferror(((H3270FT *) h3270.ft)->ft_local_file)) | 413 | + if (ferror(((H3270FT *) h3270.ft)->local_file)) |
| 414 | { | 414 | { |
| 415 | dft_abort(TR_GET_REQ, _( "Error \"%s\" reading from local file (rc=%d)" ), strerror(errno), errno); | 415 | dft_abort(TR_GET_REQ, _( "Error \"%s\" reading from local file (rc=%d)" ), strerror(errno), errno); |
| 416 | return; | 416 | return; |
| @@ -436,7 +436,7 @@ dft_get_request(void) | @@ -436,7 +436,7 @@ dft_get_request(void) | ||
| 436 | 436 | ||
| 437 | ft_length += total_read; | 437 | ft_length += total_read; |
| 438 | 438 | ||
| 439 | - if (feof(((H3270FT *) h3270.ft)->ft_local_file)) | 439 | + if (feof(((H3270FT *) h3270.ft)->local_file)) |
| 440 | { | 440 | { |
| 441 | dft_eof = True; | 441 | dft_eof = True; |
| 442 | } | 442 | } |