Current File : //usr/include/gsasl-compat.h |
/* gsasl-compat.h --- Header file for obsoleted features in GNU SASL Library.
* Copyright (C) 2002-2021 Simon Josefsson
*
* This file is part of GNU SASL Library.
*
* GNU SASL 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.
*
* GNU SASL 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 License along with GNU SASL Library; if not, write to the
* Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
* Boston, MA 02110-1301, USA.
*
*/
#ifndef GSASL_COMPAT_H
#define GSASL_COMPAT_H
#ifndef __attribute__
/* This feature is available in gcc versions 2.5 and later. */
#if __GNUC__ < 2 || (__GNUC__ == 2 && __GNUC_MINOR__ < 5)
#define __attribute__(Spec) /* empty */
#endif
#endif
/* Old error codes */
enum
{
GSASL_TOO_SMALL_BUFFER = 4,
GSASL_FOPEN_ERROR = 5,
GSASL_FCLOSE_ERROR = 6,
GSASL_GCRYPT_ERROR = GSASL_CRYPTO_ERROR,
GSASL_CANNOT_GET_CTX = 32,
GSASL_NEED_CLIENT_ANONYMOUS_CALLBACK = 11,
GSASL_NEED_CLIENT_PASSWORD_CALLBACK = 12,
GSASL_NEED_CLIENT_PASSCODE_CALLBACK = 13,
GSASL_NEED_CLIENT_PIN_CALLBACK = 14,
GSASL_NEED_CLIENT_AUTHORIZATION_ID_CALLBACK = 15,
GSASL_NEED_CLIENT_AUTHENTICATION_ID_CALLBACK = 16,
GSASL_NEED_CLIENT_SERVICE_CALLBACK = 17,
GSASL_NEED_SERVER_VALIDATE_CALLBACK = 18,
GSASL_NEED_SERVER_CRAM_MD5_CALLBACK = 19,
GSASL_NEED_SERVER_DIGEST_MD5_CALLBACK = 20,
GSASL_NEED_SERVER_EXTERNAL_CALLBACK = 21,
GSASL_NEED_SERVER_ANONYMOUS_CALLBACK = 22,
GSASL_NEED_SERVER_REALM_CALLBACK = 23,
GSASL_NEED_SERVER_SECURID_CALLBACK = 24,
GSASL_NEED_SERVER_SERVICE_CALLBACK = 25,
GSASL_NEED_SERVER_GSSAPI_CALLBACK = 26,
GSASL_NEED_SERVER_RETRIEVE_CALLBACK = 27,
GSASL_UNICODE_NORMALIZATION_ERROR = 28,
GSASL_NO_MORE_REALMS = 34,
GSASL_INVALID_HANDLE = 50
} __attribute__((deprecated));
typedef Gsasl Gsasl_ctx __attribute__((deprecated));
typedef Gsasl_session Gsasl_session_ctx __attribute__((deprecated));
extern GSASL_API int gsasl_client_listmech (Gsasl * ctx, char *out,
size_t *outlen)
__attribute__((deprecated));
extern GSASL_API int gsasl_server_listmech (Gsasl * ctx, char *out,
size_t *outlen)
__attribute__((deprecated));
extern GSASL_API int gsasl_client_step (Gsasl_session * sctx,
const char *input, size_t input_len,
char *output, size_t *output_len)
__attribute__((deprecated));
extern GSASL_API int gsasl_client_step_base64 (Gsasl_session * sctx,
const char *b64input,
char *b64output,
size_t b64output_len)
__attribute__((deprecated));
extern GSASL_API int gsasl_server_step (Gsasl_session * sctx,
const char *input, size_t input_len,
char *output, size_t *output_len)
__attribute__((deprecated));
extern GSASL_API int gsasl_server_step_base64 (Gsasl_session * sctx,
const char *b64input,
char *b64output,
size_t b64output_len)
__attribute__((deprecated));
extern GSASL_API void gsasl_client_finish (Gsasl_session * sctx)
__attribute__((deprecated));
extern GSASL_API void gsasl_server_finish (Gsasl_session * sctx)
__attribute__((deprecated));
extern GSASL_API Gsasl *gsasl_client_ctx_get (Gsasl_session * sctx)
__attribute__((deprecated));
extern GSASL_API Gsasl *gsasl_server_ctx_get (Gsasl_session * sctx)
__attribute__((deprecated));
extern GSASL_API void gsasl_client_application_data_set (Gsasl_session * sctx,
void
*application_data)
__attribute__((deprecated));
extern GSASL_API void *gsasl_client_application_data_get (Gsasl_session *
sctx)
__attribute__((deprecated));
extern GSASL_API void gsasl_server_application_data_set (Gsasl_session * sctx,
void
*application_data)
__attribute__((deprecated));
extern GSASL_API void *gsasl_server_application_data_get (Gsasl_session *
sctx)
__attribute__((deprecated));
extern GSASL_API int gsasl_randomize (int strong, char *data, size_t datalen)
__attribute__((deprecated));
extern GSASL_API Gsasl *gsasl_ctx_get (Gsasl_session * sctx)
__attribute__((deprecated));
extern GSASL_API int gsasl_encode_inline (Gsasl_session * sctx,
const char *input, size_t input_len,
char *output, size_t *output_len)
__attribute__((deprecated));
extern GSASL_API int gsasl_decode_inline (Gsasl_session * sctx,
const char *input, size_t input_len,
char *output, size_t *output_len)
__attribute__((deprecated));
extern GSASL_API void gsasl_application_data_set (Gsasl * ctx, void *appdata)
__attribute__((deprecated));
extern GSASL_API void *gsasl_application_data_get (Gsasl * ctx)
__attribute__((deprecated));
extern GSASL_API void gsasl_appinfo_set (Gsasl_session * sctx, void *appdata)
__attribute__((deprecated));
extern GSASL_API void *gsasl_appinfo_get (Gsasl_session * sctx)
__attribute__((deprecated));
extern GSASL_API const char *gsasl_server_suggest_mechanism (Gsasl * ctx,
const char
*mechlist)
__attribute__((deprecated));
extern GSASL_API int gsasl_base64_encode (char const *src, size_t srclength,
char *target, size_t targsize)
__attribute__((deprecated));
extern GSASL_API int gsasl_base64_decode (char const *src,
char *target, size_t targsize)
__attribute__((deprecated));
extern GSASL_API char *gsasl_stringprep_nfkc (const char *in, ssize_t len)
__attribute__((deprecated));
extern GSASL_API char *gsasl_stringprep_saslprep (const char *in,
int *stringprep_rc)
__attribute__((deprecated));
extern GSASL_API char *gsasl_stringprep_trace (const char *in,
int *stringprep_rc)
__attribute__((deprecated));
extern GSASL_API int gsasl_md5pwd_get_password (const char *filename,
const char *username,
char *key, size_t *keylen)
__attribute__((deprecated));
/* Callback prototypes */
typedef int (*Gsasl_client_callback_anonymous) (Gsasl_session * sctx,
char *out, size_t *outlen);
typedef int (*Gsasl_client_callback_authentication_id) (Gsasl_session * sctx,
char *out,
size_t *outlen);
typedef int (*Gsasl_client_callback_authorization_id) (Gsasl_session * sctx,
char *out,
size_t *outlen);
typedef int (*Gsasl_client_callback_password) (Gsasl_session * sctx,
char *out, size_t *outlen);
typedef int (*Gsasl_client_callback_passcode) (Gsasl_session * sctx,
char *out, size_t *outlen);
typedef int (*Gsasl_client_callback_pin) (Gsasl_session * sctx,
char *suggestion, char *out,
size_t *outlen);
typedef int (*Gsasl_client_callback_service) (Gsasl_session * sctx,
char *service,
size_t *servicelen,
char *hostname,
size_t *hostnamelen,
char *servicename,
size_t *servicenamelen);
typedef Gsasl_qop (*Gsasl_client_callback_qop) (Gsasl_session * sctx,
Gsasl_qop serverqops);
typedef size_t (*Gsasl_client_callback_maxbuf) (Gsasl_session * sctx,
size_t servermaxbuf);
typedef int (*Gsasl_client_callback_realm) (Gsasl_session * sctx, char *out,
size_t *outlen);
typedef int (*Gsasl_server_callback_retrieve) (Gsasl_session * sctx,
const char *authentication_id,
const char *authorization_id,
const char *realm, char *key,
size_t *keylen);
typedef int (*Gsasl_server_callback_validate) (Gsasl_session * sctx,
const char *authorization_id,
const char *authentication_id,
const char *password);
typedef int (*Gsasl_server_callback_gssapi) (Gsasl_session * sctx,
const char *clientname,
const char *authentication_id);
typedef int (*Gsasl_server_callback_securid) (Gsasl_session * sctx,
const char *authentication_id,
const char *authorization_id,
const char *passcode, char *pin,
char *suggestpin,
size_t *suggestpinlen);
typedef int (*Gsasl_server_callback_cram_md5) (Gsasl_session * sctx,
char *username,
char *challenge,
char *response);
typedef int (*Gsasl_server_callback_digest_md5) (Gsasl_session * sctx,
char *username, char *realm,
char *secrethash);
typedef int (*Gsasl_server_callback_service) (Gsasl_session * sctx,
char *service,
size_t *servicelen,
char *hostname,
size_t *hostnamelen);
typedef int (*Gsasl_server_callback_external) (Gsasl_session * sctx);
typedef int (*Gsasl_server_callback_anonymous) (Gsasl_session * sctx,
const char *token);
typedef int (*Gsasl_server_callback_realm) (Gsasl_session * sctx, char *out,
size_t *outlen, size_t nth);
typedef Gsasl_qop (*Gsasl_server_callback_qop) (Gsasl_session * sctx);
typedef size_t (*Gsasl_server_callback_maxbuf) (Gsasl_session * sctx);
typedef Gsasl_cipher (*Gsasl_server_callback_cipher) (Gsasl_session * sctx);
/* Obsolete client callbacks: callback-c.c */
extern GSASL_API void
gsasl_client_callback_authorization_id_set
(Gsasl * ctx, Gsasl_client_callback_authorization_id cb)
__attribute__((deprecated));
extern GSASL_API Gsasl_client_callback_authorization_id
gsasl_client_callback_authorization_id_get (Gsasl * ctx)
__attribute__((deprecated));
extern GSASL_API void
gsasl_client_callback_authentication_id_set
(Gsasl * ctx, Gsasl_client_callback_authentication_id cb)
__attribute__((deprecated));
extern GSASL_API Gsasl_client_callback_authentication_id
gsasl_client_callback_authentication_id_get (Gsasl * ctx)
__attribute__((deprecated));
extern GSASL_API void
gsasl_client_callback_anonymous_set (Gsasl * ctx,
Gsasl_client_callback_anonymous cb)
__attribute__((deprecated));
extern GSASL_API Gsasl_client_callback_anonymous
gsasl_client_callback_anonymous_get (Gsasl * ctx) __attribute__((deprecated));
extern GSASL_API void
gsasl_client_callback_password_set (Gsasl * ctx,
Gsasl_client_callback_password cb)
__attribute__((deprecated));
extern GSASL_API Gsasl_client_callback_password
gsasl_client_callback_password_get (Gsasl * ctx) __attribute__((deprecated));
extern GSASL_API void
gsasl_client_callback_passcode_set (Gsasl * ctx,
Gsasl_client_callback_passcode cb)
__attribute__((deprecated));
extern GSASL_API Gsasl_client_callback_passcode
gsasl_client_callback_passcode_get (Gsasl * ctx) __attribute__((deprecated));
extern GSASL_API void
gsasl_client_callback_pin_set (Gsasl * ctx, Gsasl_client_callback_pin cb)
__attribute__((deprecated));
extern GSASL_API Gsasl_client_callback_pin
gsasl_client_callback_pin_get (Gsasl * ctx) __attribute__((deprecated));
extern GSASL_API void
gsasl_client_callback_service_set (Gsasl * ctx,
Gsasl_client_callback_service cb)
__attribute__((deprecated));
extern GSASL_API Gsasl_client_callback_service
gsasl_client_callback_service_get (Gsasl * ctx) __attribute__((deprecated));
extern GSASL_API void
gsasl_client_callback_qop_set (Gsasl * ctx, Gsasl_client_callback_qop cb)
__attribute__((deprecated));
extern GSASL_API Gsasl_client_callback_qop
gsasl_client_callback_qop_get (Gsasl * ctx) __attribute__((deprecated));
extern GSASL_API void
gsasl_client_callback_maxbuf_set (Gsasl * ctx,
Gsasl_client_callback_maxbuf cb)
__attribute__((deprecated));
extern GSASL_API Gsasl_client_callback_maxbuf
gsasl_client_callback_maxbuf_get (Gsasl * ctx) __attribute__((deprecated));
extern GSASL_API
void gsasl_client_callback_realm_set (Gsasl * ctx,
Gsasl_client_callback_realm cb)
__attribute__((deprecated));
extern GSASL_API Gsasl_client_callback_realm
gsasl_client_callback_realm_get (Gsasl * ctx) __attribute__((deprecated));
/* Obsolete server callbacks: callback-s.c */
extern GSASL_API void
gsasl_server_callback_validate_set (Gsasl * ctx,
Gsasl_server_callback_validate cb)
__attribute__((deprecated));
extern GSASL_API Gsasl_server_callback_validate
gsasl_server_callback_validate_get (Gsasl * ctx) __attribute__((deprecated));
extern GSASL_API void
gsasl_server_callback_retrieve_set (Gsasl * ctx,
Gsasl_server_callback_retrieve cb)
__attribute__((deprecated));
extern GSASL_API Gsasl_server_callback_retrieve
gsasl_server_callback_retrieve_get (Gsasl * ctx) __attribute__((deprecated));
extern GSASL_API void
gsasl_server_callback_cram_md5_set (Gsasl * ctx,
Gsasl_server_callback_cram_md5 cb)
__attribute__((deprecated));
extern GSASL_API Gsasl_server_callback_cram_md5
gsasl_server_callback_cram_md5_get (Gsasl * ctx) __attribute__((deprecated));
extern GSASL_API void
gsasl_server_callback_digest_md5_set (Gsasl * ctx,
Gsasl_server_callback_digest_md5 cb)
__attribute__((deprecated));
extern GSASL_API Gsasl_server_callback_digest_md5
gsasl_server_callback_digest_md5_get (Gsasl * ctx)
__attribute__((deprecated));
extern GSASL_API void
gsasl_server_callback_external_set (Gsasl * ctx,
Gsasl_server_callback_external cb)
__attribute__((deprecated));
extern GSASL_API Gsasl_server_callback_external
gsasl_server_callback_external_get (Gsasl * ctx) __attribute__((deprecated));
extern GSASL_API void
gsasl_server_callback_anonymous_set (Gsasl * ctx,
Gsasl_server_callback_anonymous cb)
__attribute__((deprecated));
extern GSASL_API Gsasl_server_callback_anonymous
gsasl_server_callback_anonymous_get (Gsasl * ctx) __attribute__((deprecated));
extern GSASL_API void
gsasl_server_callback_realm_set (Gsasl * ctx, Gsasl_server_callback_realm cb)
__attribute__((deprecated));
extern GSASL_API Gsasl_server_callback_realm
gsasl_server_callback_realm_get (Gsasl * ctx) __attribute__((deprecated));
extern GSASL_API void
gsasl_server_callback_qop_set (Gsasl * ctx, Gsasl_server_callback_qop cb)
__attribute__((deprecated));
extern GSASL_API Gsasl_server_callback_qop
gsasl_server_callback_qop_get (Gsasl * ctx) __attribute__((deprecated));
extern GSASL_API void
gsasl_server_callback_maxbuf_set (Gsasl * ctx,
Gsasl_server_callback_maxbuf cb)
__attribute__((deprecated));
extern GSASL_API Gsasl_server_callback_maxbuf
gsasl_server_callback_maxbuf_get (Gsasl * ctx) __attribute__((deprecated));
extern GSASL_API void
gsasl_server_callback_cipher_set (Gsasl * ctx,
Gsasl_server_callback_cipher cb)
__attribute__((deprecated));
extern GSASL_API Gsasl_server_callback_cipher
gsasl_server_callback_cipher_get (Gsasl * ctx) __attribute__((deprecated));
extern GSASL_API void
gsasl_server_callback_securid_set (Gsasl * ctx,
Gsasl_server_callback_securid cb)
__attribute__((deprecated));
extern GSASL_API Gsasl_server_callback_securid
gsasl_server_callback_securid_get (Gsasl * ctx) __attribute__((deprecated));
extern GSASL_API void
gsasl_server_callback_gssapi_set (Gsasl * ctx,
Gsasl_server_callback_gssapi cb)
__attribute__((deprecated));
extern GSASL_API Gsasl_server_callback_gssapi
gsasl_server_callback_gssapi_get (Gsasl * ctx) __attribute__((deprecated));
extern GSASL_API void
gsasl_server_callback_service_set (Gsasl * ctx,
Gsasl_server_callback_service cb)
__attribute__((deprecated));
extern GSASL_API Gsasl_server_callback_service
gsasl_server_callback_service_get (Gsasl * ctx) __attribute__((deprecated));
extern GSASL_API int
gsasl_md5 (const char *in, size_t inlen,
char *out[]) __attribute__((deprecated));
extern GSASL_API int
gsasl_hmac_md5 (const char *key, size_t keylen,
const char *in, size_t inlen,
char *outhash[]) __attribute__((deprecated));
extern GSASL_API int
gsasl_sha1 (const char *in, size_t inlen,
char *out[]) __attribute__((deprecated));
extern GSASL_API int
gsasl_hmac_sha1 (const char *key, size_t keylen,
const char *in, size_t inlen,
char *outhash[]) __attribute__((deprecated));
#endif /* GSASL_COMPAT_H */