diff options
| author | Artyom V. Poptsov <poptsov.artyom@gmail.com> | 2014-08-26 12:40:04 +0400 |
|---|---|---|
| committer | Artyom V. Poptsov <poptsov.artyom@gmail.com> | 2014-08-26 12:40:04 +0400 |
| commit | 28d0ce537670945fd60e9d6e8356bd78670eb013 (patch) | |
| tree | 15b6ad1f39326b202b8c33a42b23cb8a3802c017 /tests/key.scm | |
| parent | tests/key.scm ("public-key->string"): New TC (diff) | |
| download | guile-ssh-28d0ce537670945fd60e9d6e8356bd78670eb013.tar.gz | |
ssh/key-func.c (guile_ssh_string_to_public_key): Fix a bug
* ssh/key-func.c (guile_ssh_string_to_public_key): Fix a bug: Call
`scm_dynwind_end' at the end of the procedure so call to the procedure
won't lead to segfaults.
* tests/key.scm ("public-key->string"): Improve.
("string->public-key"): New TC.
Diffstat (limited to 'tests/key.scm')
| -rw-r--r-- | tests/key.scm | 28 |
1 files changed, 22 insertions, 6 deletions
diff --git a/tests/key.scm b/tests/key.scm index 5eb4e7c..8e58cfb 100644 --- a/tests/key.scm +++ b/tests/key.scm @@ -80,14 +80,30 @@ (eq? 'dss (get-key-type *dsa-key*)) (eq? 'ecdsa (get-key-type *ecdsa-key*)))) + +;;; Converting between strings and keys + +(define %rsakey-pub-string + "AAAAB3NzaC1yc2EAAAADAQABAAABAQC+8H9j5Yt3xeqaAxXAtSbBsW0JsJegngwfLveHA0ev3ndEKruylR6CZgf6OxshTwUeBaqn7jJMf+6RRQPTcxihgtZAfdyKdPGWDtmePBnG64+uGEaP8N3KvCzlANKf5tmxS8brJlQhxKL8t+3IE8w3QmCMnCGKWprsL/ygPA9koWauUqqKvOQbZXdUEfLvZfnsE1laRyK4dwLiiM2vyGZM/2yePLP4xYu/uYdPFaukxt3DMcgrEy9zuVcU8wbkJMKM57sambvituzMVVqRdeMX9exZv32qcXlpChl4XjFClQ0lqOb8S8CNTPXm3zQ2ZJrQtUHiD54RYhlXD7X0TO6v") +(define %dsakey-pub-string + "AAAAB3NzaC1kc3MAAACBAOpnJ64w3Qo3HkCCODTPpLqPUrDLg0bxWdoae2tsXFwhBthIlCV8N0hTzOj1Qrgnx/WiuDk5qXSKOHisyqVBv8sGLOUTBy0Fdz1SobZ9+WGu5+5EiJm78MZcgtHXHu1GPuImANifbSaDJpIGKItq0V5WhpLXyQC7o0Vt70sGQboVAAAAFQDeu+6APBWXtqq2Ch+nODn7VDSIhQAAAIA5iGHYbztSq8KnWj1J/6GTvsPp1JFqZ3hFX5wlGIV4XxBdeEZnCPrhYJumM7SRjYjWMpW5eqFNs5o3d+rJPFFwDo7yW10WC3Bfpo5xRxU35xf/aFAVbm3vi/HRQvv4cFrwTLvPHgNYGYdZiHXCXPoYIh+WoKT9n3MfrBXB4hpAmwAAAIEArkWuRnbjfPVFpXrWGw6kMPVdhOZr1ghdlG5bY31y4UKUlmHvXx5YZ776dSRSMJY2u4lS73+SFgwPdkmpgGma/rZdd9gly9T7SiSr/4qXJyS8Muh203xsAU3ukRocY8lsvllKEGiCJmrUTJWmj0UYEDsbqy2k/1Yz2Q/awygyk9c=") +(define %ecdsakey-pub-string + "AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBHcpje/fp21KjuZFKgmKAAwHeYJ6e3ny4LwEVjZr8hOCVlBvqj7/krVqxbwZI7EcowbpYI1F8ZszS7zfUhKT3U4=") + (test-assert "public-key->string" - (let ((rsakey-pub "AAAAB3NzaC1yc2EAAAADAQABAAABAQC+8H9j5Yt3xeqaAxXAtSbBsW0JsJegngwfLveHA0ev3ndEKruylR6CZgf6OxshTwUeBaqn7jJMf+6RRQPTcxihgtZAfdyKdPGWDtmePBnG64+uGEaP8N3KvCzlANKf5tmxS8brJlQhxKL8t+3IE8w3QmCMnCGKWprsL/ygPA9koWauUqqKvOQbZXdUEfLvZfnsE1laRyK4dwLiiM2vyGZM/2yePLP4xYu/uYdPFaukxt3DMcgrEy9zuVcU8wbkJMKM57sambvituzMVVqRdeMX9exZv32qcXlpChl4XjFClQ0lqOb8S8CNTPXm3zQ2ZJrQtUHiD54RYhlXD7X0TO6v") - (dsakey-pub "AAAAB3NzaC1kc3MAAACBAOpnJ64w3Qo3HkCCODTPpLqPUrDLg0bxWdoae2tsXFwhBthIlCV8N0hTzOj1Qrgnx/WiuDk5qXSKOHisyqVBv8sGLOUTBy0Fdz1SobZ9+WGu5+5EiJm78MZcgtHXHu1GPuImANifbSaDJpIGKItq0V5WhpLXyQC7o0Vt70sGQboVAAAAFQDeu+6APBWXtqq2Ch+nODn7VDSIhQAAAIA5iGHYbztSq8KnWj1J/6GTvsPp1JFqZ3hFX5wlGIV4XxBdeEZnCPrhYJumM7SRjYjWMpW5eqFNs5o3d+rJPFFwDo7yW10WC3Bfpo5xRxU35xf/aFAVbm3vi/HRQvv4cFrwTLvPHgNYGYdZiHXCXPoYIh+WoKT9n3MfrBXB4hpAmwAAAIEArkWuRnbjfPVFpXrWGw6kMPVdhOZr1ghdlG5bY31y4UKUlmHvXx5YZ776dSRSMJY2u4lS73+SFgwPdkmpgGma/rZdd9gly9T7SiSr/4qXJyS8Muh203xsAU3ukRocY8lsvllKEGiCJmrUTJWmj0UYEDsbqy2k/1Yz2Q/awygyk9c=") - (ecdsakey-pub "AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBHcpje/fp21KjuZFKgmKAAwHeYJ6e3ny4LwEVjZr8hOCVlBvqj7/krVqxbwZI7EcowbpYI1F8ZszS7zfUhKT3U4=")) + (and (string=? (public-key->string *rsa-pub-key*) %rsakey-pub-string) + (string=? (public-key->string *dsa-pub-key*) %dsakey-pub-string) + (string=? (public-key->string *ecdsa-pub-key*) %ecdsakey-pub-string))) + +(test-assert "string->public-key" + (and (string=? (public-key->string (string->public-key %rsakey-pub-string 'rsa)) + %rsakey-pub-string) + (string=? (public-key->string (string->public-key %dsakey-pub-string 'dss)) + %dsakey-pub-string) + (string=? (public-key->string (string->public-key %ecdsakey-pub-string 'ecdsa)) + %ecdsakey-pub-string))) - (and (string=? (public-key->string *rsa-pub-key*) rsakey-pub) - (string=? (public-key->string *dsa-pub-key*) dsakey-pub) - (string=? (public-key->string *ecdsa-pub-key*) ecdsakey-pub)))) +;;; (test-end "key") |
