Reformat ssh_socket_completewrite() and use const for buffer.

git-svn-id: svn+ssh://svn.berlios.de/svnroot/repos/libssh/trunk@465 7dcaeef0-15fb-0310-b436-a5af3365683c
This commit is contained in:
Andreas Schneider
2009-04-14 14:02:37 +00:00
parent e29ef25cdd
commit f2788c9866
2 changed files with 21 additions and 19 deletions

View File

@@ -489,7 +489,7 @@ int ssh_socket_is_open(struct socket *s);
int ssh_socket_fd_isset(struct socket *s, fd_set *set);
void ssh_socket_fd_set(struct socket *s, fd_set *set, int *fd_max);
int ssh_socket_completeread(struct socket *s, void *buffer, u32 len);
int ssh_socket_completewrite(struct socket *s, void *buffer, u32 len);
int ssh_socket_completewrite(struct socket *s, const void *buffer, u32 len);
int ssh_socket_wait_for_data(struct socket *s, SSH_SESSION *session, u32 len);
int ssh_socket_nonblocking_flush(struct socket *s);
int ssh_socket_blocking_flush(struct socket *s);

View File

@@ -301,27 +301,29 @@ int ssh_socket_completeread(struct socket *s, void *buffer, u32 len) {
/** \internal
* \brief Blocking write of len bytes
*/
int ssh_socket_completewrite(struct socket *s, const void *buffer, u32 len) {
SSH_SESSION *session = s->session;
int written = -1;
int ssh_socket_completewrite(struct socket *s, void *buffer, u32 len){
SSH_SESSION *session=s->session;
int written;
enter_function();
enter_function();
if(!ssh_socket_is_open(s)){
leave_function();
return SSH_ERROR;
}
while(len >0) {
written=ssh_socket_unbuffered_write(s,buffer,len);
if(written==0 || written==-1){
leave_function();
return SSH_ERROR;
}
len-=written;
buffer+=written;
}
if(! ssh_socket_is_open(s)) {
leave_function();
return SSH_OK;
return SSH_ERROR;
}
while (len >0) {
written = ssh_socket_unbuffered_write(s, buffer, len);
if (written == 0 || written == -1) {
leave_function();
return SSH_ERROR;
}
len -= written;
buffer += written;
}
leave_function();
return SSH_OK;
}
/** \internal