Fixes handling of the offset used in further sendfile calls if the first one transmitted only part of the request size.

sendfile doesn't guarantee that all requested bytes are send. Only a fraction might have been send, one would then continue from the new offset and transfer the remain bytes (bytesleft). sendfile will set the offset variable (off_t *offset, myOffset in the xrootd code) to the offset of the byte following the last byte that was read and return the number of bytes read (into retc). By adding retc to myOffset, the offset gets moved away from the byte following the last byte that was read to a (false) position further forward in the file.


You can view, comment on, or merge this pull request online at:

  https://github.com/xrootd/xrootd/pull/543

Commit Summary

File Changes

Patch Links:


You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub, or mute the thread.

{"api_version":"1.0","publisher":{"api_key":"05dde50f1d1a384dd78767c55493e4bb","name":"GitHub"},"entity":{"external_key":"github/xrootd/xrootd","title":"xrootd/xrootd","subtitle":"GitHub repository","main_image_url":"https://cloud.githubusercontent.com/assets/143418/17495839/a5054eac-5d88-11e6-95fc-7290892c7bb5.png","avatar_image_url":"https://cloud.githubusercontent.com/assets/143418/15842166/7c72db34-2c0b-11e6-9aed-b52498112777.png","action":{"name":"Open in GitHub","url":"https://github.com/xrootd/xrootd"}},"updates":{"snippets":[{"icon":"DESCRIPTION","message":"Fix handling of sendfile offset argument (#543)"}],"action":{"name":"View Pull Request","url":"https://github.com/xrootd/xrootd/pull/543"}}}

Use REPLY-ALL to reply to list

To unsubscribe from the XROOTD-DEV list, click the following link:
https://listserv.slac.stanford.edu/cgi-bin/wa?SUBED1=XROOTD-DEV&A=1