From e04b5ae8c5875c2fe8ee6294ee48be522b5f5176 Mon Sep 17 00:00:00 2001 From: OBATA Akio Date: Sat, 19 Jun 2021 11:02:17 +0900 Subject: Fix yahoo_crypt() prototype mismatch pull the prototype from crypt.c and put it in crypt.h. Signed-off-by: OBATA Akio (cherry picked from commit ae84576d47ce9bf314b140d59470b3d04e5038f8) --- kopete/protocols/yahoo/libkyahoo/crypt.c | 3 +-- kopete/protocols/yahoo/libkyahoo/crypt.h | 39 +++++++++++++++++++++++++++++ kopete/protocols/yahoo/libkyahoo/libyahoo.c | 3 +-- 3 files changed, 41 insertions(+), 4 deletions(-) create mode 100644 kopete/protocols/yahoo/libkyahoo/crypt.h diff --git a/kopete/protocols/yahoo/libkyahoo/crypt.c b/kopete/protocols/yahoo/libkyahoo/crypt.c index ee15c345..d3425a40 100644 --- a/kopete/protocols/yahoo/libkyahoo/crypt.c +++ b/kopete/protocols/yahoo/libkyahoo/crypt.c @@ -34,6 +34,7 @@ #include +#include "crypt.h" #include "md5.h" /* for MIN and MAX */ #include "libyahoo.h" @@ -47,8 +48,6 @@ static const char md5_salt_prefix[] = "$1$"; static const char b64t[64] = "./0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz"; -char *yahoo_crypt(const char *key, const char *salt); - char *yahoo_crypt(const char *key, const char *salt) { char *buffer = NULL; diff --git a/kopete/protocols/yahoo/libkyahoo/crypt.h b/kopete/protocols/yahoo/libkyahoo/crypt.h new file mode 100644 index 00000000..5acf5f02 --- /dev/null +++ b/kopete/protocols/yahoo/libkyahoo/crypt.h @@ -0,0 +1,39 @@ +/* One way encryption based on MD5 sum. + Copyright (C) 1996, 1997, 1999, 2000 Free Software Foundation, Inc. + This file is part of the GNU C Library. + Contributed by Ulrich Drepper , 1996. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, write to the Free + Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA + 02110-1301 USA. */ + +/* warmenhoven took this file and made it work with the md5.[ch] we + * already had. isn't that lovely. people should just use linux or + * freebsd, crypt works properly on those systems. i hate solaris */ + +#ifndef crypt_INCLUDED +# define crypt_INCLUDED + +#ifdef __cplusplus +extern "C" +{ +#endif + +char *yahoo_crypt(const char *key, const char *salt); + +#ifdef __cplusplus +} /* end extern "C" */ +#endif + +#endif /* crypt_INCLUDED */ diff --git a/kopete/protocols/yahoo/libkyahoo/libyahoo.c b/kopete/protocols/yahoo/libkyahoo/libyahoo.c index b3a1f9f8..592adba8 100644 --- a/kopete/protocols/yahoo/libkyahoo/libyahoo.c +++ b/kopete/protocols/yahoo/libkyahoo/libyahoo.c @@ -54,8 +54,7 @@ #include "yahoo_fn.h" #include "md5.h" #include "sha1.h" - -extern char *yahoo_crypt(char *, char *); +#include "crypt.h" void yahooBase64(unsigned char *out, const unsigned char *in, int inlen) /* raw bytes in quasi-big-endian order to base 64 string (NUL-terminated) */ -- cgit v1.2.1