1
1
Граф коммитов

795 Коммитов

Автор SHA1 Сообщение Дата
Aris Adamantiadis
3b52e38a33 auth: adapt libssh to gssapi-with-mic server
Reviewed-by: Andreas Schneider <asn@cryptomilk.org>
2013-07-13 14:21:36 +02:00
Aris Adamantiadis
950d8e89a9 callbacks: new callbacks for gssapi
Reviewed-by: Andreas Schneider <asn@cryptomilk.org>
2013-07-13 14:19:23 +02:00
Aris Adamantiadis
3d7b24c534 gssapi: added SSH constants
Reviewed-by: Andreas Schneider <asn@cryptomilk.org>
2013-07-13 14:12:06 +02:00
Aris Adamantiadis
66b37c856c session: Introduce SSH_TIMEOUT_DEFAULT
The default timeout of 30seconds is very nice when connecting to a new SSH
session, however it completely breaks the synchronous blocking API.
Use SSH_TIMEOUT_DEFAULT when in blocking mode so channel reads&write are blocking
as expected

Reviewed-by: Andreas Schneider <asn@cryptomilk.org>
2013-07-13 14:03:42 +02:00
Aris Adamantiadis
6bc64c368d server: added channel callbacks
Reviewed-by: Andreas Schneider <asn@cryptomilk.org>
2013-07-13 14:00:18 +02:00
Aris Adamantiadis
ab2e641b4a Defined SSH server callbacks interface
Reviewed-by: Andreas Schneider <asn@cryptomilk.org>
2013-07-13 13:59:58 +02:00
Andreas Schneider
2b68728552 socket: Check if socket (non)blocking is working. 2013-06-17 13:18:55 +02:00
Andreas Schneider
d83b3d9ebe pki: Limit privkey to 4M for now. 2013-06-17 12:07:32 +02:00
Andreas Schneider
8455d79bb6 priv: Make really sure memset doesn't get optimzed out. 2013-03-13 15:37:51 +01:00
Andreas Schneider
b2f52799c2 include: Fix the LGPL header.
This has been reported by rpmlint:
libssh-devel.x86_64: W: incorrect-fsf-address libssh.h
2013-01-23 00:22:46 +01:00
Aris Adamantiadis
63c3f0e736 Implement key re-exchange 2012-12-23 23:09:50 +01:00
Andreas Schneider
b14df297fa BUG 97: Fix strtoull() detection on serveral platforms. 2012-12-03 14:00:06 +01:00
Andreas Schneider
3896aa43ff BUG 96: Guard ntohll() and htonll prototypes correctly. 2012-12-03 13:44:02 +01:00
Andreas Schneider
da8d44ccba BUG 98: Use __attribute__ ((packed)) only with GCC. 2012-12-03 13:19:29 +01:00
Andreas Schneider
ea0e858de0 priv: Add BURN_BUFFER macro and make sure it isn't optimzed out. 2012-11-23 11:56:21 +01:00
Andreas Schneider
e403596d98 pki: Add a size limit for pubkey files. 2012-11-21 12:44:00 +01:00
Andreas Schneider
95ab34696b kex: Use getter functions to access kex arrays.
This should fix the build on OpenIndiana.
2012-10-12 17:46:37 +02:00
Andreas Schneider
f2c183b413 include: Fix an include recursion.
It includes itself: libssh.h -> legacy.h -> libssh.h.

Found by Coverity.
2012-10-12 08:07:01 +02:00
Dmitriy Kuznetsov
320951f42f kex: Add simple DES support for SSHv1. 2012-09-07 12:19:43 +02:00
Dmitriy Kuznetsov
e689375e45 dh: Add support for diffie-hellman-group14-sha1. 2012-09-04 16:17:46 +02:00
Andreas Schneider
43e3a8e497 socket: Add a SSH_WRITE_PENDING socket status. 2012-07-17 18:05:51 +02:00
Oliver Gasser
ad24427f03 options: Add option to specify host keys string.
Signed-off-by: Andreas Schneider <asn@cryptomilk.org>
2012-07-06 11:04:05 +02:00
Andreas Schneider
1973e833f2 server: Add ecdsa hostkey support. 2012-02-19 18:49:07 +01:00
Andreas Schneider
ee774479de session: Use a struct for all options. 2012-02-05 11:50:49 +01:00
Andreas Schneider
216cb8b1aa crypto: Add evp hashing function. 2012-02-04 23:44:55 +01:00
Andreas Schneider
9070b04184 pki: Add ecdsa support for signature_to_blob. 2012-02-04 18:37:04 +01:00
Andreas Schneider
b309dd8fb7 pki: Add support to generate ecdsa keys. 2012-02-04 18:37:04 +01:00
Andreas Schneider
f35c284761 pki: Add support to import ecdsa pubkeys. 2012-02-04 18:37:04 +01:00
Andreas Schneider
ea74a12b70 pki: Add support to import ecdsa private keys. 2012-02-04 18:37:03 +01:00
Martin Drasar
31727bf33a Ignore and debug messages can be sent using public API
Signed-off-by: Martin Drasar <drasar@ics.muni.cz>
Signed-off-by: Andreas Schneider <asn@cryptomilk.org>
2012-01-05 11:26:53 +01:00
rofl0r
2ffbdb0492 commit a7e14524c4f7903f607cdcd02b83782e89f0a82c 2012-01-02 16:31:37 +01:00
rofl0r
4305da29a1 session: Cleanup timeout functions.
It is possible that we get unrelated packets while waiting for
termination, thus waiting indefinitely. As a workaround we have to
check the user-supplied timeout.
2012-01-02 12:39:43 +01:00
Andreas Schneider
76fad364cd sftp: Add references to sftp_get_error() to docs. 2011-11-17 19:12:31 +01:00
Andreas Schneider
ce0324770d kex: Fix some build warnings. 2011-11-10 14:46:22 +01:00
Andreas Schneider
2c04994443 pki: Add a ssh_key_cmp() function. 2011-10-29 19:58:28 +02:00
Andreas Schneider
e799c0ce7d dh: Add ssh_get_publickey(). 2011-10-29 19:58:28 +02:00
Lee Hambley
e797781bb5 Implement ssh_options_get_port(ssh_session, unsigned int*). 2011-10-28 12:15:12 +02:00
Lee Hambley
6bd95b50f5 Implement ssh_options_get(ssh_session, enum ssh_options_e, char**). 2011-10-28 12:14:34 +02:00
Aris Adamantiadis
551a0c855b server: ssh_bind_accept_fd
This function will not call accept() but use function parameter
instead
2011-10-13 22:23:48 +02:00
Aris Adamantiadis
e38f2f933b pki: ssh_pki_generate
for both gcrypt and openssl
2011-09-24 01:36:58 +02:00
Andreas Schneider
5083742192 packet: Move packet callbacks to packet_cb.c. 2011-09-18 21:37:18 +02:00
Andreas Schneider
7202a26b6c priv: Remove dead prototype. 2011-09-18 21:37:17 +02:00
Andreas Schneider
b785014a15 crypt: Rename to packet_crypt. 2011-09-18 21:37:17 +02:00
Andreas Schneider
acfc8ea83f priv: Remove crypto.h and add correct includes to src files. 2011-09-18 21:37:17 +02:00
Andreas Schneider
c2686b8feb socket: Move socket function to right location. 2011-09-18 21:37:17 +02:00
Andreas Schneider
e7009fe8f3 priv: Create crc32.h.
As crc32 is only needed by SSHv1, build it only with SSHv1.
2011-09-18 21:37:17 +02:00
Andreas Schneider
ffb827b539 priv: Move gcrypt functions to gcrypt header. 2011-09-18 21:37:17 +02:00
Andreas Schneider
33754c391f priv: Start to remove enter_function. 2011-09-18 21:37:17 +02:00
Andreas Schneider
d7fa15df83 priv: Move kex functions to kex header. 2011-09-18 21:37:17 +02:00
Andreas Schneider
519291558d priv: Move options and config prototypes to own header. 2011-09-18 21:37:17 +02:00
Andreas Schneider
abd9856c6a priv: Move defines to the top. 2011-09-18 21:37:17 +02:00
Aris Adamantiadis
09b33b1b6e server: split dh_handsake_server 2011-09-18 20:34:16 +02:00
Aris Adamantiadis
af09313eac crypto: rename crypto_struct -> ssh_cipher_struct 2011-09-18 20:34:16 +02:00
Aris Adamantiadis
ac41a083ef kex: moved KEX structures to ssh_crypto_struct 2011-09-18 20:34:16 +02:00
Aris Adamantiadis
07abc3406d kex: split key selection and sending 2011-09-18 20:34:15 +02:00
Aris Adamantiadis
8f1161f649 scp: introduce a 64bits getter to respect ABI 2011-09-18 20:34:15 +02:00
Andreas Schneider
fa7798833a pki: Use ssh_log_function() for ssh_pki_log(). 2011-09-17 11:09:19 +02:00
Andreas Schneider
b96943e861 log: Split do_ssh_log(). 2011-09-17 11:05:17 +02:00
Andreas Schneider
569312f7bd log: Remove unneeded ssh_log_function(). 2011-09-17 11:00:33 +02:00
Andreas Schneider
c19c638d74 error: Use macros for error functions. 2011-09-17 10:38:08 +02:00
Aris Adamantiadis
68bab2a490 SSH1: handle exit-status message (channels would not close) 2011-09-14 22:53:01 +02:00
Aris Adamantiadis
1f31415760 auth: made keyboard-interactive nonblocking 2011-09-11 17:39:20 +02:00
Aris Adamantiadis
ff5bf51af1 Auth: nonblocking ssh_userauth_pubkey_auto 2011-09-11 17:22:27 +02:00
Aris Adamantiadis
33bd3d6cd9 auth: Implement nonblocking ssh_auth_agent 2011-09-11 17:22:26 +02:00
Aris Adamantiadis
28bfc7645c auth: different code for auth_agent 2011-09-11 17:22:26 +02:00
Andreas Schneider
35dce7e8d1 priv: Remove obsolete ssh_keys_struct. 2011-09-10 12:47:47 +02:00
Andreas Schneider
c8f48a2478 log: Improve the logging function. 2011-09-10 12:38:42 +02:00
Andreas Schneider
08129002de log: Add new debug log levels.
These should be used in future!
2011-09-10 12:31:54 +02:00
Andreas Schneider
c1f8b38b78 string: Add ssh_string_get_char(). 2011-09-08 16:14:35 +02:00
Andreas Schneider
5581323c2c string: Use the struct and array for allocating the struct. 2011-09-08 15:50:39 +02:00
Andreas Schneider
808c7a9be4 pki: Add ssh_pki_export_pubkey_rsa1(). 2011-09-05 11:28:19 +02:00
Andreas Schneider
a0e3facac7 pki: Add ecdsa key support. 2011-09-02 23:10:23 +02:00
Andreas Schneider
6dc7ddde3f channels: Export ssh_channel_poll_timeout(). 2011-09-02 22:40:32 +02:00
Aris Adamantiadis
20f8e73e3e Update libssh to ssh_handle_packets_termination
cherry-picked from 0cb5248

Should resolve all timeout problems

Conflicts:

	src/auth.c
	src/channels.c
2011-09-02 13:58:37 +03:00
Aris Adamantiadis
ef5701a535 Channels: fix the "server specified invalid channel" bug
Resolved by introducing a flag entry in channel structure.
2011-09-02 13:50:06 +03:00
Aris Adamantiadis
6d8bb956c5 channels: replaced bugged lists with ssh_list
cherry-picked from 0aef5f
Conflicts:

	src/session.c
2011-09-02 13:46:10 +03:00
Aris Adamantiadis
3eece8ac0b SSH1: fix build 2011-09-02 11:43:12 +03:00
Aris Adamantiadis
cb2a111fa1 channel: implement ssh_channel_poll_timeout
Resolves bug #57
2011-09-02 11:43:11 +03:00
Aris Adamantiadis
f9dad9ad68 channels: made all channel requests nonblocking 2011-09-02 11:42:59 +03:00
Andreas Schneider
5c48438dcb doc: Improve doc of ssh_message_auth_pubkey(). 2011-08-30 23:11:32 +02:00
Andreas Schneider
e5a39a3ae9 keys: Remove keys.h where it is obsolete. 2011-08-30 12:15:20 +02:00
Andreas Schneider
7093ac986d keys: Remove dead prototypes. 2011-08-30 12:15:20 +02:00
Andreas Schneider
822c68eb8e pki: Use consistent API for ssh_pki_export_privkey_to_pubkey(). 2011-08-30 10:28:57 +02:00
Andreas Schneider
60b92e458e pki: Use consistent API for ssh_pki_export_pubkey_blob(). 2011-08-30 10:16:53 +02:00
Andreas Schneider
a9eb0020b8 legacy: Move ssh_private_key and ssh_public_key typedefs. 2011-08-28 14:50:43 +02:00
Andreas Schneider
5cf23522de keyfiles: Remove keyfiles.h. 2011-08-28 14:26:40 +02:00
Andreas Schneider
be660e801a keyfiles: Remove try_publickey_from_file(). 2011-08-28 14:24:23 +02:00
Andreas Schneider
29ecccb96d keyfiles: Make ssh_try_publickey_from_file() legacy. 2011-08-28 14:19:07 +02:00
Andreas Schneider
16b47496c1 sftp: Don't create file page. 2011-08-28 13:20:58 +02:00
Andreas Schneider
21875bc71e sftp: Improve documentation. 2011-08-28 13:17:27 +02:00
Andreas Schneider
98ada12f66 libsshpp: Remove type argument from doc. 2011-08-27 13:58:53 +02:00
Andreas Schneider
79ed1bc601 pki: Handle hash correctly.
Looks like only DSA in grypt needs a leading zero to mark the has as
positive. See

http://lists.gnupg.org/pipermail/gcrypt-devel/2005-February/000754.html
2011-08-26 23:13:57 +02:00
Andreas Schneider
1d734f16cf legacy: Remove privatekey_from_base64().
This function has been introduced for libssh 0.6. So we can remove it
completely.
2011-08-26 21:46:56 +02:00
Andreas Schneider
696f574a56 keys: Remove obsolete signatue functions. 2011-08-26 10:48:37 +02:00
Andreas Schneider
7457937bab pki: Migrate ssh_pki_do_sign to new pki. 2011-08-26 09:51:02 +02:00
Andreas Schneider
892cb92f57 auth: Prefix kbdint functions. 2011-08-25 16:26:12 +02:00
Andreas Schneider
c59939d4a2 auth: Make ssh_userauth_privatekey_file() legacy. 2011-08-25 16:14:29 +02:00
Andreas Schneider
5c601115c3 auth: Refactor ssh_userauth_password(). 2011-08-25 16:14:21 +02:00
Andreas Schneider
89253fd22a auth: Make ssh_userauth_autopubkey legacy. 2011-08-25 10:19:09 +02:00
Andreas Schneider
21261270e5 auth: Add ssh_userauth_publickey_auto(). 2011-08-25 10:13:23 +02:00
Andreas Schneider
1a56892e9f keys: Remove obsolete ssh_do_sign(). 2011-08-25 10:13:23 +02:00
Andreas Schneider
c5643c0967 agent: Remove obsolete agent_sign_data(). 2011-08-25 10:13:23 +02:00
Andreas Schneider
c5837a6c63 keys: Remove obsolete ssh_do_sign_with_agent(). 2011-08-25 10:13:23 +02:00
Andreas Schneider
c221db0f36 auth: Add ssh_userauth_agent().
This commit is pretty big cause several functions have been refactored.
2011-08-25 10:13:23 +02:00
Andreas Schneider
4c1d3b708c auth: Make ssh_userauth_pubkey legacy. 2011-08-23 21:54:02 +02:00
Andreas Schneider
379d65eaaf auth: Add ssh_userauth_publickey(). 2011-08-23 21:54:02 +02:00
Andreas Schneider
aa018c1484 auth: Make ssh_userauth_try_publickey() legacy. 2011-08-23 21:54:02 +02:00
Andreas Schneider
609f8fbb7a auth: Add ssh_userauth_try_publickey(). 2011-08-23 21:54:01 +02:00
Andreas Schneider
2e577cecb4 auth: Move ssh_auth_list to legacy functions. 2011-08-23 21:54:01 +02:00
Andreas Schneider
149be78ee0 pki: We need only one signature verify blob function.
This fixes the build without server.
2011-08-23 08:19:53 +02:00
Andreas Schneider
9da331e79b dh: Remove obsolete signature functions. 2011-08-22 18:47:15 +02:00
Andreas Schneider
8c8a91a9b7 server: Migrate more functions to new pki. 2011-08-22 18:41:47 +02:00
Andreas Schneider
82ca6a6c53 pki: Add ssh_srv_pki_signature_verify_blob(). 2011-08-22 18:41:47 +02:00
Andreas Schneider
5cc98ed720 pki: Add ssh_pki_signature_verify_blob(). 2011-08-22 18:39:56 +02:00
Andreas Schneider
6c03b7a9c9 misc: Add ssh_match_group(). 2011-08-22 16:16:34 +02:00
Andreas Schneider
90167f09d3 server: Migrate hostkey check to new pki. 2011-08-22 15:22:58 +02:00
Andreas Schneider
1e019fee43 keys: Remove unused obsolete ssh_sign_session_id(). 2011-08-22 14:30:08 +02:00
Andreas Schneider
4de4520559 server: Use new pki infrastructure. 2011-08-22 14:29:39 +02:00
Andreas Schneider
d6829d073c kex: Move ssh_encrypt_rsa1 to SSHv1 kex code. 2011-08-22 13:58:02 +02:00
Andreas Schneider
79ffd49940 pki: Add ssh_srv_pki_do_sign_sessionid(). 2011-08-22 13:48:25 +02:00
Andreas Schneider
a2e08697b1 messages: Move ssh_userauth_build_digest() and make it static. 2011-08-22 12:57:01 +02:00
Andreas Schneider
1b57445f6b pki: Add ssh_pki_do_sign_agent(). 2011-08-21 13:43:20 +02:00
Andreas Schneider
af82d8dfab agent: Add ssh_agent_sign_data(). 2011-08-21 13:42:49 +02:00
Andreas Schneider
c041261921 pki: Create a pki private header file. 2011-08-21 11:15:29 +02:00
Andreas Schneider
a4b2518761 pki: Add ssh_pki_import_signature_blob(). 2011-08-21 11:03:53 +02:00
Andreas Schneider
4f19a304d1 pki: Add ssh_pki_export_signature_blob(). 2011-08-21 10:11:05 +02:00
Andreas Schneider
ab0354dbb6 priv: Add discard_const macros. 2011-08-21 10:10:27 +02:00
Andreas Schneider
ce41747fae pki: Introduce ssh_signature. 2011-08-20 18:37:43 +02:00
Andreas Schneider
743a00dad4 pki: Fix build warnings. 2011-08-20 11:07:54 +02:00
Andreas Schneider
c575de17a8 pki: Use a consistent naming scheme. 2011-08-19 11:14:23 +02:00
Andreas Schneider
c39181437b pki: Add ssh_pki_export_publickey_file(). 2011-08-16 23:04:25 +02:00
Andreas Schneider
ddcb88070b misc: Remove session from ssh_get_local_username(). 2011-08-16 23:04:25 +02:00
Andreas Schneider
1a0fbedc2e pki: Fix and rename ssh_pki_publickey_to_base64().
Rename it to ssh_pki_export_publickey_base64().
2011-08-16 23:04:25 +02:00
Andreas Schneider
254c30be2e pki: Remove session from ssh_pki_import_pubkey_* functions. 2011-08-16 19:33:24 +02:00
Andreas Schneider
25a2108809 pki: Remove session from ssh_pki_import_privkey_* functions. 2011-08-16 18:53:18 +02:00
Andreas Schneider
9dfef44fd8 pki: Add ssh_pki_publickey_to_base64(). 2011-08-16 00:47:43 +02:00
Andreas Schneider
c085892802 pki: Add ssh_pki_import_pubkey_file(). 2011-08-16 00:47:43 +02:00
Andreas Schneider
3f70bce373 pki: Rename ssh_pki_publickey_to_string and make it public. 2011-08-16 00:47:43 +02:00
Andreas Schneider
6c1b508efd pki: Rename ssh_pki_import_pubkey_string and make it public.
It should be named ssh_pki_import_pubkey_blob().
2011-08-16 00:47:43 +02:00
Andreas Schneider
6ffee22448 pki: Add ssh_pki_publickey_to_string(). 2011-08-15 18:48:08 +02:00
Andreas Schneider
2780f76247 pki: Flags are a bit mask so use hex. 2011-08-15 18:48:08 +02:00
Andreas Schneider
c77b23b32a pki: Cleanup pki header. 2011-08-15 18:48:08 +02:00
Andreas Schneider
e06b3dba0d bind: Read only once in ssh_bind_listen() (bug #11). 2011-08-15 16:50:30 +02:00
Andreas Schneider
190ae27463 pki: Added ssh_key_dup(). 2011-08-15 16:26:58 +02:00
Andreas Schneider
0523adf95c pki: Add ssh_pki_import_pubkey_string(). 2011-08-13 12:13:09 +02:00
Andreas Schneider
74d755873d pki: Use const. 2011-08-13 11:26:03 +02:00
Andreas Schneider
9c0af42dd8 pki: Use a consistent name scheme.
Rename ssh_key_import_private to ssh_pki_import_privkey_file.
2011-08-09 18:05:47 +02:00
Andreas Schneider
bec483bc18 pki: Add ssh_pki_import_pubkey_base64(). 2011-08-08 15:28:31 +02:00
Andreas Schneider
f81444bd57 pki: Add pki_do_sign(). 2011-08-08 15:28:31 +02:00
Andreas Schneider
9bed334da3 pki: Add ssh_pki_convert_key_to_privatekey(). 2011-08-08 15:28:31 +02:00