version 1.76, 2007/01/22 11:32:50 |
version 1.77, 2007/09/16 00:55:52 |
|
|
{ |
{ |
int local_fd, status; |
int local_fd, status; |
u_int handle_len, id, type; |
u_int handle_len, id, type; |
u_int64_t offset; |
off_t offset; |
char *handle, *data; |
char *handle, *data; |
Buffer msg; |
Buffer msg; |
struct stat sb; |
struct stat sb; |
|
|
struct outstanding_ack { |
struct outstanding_ack { |
u_int id; |
u_int id; |
u_int len; |
u_int len; |
u_int64_t offset; |
off_t offset; |
TAILQ_ENTRY(outstanding_ack) tq; |
TAILQ_ENTRY(outstanding_ack) tq; |
}; |
}; |
TAILQ_HEAD(ackhead, outstanding_ack) acks; |
TAILQ_HEAD(ackhead, outstanding_ack) acks; |
|
|
status = -1; |
status = -1; |
goto done; |
goto done; |
} |
} |
debug3("In write loop, ack for %u %u bytes at %llu", |
debug3("In write loop, ack for %u %u bytes at %lld", |
ack->id, ack->len, (unsigned long long)ack->offset); |
ack->id, ack->len, (long long)ack->offset); |
++ackid; |
++ackid; |
xfree(ack); |
xfree(ack); |
} |
} |
offset += len; |
offset += len; |
|
if (offset < 0) |
|
fatal("%s: offset < 0", __func__); |
} |
} |
if (showprogress) |
if (showprogress) |
stop_progress_meter(); |
stop_progress_meter(); |