summaryrefslogtreecommitdiff
path: root/src (follow)
Commit message (Expand)AuthorAgeFilesLines
* Fix GC'ing of SSH objects.•••The program doesn't crashes anymore during GC'ing of channels and keys. * src/session-type.c (free_session): Mark all related channels as freed. (guile_ssh_make_session): Initialize the channels array. * src/key-type.c (mark_key_smob): Fix smob marking. * src/channel-type.c (free_channel): Check if the channel has been already freed along with the related SSH session. (guile_ssh_make_channel): Store the reference to the channel in the array of channels related to the SSH session. * src/channel-type.h: Add is_channel_alive field to channel_data. * TODO: Add to the repository. Artyom Poptsov2013-07-135-5/+54
* Improve working with public keys represented as a SSH string.•••* src/key-type.h: Improve storing of public keys represented as a SSH string -- store the key type along with the key itself. * src/key-func.c (guile_ssh_public_key_from_file): Likewise. (public_key_to_ssh_string): Update. * src/key-type.c (guile_ssh_key_get_type): New function. (scm_from_ssh_key_type): New static function. (free_key_smob): Update. (init_key_type): Define ssh:get-key-type. * src/key.scm: Export ssh:get-key-type. Artyom Poptsov2013-06-234-4/+80
* src/auth.c (guile_ssh_userauth_get_list): Fix a bug.•••* src/auth.c (guile_ssh_userauth_get_list): Fix a bug with wrong scm_append call during making the list. Artyom Poptsov2013-06-161-4/+4
* src/auth.{c,h,scm}: Implement ssh:userauth-get-list.•••Implement ssh:userauth-get-list that returns a list of available authentication methods for a given SSH session. * src/auth.c (guile_ssh_userauth_get_list): New function. (init_auth_func): Define ssh:userauth-get-list. * src/auth.h: Likewise. * src/auth.scm: Add ssh:userauth-get-list. Artyom Poptsov2013-06-163-1/+52
* src/key-func.c: Fix a comment.Artyom Poptsov2013-06-151-1/+1
* Improve working with public keys.•••Because some libssh functions working with public keys represented as a ssh_string instead of a ssh_public_key, we try to hide this peculiarity so all kinds of keys are look like a key_smob from the Scheme perspective. * src/key-type.h: Add ssh_public_key_str to key_data struct. * src/key-type.c (free_key_smob): Handle public keys that represented by a ssh_string. (guile_ssh_is_public_key_p): Likewise. * src/key-func.c (public_key_to_ssh_string): New function. (guile_ssh_public_key_to_string): Fix converting a public key. (guile_ssh_public_key_from_file): Make it work. * src/key-func.h: Add public_key_to_ssh_string. * src/Makefile.am: Add base64.c * src/base64.c, src/base64.h: New files. Artyom Poptsov2013-06-158-35/+243
* channel-func.c, auth.c: Fix compiler warnings.•••* src/channel-func.c: Include error.h (guile_ssh_channel_read): Initialize obtained_data with SCM_BOOL_F * src/auth.c: Include error.h (guile_ssh_userauth_pubkey): Initialize strings with null. Artyom Poptsov2013-06-082-3/+5
* session-func.c: Add default case for switches.•••* src/session-func.c (guile_ssh_connect) (guile_ssh_blocking_flush): Return 'error by default. Artyom Poptsov2013-06-081-6/+8
* src/session-func.c (set_uint32_opt): Fix a bug.•••* src/session-func.c (set_uint32_opt): Fix wrong variable assignment. Artyom Poptsov2013-06-081-1/+1
* src/Makefile.am (AM_LDFLAGS, AM_CFLAGS): Fix flags.•••* src/Makefile.am (AM_LDFLAGS): Fix flags. (AM_CFLAGS): Likewise. Add "-Wall" and "-g" flags. Artyom Poptsov2013-06-081-2/+2
* src/key-func.c: Fix SCM_ASSERT call.•••* src/key-func.c (guile_ssh_public_key_to_string): Fix SCM_ASSERT call. Artyom Poptsov2013-06-081-1/+1
* src/{channel,key}-func.c: Fix a bug.•••* src/channel-func.c (guile_ssh_channel_read): Fix call of undefined function. * src/key-func.c (guile_ssh_private_key_from_file): Likewise. Improve error handling. Artyom Poptsov2013-05-262-8/+4
* src/channel-func.c: Add checks for smob type.•••* src/channel-func.c (guile_ssh_channel_is_eof_p) (guile_ssh_channel_is_open_p, guile_ssh_channel_close) (guile_ssh_channel_read, guile_ssh_channel_pool) (guile_ssh_channel_request_env, guile_ssh_channel_request_exec) (guile_ssh_channel_open_session): Add check for smob type. Artyom Poptsov2013-05-251-32/+39
* src/auth.c: Fix comment.Artyom Poptsov2013-05-251-1/+1
* src/key-func.c: Add comments.Artyom Poptsov2013-05-251-0/+4
* src/*.h: Improve.•••* src/auth.h, src/channel-func.h, src/channel-type.h, src/error.h, src/key-func.h, src/key-type.h, src/session-func.h, src/session-type.h: Mark prototypes as external functions. Simplify SCM functions arg list. Artyom Poptsov2013-05-258-31/+33
* src/auth.c: Implement ssh:userauth-none!•••* src/auth.c (guile_ssh_userauth_none): New function. (ssh_auth_result_to_symbol): New static function. (guile_ssh_userauth_pubkey): Use ssh_auth_result_to_symbol to convert auth result to a Scheme symbol. (guile_ssh_userauth_password): Likewise. * src/auth.scm: Export ssh:userauth-none! Artyom Poptsov2013-05-242-42/+55
* src/session-func.c: Add comments.Artyom Poptsov2013-05-241-7/+31
* src/session-func.c (set_option): Implement missed options.•••* src/session-func.c (set_option): Implement missed options. (set_port_opt): New static function. Artyom Poptsov2013-05-241-20/+26
* src/session.scm: Export ssh:get-errorArtyom Poptsov2013-05-191-1/+2
* src/session-func.c (set_uint64_opt): Remove extra semicolon.Artyom Poptsov2013-05-191-1/+1
* src/session-type.c: Fix error handling.•••* src/session-type.c (guile_ssh_make_session): Return SCM_BOOL_F on error. Artyom Poptsov2013-05-191-4/+1
* Clean up the code. Fix coding style.Artyom Poptsov2013-05-1920-132/+135
* src/auth.scm: Fix comments.Artyom Poptsov2013-05-191-2/+2
* Improve the library.•••Quite stable version, but some functions are not implemented yet. Artyom Poptsov2013-05-1930-507/+1803
* src/ssh-error.c: Include libguile.hArtyom Poptsov2013-05-121-0/+2
* Fix a few function and variable names.•••* src/session.c (guile_ssh_blocking_flush): Fix a misspelled function name: scm_blockign_flush -> ssh_blocking_flush * src/channel.c (guile_ssh_channel_poll): Fix a misspelled function name: scm_is_boolean -> scm_is_bool (guile_ssh_channel_read): Likewise. Fix variable names. Artyom Poptsov2013-05-122-8/+8
* src/Makefile.am: Include Scheme files in the distribution.Artyom Poptsov2013-05-121-0/+7
* Initial commit.Artyom Poptsov2013-05-129-0/+764