diff --git a/src/common/remoteio.c b/src/common/remoteio.c --- a/src/common/remoteio.c +++ b/src/common/remoteio.c @@ -30,7 +30,7 @@ int _remoteio_ssh_open(struct remoteio *rem, struct remoteio_server *server); int _remoteio_ssh_read(struct remoteio *rem, void *buf, size_t len, size_t *bytesread); -int _remoteio_ssh_write(struct remoteio *rem, void *buf, size_t len, size_t *bytesread); +int _remoteio_ssh_write(struct remoteio *rem, void *buf, size_t len, size_t *byteswritten); int _remoteio_ssh_close(struct remoteio *rem); /** @@ -161,29 +161,27 @@ int remoteio_open(struct remoteio **remo return 0; } - int remoteio_read(struct remoteio *rem, void *buf, size_t len, size_t *bytesread) { - return execio_read(rem->execio, buf, len, bytesread); + return funcmap[rem->method].read_func(rem, buf, len, bytesread); } int remoteio_write(struct remoteio *rem, void *buf, size_t len, size_t *byteswritten) { - return execio_write(rem->execio, buf, len, byteswritten); + return funcmap[rem->method].write_func(rem, buf, len, byteswritten); } int remoteio_close(struct remoteio *rem) { int rtn; - rtn = execio_close(rem->execio); + rtn = funcmap[rem->method].close_func(rem); free(rem); - return 0 + rtn; + return rtn; } - struct remoteio_server *remoteio_getserver(const struct remoteio_opts *opts, const char *servername) { struct remoteio_server *aserver; @@ -233,6 +231,23 @@ int _remoteio_ssh_open(struct remoteio * return 0; } -int _remoteio_ssh_read(struct remoteio *rem, void *buf, size_t len, size_t *bytesread); -int _remoteio_ssh_write(struct remoteio *rem, void *buf, size_t len, size_t *bytesread); -int _remoteio_ssh_close(struct remoteio *rem); +int _remoteio_ssh_read(struct remoteio *rem, void *buf, size_t len, size_t *bytesread) +{ + return execio_read(rem->execio, buf, len, bytesread); +} + +int _remoteio_ssh_write(struct remoteio *rem, void *buf, size_t len, size_t *byteswritten) +{ + return execio_write(rem->execio, buf, len, byteswritten); +} + +int _remoteio_ssh_close(struct remoteio *rem) +{ + int rtn; + + rtn = execio_close(rem->execio); + if(rtn) + fprintf(stderr, "%s:%d: error closing execio\n", __FILE__, __LINE__); + + return rtn; +}