aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authormilo <milo@r0ot.me>2011-04-02 13:16:42 +0200
committermilo <milo@r0ot.me>2011-04-14 13:32:16 +0200
commit89a3385b98ff4def869b88e6b28559a7df51a2a0 (patch)
treefab410bbd3056ea7586f8676b6cd907233fb35ec
parent6138899592ee9614afbf40330fcad4e680df4f9b (diff)
downloadlibssh-89a3385b98ff4def869b88e6b28559a7df51a2a0.tar.gz
libssh-89a3385b98ff4def869b88e6b28559a7df51a2a0.tar.xz
libssh-89a3385b98ff4def869b88e6b28559a7df51a2a0.zip
Skip \r when reading private keys
-rw-r--r--src/keyfiles.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/src/keyfiles.c b/src/keyfiles.c
index 4f14a23..d902835 100644
--- a/src/keyfiles.c
+++ b/src/keyfiles.c
@@ -354,12 +354,13 @@ static int privatekey_dek_header(const char *header, unsigned int header_len,
}
#define get_next_line(p, len) { \
- while(p[len] == '\n') /* skip empty lines */ \
+ while(p[len] == '\n' || p[len] == '\r') /* skip empty lines */ \
len++; \
if(p[len] == '\0') /* EOL */ \
len = -1; \
else /* calculate length */ \
- for(p += len, len = 0; p[len] && p[len] != '\n'; len++); \
+ for(p += len, len = 0; p[len] && p[len] != '\n' \
+ && p[len] != '\r'; len++); \
}
static ssh_buffer privatekey_string_to_buffer(const char *pkey, int type,