00001 /* 00002 * libsyncml - A syncml protocol implementation 00003 * Copyright (C) 2005 Armin Bauer <armin.bauer@opensync.org> 00004 * Copyright (C) 2008 Michael Bell <michael.bell@opensync.org> 00005 * 00006 * This library is free software; you can redistribute it and/or 00007 * modify it under the terms of the GNU Lesser General Public 00008 * License as published by the Free Software Foundation; either 00009 * version 2.1 of the License, or (at your option) any later version. 00010 * 00011 * This library is distributed in the hope that it will be useful, 00012 * but WITHOUT ANY WARRANTY; without even the implied warranty of 00013 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 00014 * Lesser General Public License for more details. 00015 * 00016 * You should have received a copy of the GNU Lesser General Public 00017 * License along with this library; if not, write to the Free Software 00018 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 00019 * 00020 */ 00021 00029 00030 #ifndef _SML_AUTH_INTERNALS_H_ 00031 #define _SML_AUTH_INTERNALS_H_ 00032 00033 #include "sml_auth.h" 00034 00035 struct SmlAuthenticator { 00036 SmlErrorType state; 00037 SmlAuthVerifyCb verifyCallback; 00038 void *verifyCallbackUserdata; 00039 SmlBool enabled; 00040 SmlAuthType type; 00041 }; 00042 00043 char *smlAuthGetCredString( 00044 SmlAuthType type, 00045 const char *username, 00046 const char *password, 00047 const char *b64_nonce, 00048 SmlError **error); 00049 00050 #endif //_SML_AUTH_INTERNALS_H_ 00051