diff options
Diffstat (limited to 'common/protocol.f90')
-rw-r--r-- | common/protocol.f90 | 27 |
1 files changed, 18 insertions, 9 deletions
diff --git a/common/protocol.f90 b/common/protocol.f90 index 992283c..46838b8 100644 --- a/common/protocol.f90 +++ b/common/protocol.f90 @@ -179,7 +179,8 @@ contains else - write(unit_number, '(A1)', advance='no') buffer(i) + !write(unit_number, '(A1)', advance='no') buffer(i) + write(unit_number) buffer(i) end if @@ -251,35 +252,43 @@ contains if(conn%code == CONNECTION_OPEN) then - successes(1) = send_string(conn%ssl, trim(url), trimming=.false.) - successes(2) = send_string(conn%ssl, ";token="//trim(token), trimming=.false.) + successes(1) = send_string(conn%ssl, trim(url), trimming=.false., allow_trailing_null=.false.) + successes(2) = send_string(conn%ssl, ";token="//trim(token), & + trimming=.false., allow_trailing_null=.false.) if(present(is_plain_text)) then if(is_plain_text) then - successes(3) = send_string(conn%ssl, ";mime=text/plain", trimming=.false.) + successes(3) = send_string(conn%ssl, ";mime=text/plain", & + trimming=.false., allow_trailing_null=.false.) else - successes(3) = send_string(conn%ssl, ";mime=application/octet-stream", trimming=.false.) + successes(3) = send_string(conn%ssl, ";mime=application/octet-stream", & + trimming=.false., allow_trailing_null=.false.) end if else - successes(3) = send_string(conn%ssl, ";mime=application/octet-stream", trimming=.false.) + successes(3) = send_string(conn%ssl, ";mime=application/octet-stream", & + trimming=.false., allow_trailing_null=.false.) end if write(file_length_text, '(I14)') file_length file_length_text = adjustl(file_length_text) - successes(4) = send_string(conn%ssl, ";size="//trim(file_length_text)//c_carriage_return//c_new_line, trimming=.false.) + + successes(4) = send_string(conn%ssl, & + ";size="//trim(file_length_text)//c_carriage_return//c_new_line, & + trimming=.false., & + allow_trailing_null=.false.) if(all(successes, 1)) then total_written = 0 bytes_read = read_into_buffer(unit_number, buffer) - Print *, "bytes read for sending: ", bytes_read + !Print *, "bytes read for sending: ", bytes_read do while(bytes_read > 0) bytes_written = ssl_write(conn%ssl, buffer(1:bytes_read)) total_written = total_written + bytes_written bytes_read = read_into_buffer(unit_number, buffer) - Print *, "bytes read for sending now: ", bytes_read, " and so far, we wrote", total_written + !Print *, "bytes read for sending now: ", bytes_read, " and so far, we wrote", total_written end do if(total_written >= file_length) then |