X-Git-Url: http://git.silcnet.org/gitweb/?a=blobdiff_plain;f=lib%2Fsilcclient%2Fclient_ftp.c;h=1f19f94567e106c4bfa5a39a9cdffba9be2cd3f4;hb=eccd01a53afd8273e9c2ea7ec4238ea2b9f884b0;hp=24233fc8fc5a2f84056f3dcd05a69182abec5d6f;hpb=8f6a3c8d1cfaf698acc1af78443ab74601ddc504;p=silc.git diff --git a/lib/silcclient/client_ftp.c b/lib/silcclient/client_ftp.c index 24233fc8..1f19f945 100644 --- a/lib/silcclient/client_ftp.c +++ b/lib/silcclient/client_ftp.c @@ -313,12 +313,8 @@ static void silc_client_ftp_open_handle(SilcSFTP sftp, /* Open the actual local file */ memset(path, 0, sizeof(path)); - if (session->path && strlen(session->path) < sizeof(path)) - strncat(path, session->path, strlen(session->path)); - if (strlen(session->filepath) > sizeof(path) - strlen(path)) - strncat(path, session->filepath, sizeof(path) - strlen(path) - 1); - else - strncat(path, session->filepath, strlen(session->filepath)); + snprintf(path, sizeof(path) - 1, "%s%s", session->path ? + session->path : "", session->filepath); session->fd = silc_file_open(path, O_RDWR | O_CREAT | O_EXCL); if (session->fd < 0) { /* Call monitor callback */