Loading lib/security.h +39 −76 Original line number Diff line number Diff line /* modified by Martin Hedenfalk <mhe@stacken.kth.se> for use in Curl * last modified 2000-09-18 */ /* * Copyright (c) 1998, 1999 Kungliga Tekniska Högskolan * (Royal Institute of Technology, Stockholm, Sweden). * All rights reserved. #ifndef __SECURITY_H #define __SECURITY_H /***************************************************************************** * _ _ ____ _ * Project ___| | | | _ \| | * / __| | | | |_) | | * | (__| |_| | _ <| |___ * \___|\___/|_| \_\_____| * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: * Copyright (C) 2001, Daniel Stenberg, <daniel@haxx.se>, et al. * * 1. Redistributions of source code must retain the above copyright * notice, this list of conditions and the following disclaimer. * In order to be useful for every potential user, curl and libcurl are * dual-licensed under the MPL and the MIT/X-derivate licenses. * * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. * You may opt to use, copy, modify, merge, publish, distribute and/or sell * copies of the Software, and permit persons to whom the Software is * furnished to do so, under the terms of the MPL or the MIT/X-derivate * licenses. You may pick one of these licenses. * * 3. Neither the name of the Institute nor the names of its contributors * may be used to endorse or promote products derived from this software * without specific prior written permission. * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY * KIND, either express or implied. * * THIS SOFTWARE IS PROVIDED BY THE INSTITUTE AND CONTRIBUTORS ``AS IS'' AND * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE * ARE DISCLAIMED. IN NO EVENT SHALL THE INSTITUTE OR CONTRIBUTORS BE LIABLE * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. */ /* $Id$ */ * $Id$ *****************************************************************************/ #ifndef __security_h__ #define __security_h__ /* this is a re-write */ #include <stdarg.h> #include "urldata.h" /* for struct connectdata * */ struct sec_client_mech { struct Curl_sec_client_mech { const char *name; size_t size; int (*init)(void *); Loading @@ -55,55 +40,33 @@ struct sec_client_mech { int (*decode)(void *, void*, int, int, struct connectdata *); }; struct sec_server_mech { char *name; size_t size; int (*init)(void *); void (*end)(void *); int (*check_prot)(void *, int); int (*overhead)(void *, int, int); int (*encode)(void *, void*, int, int, void**); int (*decode)(void *, void*, int, int); int (*auth)(void *); int (*adat)(void *, void*, size_t); size_t (*pbsz)(void *, size_t); int (*ccc)(void*); int (*userok)(void*, char*); }; #define AUTH_OK 0 #define AUTH_CONTINUE 1 #define AUTH_ERROR 2 extern struct sec_client_mech krb4_client_mech, gss_client_mech; extern int sec_complete; /* ---- */ extern struct Curl_sec_client_mech krb4_client_mech, gss_client_mech; int sec_fflush (struct connectdata *conn, FILE *); int sec_fflush_fd(struct connectdata *conn, int fd); int sec_fprintf (struct connectdata *, FILE *, const char *, ...); int sec_getc (struct connectdata *conn, FILE *); int sec_putc (struct connectdata *conn, int, FILE *); int sec_read (struct connectdata *conn, int, void *, int); int sec_read_msg (struct connectdata *conn, char *, int); int Curl_sec_fflush_fd(struct connectdata *conn, int fd); int Curl_sec_fprintf (struct connectdata *, FILE *, const char *, ...); int Curl_sec_getc (struct connectdata *conn, FILE *); int Curl_sec_putc (struct connectdata *conn, int, FILE *); int Curl_sec_read (struct connectdata *conn, int, void *, int); int Curl_sec_read_msg (struct connectdata *conn, char *, int); int sec_vfprintf(struct connectdata *, FILE *, const char *, va_list); int sec_fprintf2(struct connectdata *conn, FILE *f, const char *fmt, ...); int sec_vfprintf2(struct connectdata *conn, FILE *, const char *, va_list); int sec_write (struct connectdata *conn, int, char *, int); int Curl_sec_vfprintf(struct connectdata *, FILE *, const char *, va_list); int Curl_sec_fprintf2(struct connectdata *conn, FILE *f, const char *fmt, ...); int Curl_sec_vfprintf2(struct connectdata *conn, FILE *, const char *, va_list); int Curl_sec_write (struct connectdata *conn, int, char *, int); void sec_end (struct connectdata *); int sec_login (struct connectdata *); void sec_prot (int, char **); int sec_request_prot (struct connectdata *conn, const char *level); void sec_set_protection_level(struct connectdata *conn); void sec_status (void); void Curl_sec_end (struct connectdata *); int Curl_sec_login (struct connectdata *); void Curl_sec_prot (int, char **); int Curl_sec_request_prot (struct connectdata *conn, const char *level); void Curl_sec_set_protection_level(struct connectdata *conn); void Curl_sec_status (void); enum protection_level set_command_prot(struct connectdata *, enum protection_level); #endif /* __security_h__ */ #endif Loading
lib/security.h +39 −76 Original line number Diff line number Diff line /* modified by Martin Hedenfalk <mhe@stacken.kth.se> for use in Curl * last modified 2000-09-18 */ /* * Copyright (c) 1998, 1999 Kungliga Tekniska Högskolan * (Royal Institute of Technology, Stockholm, Sweden). * All rights reserved. #ifndef __SECURITY_H #define __SECURITY_H /***************************************************************************** * _ _ ____ _ * Project ___| | | | _ \| | * / __| | | | |_) | | * | (__| |_| | _ <| |___ * \___|\___/|_| \_\_____| * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: * Copyright (C) 2001, Daniel Stenberg, <daniel@haxx.se>, et al. * * 1. Redistributions of source code must retain the above copyright * notice, this list of conditions and the following disclaimer. * In order to be useful for every potential user, curl and libcurl are * dual-licensed under the MPL and the MIT/X-derivate licenses. * * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. * You may opt to use, copy, modify, merge, publish, distribute and/or sell * copies of the Software, and permit persons to whom the Software is * furnished to do so, under the terms of the MPL or the MIT/X-derivate * licenses. You may pick one of these licenses. * * 3. Neither the name of the Institute nor the names of its contributors * may be used to endorse or promote products derived from this software * without specific prior written permission. * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY * KIND, either express or implied. * * THIS SOFTWARE IS PROVIDED BY THE INSTITUTE AND CONTRIBUTORS ``AS IS'' AND * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE * ARE DISCLAIMED. IN NO EVENT SHALL THE INSTITUTE OR CONTRIBUTORS BE LIABLE * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. */ /* $Id$ */ * $Id$ *****************************************************************************/ #ifndef __security_h__ #define __security_h__ /* this is a re-write */ #include <stdarg.h> #include "urldata.h" /* for struct connectdata * */ struct sec_client_mech { struct Curl_sec_client_mech { const char *name; size_t size; int (*init)(void *); Loading @@ -55,55 +40,33 @@ struct sec_client_mech { int (*decode)(void *, void*, int, int, struct connectdata *); }; struct sec_server_mech { char *name; size_t size; int (*init)(void *); void (*end)(void *); int (*check_prot)(void *, int); int (*overhead)(void *, int, int); int (*encode)(void *, void*, int, int, void**); int (*decode)(void *, void*, int, int); int (*auth)(void *); int (*adat)(void *, void*, size_t); size_t (*pbsz)(void *, size_t); int (*ccc)(void*); int (*userok)(void*, char*); }; #define AUTH_OK 0 #define AUTH_CONTINUE 1 #define AUTH_ERROR 2 extern struct sec_client_mech krb4_client_mech, gss_client_mech; extern int sec_complete; /* ---- */ extern struct Curl_sec_client_mech krb4_client_mech, gss_client_mech; int sec_fflush (struct connectdata *conn, FILE *); int sec_fflush_fd(struct connectdata *conn, int fd); int sec_fprintf (struct connectdata *, FILE *, const char *, ...); int sec_getc (struct connectdata *conn, FILE *); int sec_putc (struct connectdata *conn, int, FILE *); int sec_read (struct connectdata *conn, int, void *, int); int sec_read_msg (struct connectdata *conn, char *, int); int Curl_sec_fflush_fd(struct connectdata *conn, int fd); int Curl_sec_fprintf (struct connectdata *, FILE *, const char *, ...); int Curl_sec_getc (struct connectdata *conn, FILE *); int Curl_sec_putc (struct connectdata *conn, int, FILE *); int Curl_sec_read (struct connectdata *conn, int, void *, int); int Curl_sec_read_msg (struct connectdata *conn, char *, int); int sec_vfprintf(struct connectdata *, FILE *, const char *, va_list); int sec_fprintf2(struct connectdata *conn, FILE *f, const char *fmt, ...); int sec_vfprintf2(struct connectdata *conn, FILE *, const char *, va_list); int sec_write (struct connectdata *conn, int, char *, int); int Curl_sec_vfprintf(struct connectdata *, FILE *, const char *, va_list); int Curl_sec_fprintf2(struct connectdata *conn, FILE *f, const char *fmt, ...); int Curl_sec_vfprintf2(struct connectdata *conn, FILE *, const char *, va_list); int Curl_sec_write (struct connectdata *conn, int, char *, int); void sec_end (struct connectdata *); int sec_login (struct connectdata *); void sec_prot (int, char **); int sec_request_prot (struct connectdata *conn, const char *level); void sec_set_protection_level(struct connectdata *conn); void sec_status (void); void Curl_sec_end (struct connectdata *); int Curl_sec_login (struct connectdata *); void Curl_sec_prot (int, char **); int Curl_sec_request_prot (struct connectdata *conn, const char *level); void Curl_sec_set_protection_level(struct connectdata *conn); void Curl_sec_status (void); enum protection_level set_command_prot(struct connectdata *, enum protection_level); #endif /* __security_h__ */ #endif