diff options
Diffstat (limited to 'src/or/rendservice.c')
-rw-r--r-- | src/or/rendservice.c | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/src/or/rendservice.c b/src/or/rendservice.c index 0cad66da6d..c1c0c46d17 100644 --- a/src/or/rendservice.c +++ b/src/or/rendservice.c @@ -1940,6 +1940,16 @@ rend_service_parse_intro_for_v2( goto err; } + if (128 != crypto_pk_keysize(extend_info->onion_key)) { + if (err_msg_out) { + tor_asprintf(err_msg_out, + "invalid onion key size in version %d INTRODUCE%d cell", + intro->version, + (intro->type)); + } + + goto err; + } ver_specific_len = 7+DIGEST_LEN+2+klen; |