SUNWgnutls.copyright revision 12673
12673N/AFor the avoidance of doubt, except that if any license choice other
12673N/Athan GPL or LGPL is available it will apply instead, Sun elects to
12673N/Ause only the General Public License version 2 (GPLv2) at this time
12673N/Afor any software where a choice of GPL license versions is made
12673N/Aavailable with the language indicating that GPLv2 or any later
12673N/Aversion may be used, or where a choice of which version of the GPL
12673N/Ais applied is otherwise unspecified.
12673N/A
12673N/A--------------------------------------------------------------------
12673N/A
12673N/A All rights reserved.
12673N/A Copyright (c) 2001-2004 Platon SDG, http://platon.sk/
12673N/A libcfg+ - precise command line & config file parsing library
12673N/A
12673N/A shared.h - shared stuff for command line and config file
12673N/A parsing header file
12673N/A props.c - context properties manipulation
12673N/A ____________________________________________________________
12673N/A
12673N/A Developed by Ondrej Jombik <nepto@platon.sk>
12673N/A and Lubomir Host <rajo@platon.sk>
12673N/A
12673N/A See README file for more information about this software.
12673N/A See COPYING file for license information.
12673N/A
12673N/A Download the latest version from
12673N/A http://platon.sk/projects/libcfg+/
12673N/A
12673N/A
12673N/A $Platon: libcfg+/src/shared.h,v 1.13 2004/01/12 06:03:09 nepto Exp $
12673N/A
12673N/A*
12673N/A @file shared.h
12673N/A @brief shared stuff for command line and config file parsing header file
12673N/A @author Ondrej Jombik <nepto@platon.sk>
12673N/A @author Lubomir Host <rajo@platon.sk>
12673N/A @version \$Platon: libcfg+/src/shared.h,v 1.13 2004/01/12 06:03:09 nepto Exp $
12673N/A @date 2001-2004
12673N/A
12673N/A $Platon: libcfg+/src/props.c,v 1.34 2004/01/12 06:03:09 nepto Exp $
12673N/A
12673N/A Includes {{{
12673N/A
12673N/A--------------------------------------------------------------------
12673N/A
12673N/A All rights reserved.
12673N/A Copyright (c) 2001-2004 Platon SDG, http://platon.sk/
12673N/A libcfg+ - precise command line & config file parsing library
12673N/A
12673N/A cfg+.c - main implementation
12673N/A shared.c - shared stuff for command line and config file
12673N/A ____________________________________________________________
12673N/A
12673N/A Developed by Ondrej Jombik <nepto@platon.sk>
12673N/A and Lubomir Host <rajo@platon.sk>
12673N/A
12673N/A See README file for more information about this software.
12673N/A See COPYING file for license information.
12673N/A
12673N/A Download the latest version from
12673N/A http://platon.sk/projects/libcfg+/
12673N/A
12673N/A
12673N/A $Platon: libcfg+/src/cfg+.c,v 1.61 2004/01/12 06:03:08 nepto Exp $
12673N/A
12673N/A $Platon: libcfg+/src/shared.c,v 1.36 2004/01/12 06:03:09 nepto Exp $
12673N/A
12673N/A Includes {{{
12673N/A
12673N/A--------------------------------------------------------------------
12673N/A
12673N/A*************************************************************************
12673N/A *
12673N/A Advanced string locate, counting, removing, altering *
12673N/A and comparing functions *
12673N/A *
12673N/A Programmed by Ondrej Jombik <nepto@platon.sk> *
12673N/A Copyright (c) 1997-2000 Condy software inc. *
12673N/A Copyright (c) 2001-2004 Platon Software Development Group *
12673N/A All rights reserved. *
12673N/A *
12673N/A Updates: 16.4.2000, 8.11.2000, 5.10.2001, 21.10.2001, 5.12.2001 *
12673N/A 20.12.2001 - str_white_str() added (thanks to <rbarlik@yahoo.com>) *
12673N/A 4. 2.2002 - strins() added *
12673N/A 28. 2.2002 - str_white_str() bugfix *
12673N/A 24. 9.2003 - stristr() rewritten *
12673N/A *
12673N/A *************************************************************************
12673N/A
12673N/A*
12673N/A Advanced string locate, counting, removing, inserting
12673N/A and comparing functions
12673N/A
12673N/A @file platon/str/strplus.h
12673N/A @author Ondrej Jombik <nepto@platon.sk>
12673N/A @version \$Platon: libcfg+/src/platon/str/strplus.h,v 1.27 2004/01/12 06:03:09 nepto Exp $
12673N/A @date 1997-2004
12673N/A
12673N/A
12673N/A
12673N/A--------------------------------------------------------------------
12673N/A
12673N/A Copyright (C) 1994, 1996, 1997, 1998, 2001, 2003, 2005, 2006 Free
12673N/A Copyright (C) 2005 Free Software Foundation, Inc.
12673N/A Copyright (C) 2005, 2006 Free Software Foundation, Inc.
12673N/A getdelim.h --- Prototype for replacement getdelim function.
12673N/A
12673N/A getline.c --- Implementation of replacement getline function.
12673N/A
12673N/A getdelim.c --- Implementation of replacement getdelim function.
12673N/A Software Foundation, Inc.
12673N/A
12673N/A getline.h --- Prototype for replacement getline function.
12673N/A
12673N/A This program is free software; you can redistribute it and/or
12673N/A modify it under the terms of the GNU General Public License as
12673N/A published by the Free Software Foundation; either version 2, or (at
12673N/A your option) any later version.
12673N/A
12673N/A This program is distributed in the hope that it will be useful, but
12673N/A WITHOUT ANY WARRANTY; without even the implied warranty of
12673N/A MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12673N/A General Public License for more details.
12673N/A
12673N/A You should have received a copy of the GNU General Public License
12673N/A along with this program; if not, write to the Free Software
12673N/A Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
12673N/A 02110-1301, USA.
12673N/A
12673N/A Written by Simon Josefsson.
12673N/A
12673N/A Get size_t, FILE, ssize_t. And getdelim, if available.
12673N/A Ported from glibc by Simon Josefsson.
12673N/A Get size_t, FILE, ssize_t. And getline, if available.
12673N/A
12673N/A--------------------------------------------------------------------
12673N/A
12673N/A All rights reserved.
12673N/A Copyright (c) 2001-2004 Platon SDG, http://platon.sk/
12673N/A libcfg+ - precise command line & config file parsing library
12673N/A
12673N/A cmdline.h - command line parsing header file
12673N/A cmdline.c - command line parsing
12673N/A ____________________________________________________________
12673N/A
12673N/A Developed by Ondrej Jombik <nepto@platon.sk>
12673N/A and Lubomir Host <rajo@platon.sk>
12673N/A
12673N/A See README file for more information about this software.
12673N/A See COPYING file for license information.
12673N/A
12673N/A Download the latest version from
12673N/A http://platon.sk/projects/libcfg+/
12673N/A
12673N/A
12673N/A $Platon: libcfg+/src/cmdline.h,v 1.13 2004/01/12 06:03:09 nepto Exp $
12673N/A
12673N/A*
12673N/A @file cmdline.h
12673N/A @brief command line parsing header file
12673N/A @author Ondrej Jombik <nepto@platon.sk>
12673N/A @author Lubomir Host <rajo@platon.sk>
12673N/A @version \$Platon: libcfg+/src/cmdline.h,v 1.13 2004/01/12 06:03:09 nepto Exp $
12673N/A @date 2001-2004
12673N/A
12673N/A $Platon: libcfg+/src/cmdline.c,v 1.36 2004/01/12 06:03:09 nepto Exp $
12673N/A
12673N/A Includes {{{
12673N/A
12673N/A--------------------------------------------------------------------
12673N/A
12673N/A Copyright (C) 2004, 2005, 2006 Free Software Foundation
12673N/A Copyright (C) 2002 Fabio Fiorina
12673N/A
12673N/A This file is part of LIBTASN1.
12673N/A
12673N/A LIBTASN1 is free software; you can redistribute it and/or modify it
12673N/A under the terms of the GNU Lesser General Public License as
12673N/A published by the Free Software Foundation; either version 2.1 of
12673N/A the License, or (at your option) any later version.
12673N/A
12673N/A LIBTASN1 is distributed in the hope that it will be useful, but
12673N/A WITHOUT ANY WARRANTY; without even the implied warranty of
12673N/A MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12673N/A Lesser General Public License for more details.
12673N/A
12673N/A You should have received a copy of the GNU Lesser General Public
12673N/A License along with LIBTASN1; if not, write to the Free Software
12673N/A Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
12673N/A 02110-1301, USA
12673N/A
12673N/A
12673N/A
12673N/A
12673N/A--------------------------------------------------------------------
12673N/A
12673N/A Memory allocation on the stack.
12673N/A
12673N/A Copyright (C) 1995, 1999, 2001, 2002, 2003, 2004, 2006 Free Software
12673N/A Foundation, Inc.
12673N/A
12673N/A This program is free software; you can redistribute it and/or modify it
12673N/A under the terms of the GNU Lesser General Public License as published
12673N/A by the Free Software Foundation; either version 2.1, or (at your option)
12673N/A any later version.
12673N/A
12673N/A This program is distributed in the hope that it will be useful,
12673N/A but WITHOUT ANY WARRANTY; without even the implied warranty of
12673N/A MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12673N/A General Public License for more details.
12673N/A
12673N/A You should have received a copy of the GNU Lesser General Public
12673N/A License along with this program; if not, write to the Free Software
12673N/A Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
12673N/A USA.
12673N/A
12673N/A Avoid using the symbol _ALLOCA_H here, as Bison assumes _ALLOCA_H
12673N/A means there is a real alloca function.
12673N/A
12673N/A--------------------------------------------------------------------
12673N/A
12673N/A libcfg+ - precise command line & config file parsing library
12673N/A
12673N/A cfgfile.c - config file parsing
12673N/A ____________________________________________________________
12673N/A
12673N/A Developed by Ondrej Jombik <nepto@platon.sk>
12673N/A and Lubomir Host <rajo@platon.sk>
12673N/A Copyright (c) 2001-2003 Platon SDG, http://platon.sk/
12673N/A All rights reserved.
12673N/A
12673N/A See README file for more information about this software.
12673N/A See COPYING file for license information.
12673N/A
12673N/A Download the latest version from
12673N/A http://platon.sk/projects/libcfg+/
12673N/A
12673N/A
12673N/A $Platon: libcfg+/src/cfgfile.c,v 1.26 2003/11/07 17:26:48 nepto Exp $
12673N/A
12673N/A Includes {{{
12673N/A
12673N/A--------------------------------------------------------------------
12673N/A
12673N/A Author: Nikos Mavroyanopoulos
12673N/A Copyright (C) 2000, 2001, 2002, 2003, 2004, 2005 Free Software Foundation
12673N/A Copyright (C) 2000,2001,2002,2003,2006 Nikos Mavroyanopoulos
12673N/A Copyright (C) 2001,2002 Paul Sheer
12673N/A Copyright (C) 2004 Simon Josefsson
12673N/A Copyright (C) 2004, 2005, 2006 Free Software Foundation
12673N/A Copyright (C) 2004, 2005, 2006 Simon Josefsson
12673N/A Copyright (C) 2004, 2006 Free Software Foundation
12673N/A
12673N/A
12673N/A
12673N/A
12673N/A
12673N/A
12673N/A
12673N/A
12673N/A
12673N/A
12673N/A
12673N/A Portions Copyright (C) 2002,2003 Nikos Mavroyanopoulos
12673N/A
12673N/A This file is part of GNUTLS.
12673N/A
12673N/A GNUTLS is free software; you can redistribute it and/or modify
12673N/A it under the terms of the GNU General Public License as published by
12673N/A the Free Software Foundation; either version 2 of the License, or
12673N/A (at your option) any later version.
12673N/A
12673N/A GNUTLS is distributed in the hope that it will be useful,
12673N/A but WITHOUT ANY WARRANTY; without even the implied warranty of
12673N/A MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12673N/A GNU General Public License for more details.
12673N/A
12673N/A You should have received a copy of the GNU General Public License
12673N/A along with this program; if not, write to the Free Software
12673N/A Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
12673N/A
12673N/A
12673N/A
12673N/A SOAP:
12673N/A
12673N/A Academics always want to implement hash tables (i.e. dictionaries),
12673N/A singly or doubly linked lists, and queues, because ... well ... they
12673N/A know how.
12673N/A
12673N/A These datatypes are nonsense for the following reasons:
12673N/A hash tables: Hash tables are a mapping of some
12673N/A string to some data, where that data is going to
12673N/A be accessed COMPLETELY RANDOMLY. This is what it
12673N/A is for. However it is extremely rare to have a
12673N/A large number of data elements which really are
12673N/A being accessed in a completely random way.
12673N/A
12673N/A lists: appending and searching through lists is always
12673N/A slow because these operations search all the way
12673N/A through the list.
12673N/A
12673N/A queues: whats the difference between a queue and a list?
12673N/A very little really.
12673N/A
12673N/A The system implemented here is a doubly linked list with previous
12673N/A search index that can be appended or prepended with no overhead,
12673N/A implemented entirely in macros. It is hence as versatile as a
12673N/A doubly/singly linked list or queue and blazingly fast. Hence doing
12673N/A sequential searches where the next search result is likely to be
12673N/A closely indexed to the previous (usual case), is efficient.
12673N/A
12673N/A Of course this doesn't mean you should use this as a hash table
12673N/A where you REALLY need a hash table.
12673N/A
12673N/A
12673N/A
12673N/A********* example usage *********
12673N/A
12673N/A
12673N/A#include "list.h"
12673N/A
12673N/Aextern void free (void *x);
12673N/Aextern char *strdup (char *s);
12673N/A
12673N/A consider a list of elements containing an `int' and a `char *'
12673N/ALIST_TYPE_DECLARE (names, char *s; int i;);
12673N/A
12673N/A for sorting, to compare elements
12673N/Astatic int cm (names **a, names **b)
12673N/A{
12673N/A return strcmp ((*a)->s, (*b)->s);
12673N/A}
12673N/A
12673N/A to free the contents of an element
12673N/Astatic void free_item (names *a)
12673N/A{
12673N/A free (a->s);
12673N/A a->s = 0; // say
12673N/A a->i = 0; // say
12673N/A}
12673N/A
12673N/Aint main (int argc, char **argv)
12673N/A{
12673N/A you can separate these into LIST_TYPE_DECLARE(), LIST_DECLARE() and linit() if needed.
12673N/A LIST_DECLARE_INIT (l, names, free_item);
12673N/A names *j;
12673N/A
12673N/A lappend (l);
12673N/A l.tail->s = strdup ("hello");
12673N/A l.tail->i = 1;
12673N/A lappend (l);
12673N/A l.tail->s = strdup ("there");
12673N/A l.tail->i = 2;
12673N/A lappend (l);
12673N/A l.tail->s = strdup ("my");
12673N/A l.tail->i = 3;
12673N/A lappend (l);
12673N/A l.tail->s = strdup ("name");
12673N/A l.tail->i = 4;
12673N/A lappend (l);
12673N/A l.tail->s = strdup ("is");
12673N/A l.tail->i = 5;
12673N/A lappend (l);
12673N/A l.tail->s = strdup ("fred");
12673N/A l.tail->i = 6;
12673N/A
12673N/A printf ("%ld\n\n", lcount (l));
12673N/A lloopforward (l, j, printf ("%d %s\n", j->i, j->s));
12673N/A printf ("\n");
12673N/A
12673N/A lsort (l, cm);
12673N/A lloopforward (l, j, printf ("%d %s\n", j->i, j->s));
12673N/A
12673N/A lloopreverse (l, j, if (j->i <= 3) ldeleteinc (l, j););
12673N/A
12673N/A printf ("\n");
12673N/A lloopforward (l, j, printf ("%d %s\n", j->i, j->s));
12673N/A
12673N/A ldeleteall (l);
12673N/A
12673N/A printf ("\n");
12673N/A lloopforward (l, j, printf ("%d %s\n", j->i, j->s));
12673N/A return 0;
12673N/A}
12673N/A This server is heavily modified for GNUTLS by Nikos Mavroyanopoulos
12673N/A (which means it is quite unreadable)
12673N/A
12673N/A
12673N/A--------------------------------------------------------------------
12673N/A
12673N/A Author: Simon Josefsson
12673N/A Copyright (C) 2004, 2005 Free Software Foundation
12673N/A Copyright (C) 2005, 2006 Free Software Foundation
12673N/A Copyright (C) 2006 Free Software Foundation
12673N/A
12673N/A This file is part of GNUTLS.
12673N/A
12673N/A GNUTLS is free software; you can redistribute it and/or modify it
12673N/A under the terms of the GNU General Public License as published by
12673N/A the Free Software Foundation; either version 2 of the License, or
12673N/A (at your option) any later version.
12673N/A
12673N/A GNUTLS is distributed in the hope that it will be useful, but
12673N/A WITHOUT ANY WARRANTY; without even the implied warranty of
12673N/A MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12673N/A General Public License for more details.
12673N/A
12673N/A You should have received a copy of the GNU General Public License
12673N/A along with GNUTLS; if not, write to the Free Software Foundation,
12673N/A Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
12673N/A
12673N/A
12673N/A Parts copied from GnuTLS example programs.
12673N/A
12673N/A--------------------------------------------------------------------
12673N/A
12673N/A All rights reserved.
12673N/A Copyright (c) 2001-2004 Platon SDG, http://platon.sk/
12673N/A libcfg+ - precise command line & config file parsing library
12673N/A
12673N/A cfgfile.h - config file parsing header file
12673N/A parse.c - universal parsing functions
12673N/A ____________________________________________________________
12673N/A
12673N/A Developed by Ondrej Jombik <nepto@platon.sk>
12673N/A and Lubomir Host <rajo@platon.sk>
12673N/A
12673N/A See README file for more information about this software.
12673N/A See COPYING file for license information.
12673N/A
12673N/A Download the latest version from
12673N/A http://platon.sk/projects/libcfg+/
12673N/A
12673N/A
12673N/A $Platon: libcfg+/src/cfgfile.h,v 1.13 2004/01/12 06:03:09 nepto Exp $
12673N/A
12673N/A*
12673N/A @file cfgfile.h
12673N/A @brief config file parsing header file
12673N/A @author Ondrej Jombik <nepto@platon.sk>
12673N/A @author Lubomir Host <rajo@platon.sk>
12673N/A @version \$Platon: libcfg+/src/cfgfile.h,v 1.13 2004/01/12 06:03:09 nepto Exp $
12673N/A @date 2001-2004
12673N/A
12673N/A $Platon: libcfg+/src/parse.c,v 1.24 2004/01/12 06:03:09 nepto Exp $
12673N/A
12673N/A Includes {{{
12673N/A
12673N/A--------------------------------------------------------------------
12673N/A
12673N/A Copyright (C) 1995-1998, 2000-2002, 2004-2006 Free Software Foundation, Inc.
12673N/A Copyright (C) 1991, 1996, 1997, 1998, 2002, 2003, 2004, 2006 Free
12673N/A Copyright (C) 1992-2001, 2003, 2004, 2005, 2006 Free Software
12673N/A Software Foundation, Inc.
12673N/A
12673N/A Foundation, Inc.
12673N/A
12673N/A This file is part of the GNU C Library.
12673N/A
12673N/A Convenience header for conditional use of GNU <libintl.h>.
12673N/A
12673N/A This program is free software; you can redistribute it and/or modify
12673N/A it under the terms of the GNU General Public License as published by
12673N/A the Free Software Foundation; either version 2, or (at your option)
12673N/A any later version.
12673N/A
12673N/A This program is distributed in the hope that it will be useful,
12673N/A but WITHOUT ANY WARRANTY; without even the implied warranty of
12673N/A MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12673N/A GNU General Public License for more details.
12673N/A
12673N/A You should have received a copy of the GNU General Public License along
12673N/A with this program; if not, write to the Free Software Foundation,
12673N/A Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
12673N/A
12673N/A--------------------------------------------------------------------
12673N/A
12673N/A Author: Nikos Mavroyanopoulos
12673N/A Author: Simon Josefsson
12673N/A Author: Timo Schulz <twoaday@freakmail.de>
12673N/A Author: Timo Schulz, Nikos Mavroyanopoulos
12673N/A Copyright (C) 2001, 2004, 2005 Free Software Foundation
12673N/A Copyright (C) 2002, 2003, 2004, 2005 Free Software Foundation
12673N/A Copyright (C) 2002, 2003, 2004, 2005, 2006 Free Software Foundation
12673N/A Copyright (C) 2003, 2004, 2005 Free Software Foundation
12673N/A Copyright (C) 2003, 2004, 2005, 2006 Free Software Foundation
12673N/A Copyright (C) 2004, 2005 Free Software Foundation
12673N/A Copyright (C) 2004, 2005, 2006 Free Software Foundation
12673N/A Copyright (C) 2005, 2006 Free Software Foundation
12673N/A Copyright (c) 2002 Andrew McDonald <andrew@mcdonald.org.uk>
12673N/A
12673N/A This file is part of GNUTLS-EXTRA.
12673N/A
12673N/A GNUTLS-EXTRA is free software; you can redistribute it and/or
12673N/A modify it under the terms of the GNU General Public License as
12673N/A published by the Free Software Foundation; either version 2 of the
12673N/A License, or (at your option) any later version.
12673N/A
12673N/A GNUTLS-EXTRA is distributed in the hope that it will be useful, but
12673N/A WITHOUT ANY WARRANTY; without even the implied warranty of
12673N/A MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12673N/A General Public License for more details.
12673N/A
12673N/A You should have received a copy of the GNU General Public License
12673N/A along with GNUTLS-EXTRA; if not, write to the Free Software
12673N/A Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
12673N/A 02110-1301, USA.
12673N/A
12673N/A
12673N/A
12673N/A Functions on OpenPGP key parsing
12673N/A
12673N/A Functions on OpenPGP keyring and trustdb parsing
12673N/A
12673N/A WARNING: Error functions aren't currently thread-safe
12673N/A
12673N/A This file contains prototypes about the OPENSSL compatibility
12673N/A layer in GNUTLS. GNUTLS is not a replacement of OPENSSL so
12673N/A this compatibility layer only support limited OPENSSL functionality.
12673N/A
12673N/A New programs should avoid using this compatibility layer, and
12673N/A use the native GNUTLS API.
12673N/A
12673N/A This file includes all functions that were in the 0.5.x and 0.8.x
12673N/A gnutls API. They are now implemented over the new certificate parsing
12673N/A API.
12673N/A
12673N/A Functions on OpenPGP privkey parsing
12673N/A
12673N/A Note the libgnutls-extra is not a standalone library. It requires
12673N/A to link also against libgnutls.
12673N/A
12673N/A Compatibility functions on OpenPGP key parsing.
12673N/A
12673N/A
12673N/A--------------------------------------------------------------------
12673N/A
12673N/A libcfg+ - precise command line & config file parsing library
12673N/A
12673N/A cfg+.h - main implementation header file
12673N/A ____________________________________________________________
12673N/A
12673N/A Developed by Ondrej Jombik <nepto@platon.sk>
12673N/A and Lubomir Host <rajo@platon.sk>
12673N/A Copyright (c) 2001-2004 Platon SDG, http://platon.sk/
12673N/A All rights reserved.
12673N/A
12673N/A See README file for more information about this software.
12673N/A See COPYING file for license information.
12673N/A
12673N/A Download the latest version from
12673N/A http://platon.sk/projects/libcfg+/
12673N/A
12673N/A
12673N/A $Platon: libcfg+/src/cfg+.h,v 1.60 2004/01/12 06:03:08 nepto Exp $
12673N/A
12673N/A*
12673N/A @file cfg+.h
12673N/A @brief main implementation header file
12673N/A @author Ondrej Jombik <nepto@platon.sk>
12673N/A @author Lubomir Host <rajo@platon.sk>
12673N/A @version \$Platon: libcfg+/src/cfg+.h,v 1.60 2004/01/12 06:03:08 nepto Exp $
12673N/A @date 2001-2004
12673N/A
12673N/A
12673N/A
12673N/A--------------------------------------------------------------------
12673N/A
12673N/A Copyright (C) 2002 Fabio Fiorina
12673N/A Copyright (C) 2002, 2005 Fabio Fiorina
12673N/A Copyright (C) 2004, 2006 Free Software Foundation
12673N/A Copyright (C) 2004, 2006 Free Software Foundation, Inc.
12673N/A Copyright (C) 2006 Free Software Foundation, Inc.
12673N/A
12673N/A This file is part of LIBTASN1.
12673N/A
12673N/A The LIBTASN1 library is free software; you can redistribute it
12673N/A and/or modify it under the terms of the GNU Lesser General Public
12673N/A License as published by the Free Software Foundation; either
12673N/A version 2.1 of the License, or (at your option) any later version.
12673N/A
12673N/A This library is distributed in the hope that it will be useful, but
12673N/A WITHOUT ANY WARRANTY; without even the implied warranty of
12673N/A MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12673N/A Lesser General Public License for more details.
12673N/A
12673N/A You should have received a copy of the GNU Lesser General Public
12673N/A License along with this library; if not, write to the Free Software
12673N/A Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
12673N/A 02110-1301, USA
12673N/A
12673N/A
12673N/A
12673N/A***************************************************
12673N/A File: structure.c
12673N/A Description: Functions to create and delete an
12673N/A ASN1 tree.
12673N/A File: coding.c
12673N/A Description: Functions to create a DER coding of
12673N/A an ASN1 type.
12673N/A File: decoding.c
12673N/A Description: Functions to manage DER decoding
12673N/A***************************************************
12673N/A
12673N/A--------------------------------------------------------------------
12673N/A
12673N/A Copyright (C) 2000, 2001, 2002, 2003 Fabio Fiorina
12673N/A Copyright (C) 2000,2001 Fabio Fiorina
12673N/A Copyright (C) 2002 Nikos Mavroyanopoulos
12673N/A Copyright (C) 2004, 2006 Free Software Foundation
12673N/A Copyright (C) 2006 Free Software Foundation
12673N/A
12673N/A Author: Nikos Mavroyanopoulos
12673N/A Author: Simon Josefsson
12673N/A
12673N/A Copyright (C) 2000, 2001, 2002, 2003, 2004, 2005 Free Software Foundation
12673N/A Copyright (C) 2000, 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation
12673N/A Copyright (C) 2000, 2001, 2003, 2004, 2005 Free Software Foundation
12673N/A Copyright (C) 2000, 2001, 2004, 2005 Free Software Foundation
12673N/A Copyright (C) 2000, 2001, 2004, 2005 Free Software Foundation
12673N/A Copyright (C) 2000, 2002, 2003, 2004, 2005 Free Software Foundation
12673N/A Copyright (C) 2000, 2002, 2003, 2004, 2005, 2006 Free Software Foundation
12673N/A Copyright (C) 2000, 2003, 2004, 2005 Free Software Foundation
12673N/A Copyright (C) 2000, 2004, 2005 Free Software Foundation
12673N/A Copyright (C) 2001, 2002, 2003, 2004, 2005 Free Software Foundation
12673N/A Copyright (C) 2001, 2002, 2003, 2004, 2005 Free Software Foundation
12673N/A Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation
12673N/A Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007 Free Software Foundation
12673N/A Copyright (C) 2001, 2004, 2005 Free Software Foundation
12673N/A Copyright (C) 2001, 2004, 2005, 2006 Free Software Foundation
12673N/A Copyright (C) 2002 Andrew McDonald
12673N/A Copyright (C) 2002, 2003, 2004, 2005 Free Software Foundation
12673N/A Copyright (C) 2002, 2003, 2004, 2005, 2006 Free Software Foundation
12673N/A Copyright (C) 2002, 2003, 2004, 2005, 2006, 2007 Free Software Foundation
12673N/A Copyright (C) 2002, 2004, 2005 Free Software Foundation
12673N/A Copyright (C) 2002, 2004, 2005 Free Software Foundation, Inc.
12673N/A Copyright (C) 2003, 2004, 2005 Free Software Foundation
12673N/A Copyright (C) 2003, 2004, 2005 Free Software Foundation
12673N/A Copyright (C) 2003, 2004, 2005, 2006 Free Software Foundation
12673N/A Copyright (C) 2003, 2004, 2005, 2006, 2007 Free Software Foundation
12673N/A Copyright (C) 2003, 2004, 2005, 2007 Free Software Foundation
12673N/A Copyright (C) 2004, 2005, 2006 Free Software Foundation
12673N/A Copyright (C) 2005 Free Software Foundation
12673N/A Copyright (C) 2005, 2006 Free Software Foundation
12673N/A
12673N/A This file is part of LIBTASN1.
12673N/A
12673N/A The LIBTASN1 library is free software; you can redistribute it
12673N/A and/or modify it under the terms of the GNU Lesser General Public
12673N/A License as published by the Free Software Foundation; either
12673N/A version 2.1 of the License, or (at your option) any later version.
12673N/A
12673N/A minip12.c - A mini pkcs-12 implementation (modified for gnutls)
12673N/A
12673N/A This file is part of GNUTLS.
12673N/A
12673N/A The GNUTLS library is free software; you can redistribute it and/or
12673N/A modify it under the terms of the GNU Lesser General Public License
12673N/A as published by the Free Software Foundation; either version 2.1 of
12673N/A the License, or (at your option) any later version.
12673N/A
12673N/A This library is distributed in the hope that it will be useful, but
12673N/A WITHOUT ANY WARRANTY; without even the implied warranty of
12673N/A MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12673N/A Lesser General Public License for more details.
12673N/A
12673N/A You should have received a copy of the GNU Lesser General Public
12673N/A License along with this library; if not, write to the Free Software
12673N/A Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
12673N/A Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301
12673N/A USA
12673N/A
12673N/A
12673N/A
12673N/A This is the only file that uses the berkeley sockets API.
12673N/A
12673N/A Also holds all the buffering code used in gnutls.
12673N/A The buffering code works as:
12673N/A
12673N/A RECORD LAYER:
12673N/A 1. uses a buffer to hold data (application/handshake),
12673N/A we got but they were not requested, yet.
12673N/A (see gnutls_record_buffer_put(), gnutls_record_buffer_get_size() etc.)
12673N/A
12673N/A 2. uses a buffer to hold data that were incomplete (ie the read/write
12673N/A was interrupted)
12673N/A (see _gnutls_io_read_buffered(), _gnutls_io_write_buffered() etc.)
12673N/A
12673N/A HANDSHAKE LAYER:
12673N/A 1. Uses a buffer to hold data that was not sent or received
12673N/A complete. (E.g. sent 10 bytes of a handshake packet that is 20 bytes
12673N/A long).
12673N/A (see _gnutls_handshake_send_int(), _gnutls_handshake_recv_int())
12673N/A
12673N/A 2. Uses buffer to hold the last received handshake message.
12673N/A (see _gnutls_handshake_buffer_put() etc.)
12673N/A
12673N/A
12673N/A This file contains code for DSA keys.
12673N/A
12673N/A Functions that are supposed to run after the handshake procedure is
12673N/A finished. These functions activate the established security parameters.
12673N/A
12673N/A This file contains the PSK Diffie Hellman key exchange part of
12673N/A the PSK authentication. The functions here are used in the
12673N/A This file contains the Anonymous Diffie Hellman key exchange part of
12673N/A the anonymous authentication. The functions here are used in the
12673N/A handshake.
12673N/A
12673N/A Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301
12673N/A USA
12673N/A
12673N/A
12673N/A
12673N/A This file contains the types and prototypes for the OpenPGP
12673N/A key and private key parsing functions.
12673N/A
12673N/A This file contains functions which are wrappers for the key exchange
12673N/A part of TLS. They are called by the handshake functions (gnutls_handshake)
12673N/A
12673N/A Some high level functions to be used in the record encryption are
12673N/A included here.
12673N/A
12673N/A This file contains common stuff in Ephemeral Diffie Hellman (DHE) and
12673N/A Anonymous DH key exchange(DHA). These are used in the handshake procedure
12673N/A of the certificate and anoymous authentication.
12673N/A
12673N/A This file contains the RSA key exchange part of the certificate
12673N/A This file contains everything for the Ephemeral Diffie Hellman (DHE)
12673N/A key exchange. This is used in the handshake procedure of the certificate
12673N/A authentication.
12673N/A
12673N/A Here lies the code of the gnutls_*_set_priority() functions.
12673N/A
12673N/A This file contains the code for the Max Record Size TLS extension.
12673N/A
12673N/A This file contains the types and prototypes for the X.509
12673N/A certificate and CRL handling functions.
12673N/A
12673N/A Functions that relate to the TLS hello extension parsing.
12673N/A Hello extensions are packets appended in the TLS hello packet, and
12673N/A allow for extra functionality.
12673N/A
12673N/A Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
12673N/A 02110-1301, USA
12673N/A
12673N/A
12673N/A***************************************************
12673N/A File: element.c
12673N/A Description: Functions with the read and write
12673N/A functions.
12673N/A***************************************************
12673N/A This debug file was contributed by
12673N/A Paul Sheer <psheer@icon.co.za>. Some changes were made by nmav.
12673N/A Its purpose is to debug non blocking behaviour of gnutls. The included
12673N/A send() and recv() functions return EAGAIN errors in random.
12673N/A
12673N/A
12673N/A Functions that relate to base64 encoding and decoding.
12673N/A
12673N/A Functions for operating in an SRP passwd file are included here
12673N/A Functions that relate to the TLS handshake procedure.
12673N/A
12673N/A Functions that relate on PKCS12 Bag packet parsing.
12673N/A
12673N/A Functions that relate to the X.509 extension parsing.
12673N/A
12673N/A Maps record size to numbers according to the
12673N/A extensions draft.
12673N/A
12673N/A Contains functions that are supposed to pack and unpack session data,
12673N/A before and after they are sent to the database backend.
12673N/A
12673N/A All functions which relate to X.509 certificate signing stuff are
12673N/A All functions which relate to X.509 certificate verification stuff are
12673N/A included here
12673N/A
12673N/A this is not to be included by gnutls_anon.c
12673N/A This file contains functions to handle PKCS #10 certificate requests.
12673N/A
12673N/A This file contains the functions which convert the TLS plaintext
12673N/A packet to TLS compressed packet.
12673N/A
12673N/A Functions that relate on PKCS7 certificate lists parsing.
12673N/A
12673N/A This file contains the code the Certificate Type TLS extension.
12673N/A This extension is currently gnutls specific.
12673N/A
12673N/A contains functions that make it easier to
12673N/A write vectors of <size|data>. The destination size
12673N/A should be preallocated (datum.size+(bits/8))
12673N/A
12673N/A Functions that are record layer specific, are included in this file.
12673N/A
12673N/A This file contains certificate authentication functions to be exported in the
12673N/A API and did not fit elsewhere.
12673N/A
12673N/A Some of the stuff needed for Certificate authentication is contained
12673N/A in this file.
12673N/A
12673N/A
12673N/A This file has the required functions to convert an X.509 DER certificate
12673N/A to XML format.
12673N/A
12673N/A Functions to manipulate the session (gnutls_int.h), and some other stuff
12673N/A are included here. The file's name is traditionally gnutls_state even if the
12673N/A state has been renamed to session.
12673N/A
12673N/A This file handles all the internal functions that cope with hashes
12673N/A and HMACs.
12673N/A
12673N/A Here lie everything that has to do with large numbers, libgcrypt and
12673N/A other stuff that didn't fit anywhere else.
12673N/A
12673N/A Functions for operating in an PSK passwd file are included here
12673N/A Functions that relate on PKCS12 packet parsing.
12673N/A
12673N/A Functions to parse the SSLv2.0 hello message.
12673N/A
12673N/A This file contains functions that manipulate a database backend
12673N/A for resumed sessions.
12673N/A
12673N/A Functions on X.509 Certificate parsing
12673N/A
12673N/A This file contains code for RSA temporary keys. These keys are
12673N/A only used in export cipher suites.
12673N/A
12673N/A Functions for manipulating the PSK credentials.
12673N/A This file contains functions to handle CRL generation.
12673N/A
12673N/A The certificate authentication functions which are needed in the handshake,
12673N/A and are common to RSA and DHE key exchange, are in this file.
12673N/A
12673N/A This file contains functions to handle X.509 certificate generation.
12673N/A
12673N/A This file contains the functions needed for RSA/DSA public key
12673N/A encryption and signatures.
12673N/A
12673N/A This file contains the functions needed for 64 bit integer support in
12673N/A TLS, and functions which ease the access to TLS vectors (data of given size).
12673N/A
12673N/A
12673N/A--------------------------------------------------------------------
12673N/A
12673N/A Copyright (C) 1995-1998, 2000-2002, 2004-2006 Free Software Foundation, Inc.
12673N/A Copyright (C) 1997, 2000, 2002, 2004, 2006 Free Software Foundation, Inc.
12673N/A Copyright (C) 1999, 2002, 2006 Free Software Foundation, Inc.
12673N/A Copyright (C) 1999, 2002-2003 Free Software Foundation, Inc.
12673N/A Copyright (C) 1999, 2002-2003, 2005-2006 Free Software Foundation, Inc.
12673N/A Copyright (C) 1999, 2002-2003, 2006 Free Software Foundation, Inc.
12673N/A Copyright (C) 1999, 2002-2006 Free Software Foundation, Inc.
12673N/A Copyright (C) 1999-2000, 2002-2003, 2006 Free Software Foundation, Inc.
12673N/A Copyright (C) 2002-2004 Free Software Foundation, Inc.
12673N/A Copyright (C) 2004 Free Software Foundation, Inc.
12673N/A Copyright (C) 2004, 2006 Free Software Foundation, Inc.
12673N/A Copyright (C) 1991,92,93,94,96,97,98,2000,2004 Free Software Foundation, Inc.
12673N/A This file is part of the GNU C Library.
12673N/A
12673N/A Formatted output to strings.
12673N/A
12673N/A Convenience header for conditional use of GNU <libintl.h>.
12673N/A
12673N/A
12673N/A vsprintf with automatic memory allocation.
12673N/A
12673N/A Compare strings while treating digits characters numerically.
12673N/A This file is part of the GNU C Library.
12673N/A Contributed by Jean-François Bignolles <bignolle@ecoledoc.ibp.fr>, 1997.
12673N/A
12673N/A Written by Simon Josefsson.
12673N/A
12673N/A Parse printf format string.
12673N/A
12673N/A Written by Simon Josefsson and Paul Eggert.
12673N/A
12673N/A
12673N/A Decomposed printf argument list.
12673N/A
12673N/A
12673N/A This program is free software; you can redistribute it and/or modify
12673N/A it under the terms of the GNU Lesser General Public License as published by
12673N/A the Free Software Foundation; either version 2.1, or (at your option)
12673N/A any later version.
12673N/A
12673N/A This program is distributed in the hope that it will be useful,
12673N/A but WITHOUT ANY WARRANTY; without even the implied warranty of
12673N/A MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12673N/A GNU Lesser General Public License for more details.
12673N/A
12673N/A You should have received a copy of the GNU Lesser General Public License along
12673N/A with this program; if not, write to the Free Software Foundation,
12673N/A Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
12673N/A
12673N/A Tell glibc's <stdio.h> to provide a prototype for snprintf().
12673N/A This must come before <config.h> because <config.h> may include
12673N/A <features.h>, and once <features.h> has been included, it's too late.
12673N/A
12673N/A--------------------------------------------------------------------
12673N/A
12673N/A Copyright (C) 1995,1996,1997,1999,2000,2001,2002,2003,2005,2006
12673N/A Copyright (C) 1995,1996,1997,1999,2000,2001,2005,2006
12673N/A Copyright (C) 2000, 2001, 2003, 2004, 2005, 2006 Free Software
12673N/A Copyright (C) 2000, 2001, 2003, 2005 Free Software Foundation, Inc.
12673N/A Copyright (C) 2000, 2001, 2003, 2005, 2006 Free Software Foundation, Inc.
12673N/A Functions to compute MD5 message digest of files or memory blocks.
12673N/A according to the definition of MD5 in RFC 1321 from April 1992.
12673N/A Free Software Foundation, Inc.
12673N/A This file is part of the GNU C Library.
12673N/A
12673N/A Functions to compute MD4 message digest of files or memory blocks.
12673N/A according to the definition of MD4 in RFC 1320 from April 1992.
12673N/A Free Software Foundation, Inc.
12673N/A
12673N/A sha1.c - Functions to compute SHA1 message digest of files or
12673N/A memory blocks according to the NIST specification FIPS-180-1.
12673N/A
12673N/A Foundation, Inc.
12673N/A
12673N/A Declarations of functions and data types used for MD2 sum
12673N/A library functions.
12673N/A
12673N/A Functions to compute MD2 message digest of files or memory blocks.
12673N/A according to the definition of MD2 in RFC 1319 from April 1992.
12673N/A Free Software Foundation, Inc.
12673N/A
12673N/A Declarations of functions and data types used for SHA1 sum
12673N/A library functions.
12673N/A
12673N/A Declarations of functions and data types used for MD4 sum
12673N/A library functions.
12673N/A
12673N/A This program is free software; you can redistribute it and/or modify it
12673N/A under the terms of the GNU Lesser General Public License as published by the
12673N/A Free Software Foundation; either version 2.1, or (at your option) any
12673N/A later version.
12673N/A
12673N/A This program is distributed in the hope that it will be useful,
12673N/A but WITHOUT ANY WARRANTY; without even the implied warranty of
12673N/A MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12673N/A GNU Lesser General Public License for more details.
12673N/A
12673N/A You should have received a copy of the GNU Lesser General Public License
12673N/A along with this program; if not, write to the Free Software Foundation,
12673N/A Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
12673N/A
12673N/A Written by Ulrich Drepper <drepper@gnu.ai.mit.edu>, 1995.
12673N/A Adapted by Simon Josefsson from gnulib md5.? and Libgcrypt
12673N/A cipher/md4.c .
12673N/A Written by Scott G. Miller
12673N/A Credits:
12673N/A Robert Klep <robert@ilse.nl> -- Expansion function fix
12673N/A Adapted by Simon Josefsson from public domain Libtomcrypt 1.06 by
12673N/A Tom St Denis.
12673N/A
12673N/A--------------------------------------------------------------------
12673N/A
12673N/A Copyright (C) 1998, 1999, 2000, 2001 Free Software Foundation, Inc.
12673N/A Copyright (C) 1998, 1999, 2000, 2001, 2006 Free Software Foundation, Inc.
12673N/A Copyright (C) 1998,1999,2000,2001,2002 Free Software Foundation, Inc.
12673N/A Copyright (C) 1998-2001 Free Software Foundation
12673N/A Copyright (C) 1998-2002 Free Software Foundation
12673N/A Copyright (C) 1998-2002 Free Software Foundation, Inc.
12673N/A Copyright (C) 2001, 2002, 2003 Timo Schulz
12673N/A Copyright (C) 2001, 2002, 2003, 2004 Timo Schulz
12673N/A Copyright (C) 2001, 2002, 2003, 2005 Timo Schulz
12673N/A Copyright (C) 2002 Timo Schulz
12673N/A Copyright (C) 2002, 2003 Timo Schulz
12673N/A Copyright (C) 2003 Timo Schulz
12673N/A Copyright (C) 2006 Free Software Foundation
12673N/A Copyright (C) 2006 Free Software Foundation, Inc.
12673N/A Copyright (C) 2002, 2003 Timo Schulz
12673N/A Copyright (C) 2002, 2003, 2004 Timo Schulz
12673N/A Copyright (C) 2006 Free Software Foundation
12673N/A Copyright (C) 2006 Free Software Foundation, Inc.
12673N/A plaintext.c - Literal packet filters
12673N/A
12673N/A cipher.h
12673N/A
12673N/A misc.c
12673N/A
12673N/A armor.c - Armor filters
12673N/A
12673N/A md.h
12673N/A
12673N/A md.c
12673N/A
12673N/A cipher.c - Cipher filters
12673N/A
12673N/A stream.h - internal definiton for the STREAM object
12673N/A
12673N/A write-packet.c - Write OpenPGP packets
12673N/A
12673N/A main.h
12673N/A
12673N/A keydb.c - Key database routines
12673N/A
12673N/A compress.c - Compression filters
12673N/A
12673N/A seskey.c - Session key routines
12673N/A
12673N/A filters.h - Filter structs
12673N/A
12673N/A read-packet.c - Read OpenPGP packets
12673N/A
12673N/A sig-check.c - Check signatures
12673N/A
12673N/A stream.c - provides a STREAM object
12673N/A
12673N/A keygen.c - OpenPGP key generation
12673N/A
12673N/A new-packet.c - General packet handling (freeing, copying, ...)
12673N/A
12673N/A trustdb.c - High level interface for ownertrust handling
12673N/A
12673N/A keylist.c - Linked key lists
12673N/A
12673N/A kbnode.c - keyblock node utility functions
12673N/A
12673N/A main.c
12673N/A
12673N/A pubkey.c - Public key API
12673N/A
12673N/A types.h - Some type definitions
12673N/A
12673N/A sym-cipher.c
12673N/A
12673N/A verify.c - Verify signatures
12673N/A
12673N/A packet.h - Internal packet routines
12673N/A
12673N/A encrypt.c
12673N/A
12673N/A sign.c - Signing routines
12673N/A
12673N/A keyserver.c - Keyserver support
12673N/A
12673N/A context.h
12673N/A
12673N/A opencdk.h - Open Crypto Development Kit (OpenCDK)
12673N/A
12673N/A This file is part of OpenCDK.
12673N/A
12673N/A OpenCDK is free software; you can redistribute it and/or modify
12673N/A it under the terms of the GNU General Public License as published by
12673N/A the Free Software Foundation; either version 2 of the License, or
12673N/A (at your option) any later version.
12673N/A
12673N/A OpenCDK is distributed in the hope that it will be useful,
12673N/A but WITHOUT ANY WARRANTY; without even the implied warranty of
12673N/A MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12673N/A GNU General Public License for more details.
12673N/A
12673N/A You should have received a copy of the GNU General Public License
12673N/A along with OpenCDK; if not, write to the Free Software Foundation,
12673N/A Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
12673N/A
12673N/A
12673N/A ChangeLog for basic BASE64 code (base64_encode, base64_decode):
12673N/A Original author: Eric S. Raymond (Fetchmail)
12673N/A Heavily modified by Brendan Cully <brendan@kublai.com> (Mutt)
12673N/A Modify the code for generic use by Timo Schulz <twoaday@freakmail.de>
12673N/A
12673N/A X-TODO-STATUS: OK
12673N/A along with OpenCDK; if not, write to the Free Software Foundation, Inc.,
12673N/A 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
12673N/A
12673N/A
12673N/A--------------------------------------------------------------------
12673N/A
12673N/A All Rights Reserved.
12673N/A Copyright (C) 1996 Markus Franz Xaver Johannes Oberhumer
12673N/A Copyright (C) 1996-2005 Markus Franz Xaver Johannes Oberhumer
12673N/A Copyright (C) 1997 Markus Franz Xaver Johannes Oberhumer
12673N/A Copyright (C) 1998 Markus Franz Xaver Johannes Oberhumer
12673N/A Copyright (C) 1999 Markus Franz Xaver Johannes Oberhumer
12673N/A Copyright (C) 2000 Markus Franz Xaver Johannes Oberhumer
12673N/A Copyright (C) 2001 Markus Franz Xaver Johannes Oberhumer
12673N/A Copyright (C) 2002 Markus Franz Xaver Johannes Oberhumer
12673N/A Copyright (C) 2003 Markus Franz Xaver Johannes Oberhumer
12673N/A Copyright (C) 2004 Markus Franz Xaver Johannes Oberhumer
12673N/A Copyright (C) 2005 Markus Franz Xaver Johannes Oberhumer
12673N/A lzoconf.h -- configuration for the LZO real-time data compression library
12673N/A
12673N/A This file is part of the LZO real-time data compression library.
12673N/A
12673N/A
12673N/A testmini.c -- very simple test program for the miniLZO library
12673N/A
12673N/A This file is part of the LZO real-time data compression library.
12673N/A
12673N/A
12673N/A minilzo.h -- mini subset of the LZO real-time data compression library
12673N/A
12673N/A This file is part of the LZO real-time data compression library.
12673N/A
12673N/A
12673N/A minilzo.c -- mini subset of the LZO real-time data compression library
12673N/A
12673N/A This file is part of the LZO real-time data compression library.
12673N/A
12673N/A
12673N/A lzodefs.h -- architecture, OS and compiler specific defines
12673N/A
12673N/A This file is part of the LZO real-time data compression library.
12673N/A
12673N/A
12673N/A The LZO library is free software; you can redistribute it and/or
12673N/A modify it under the terms of the GNU General Public License as
12673N/A published by the Free Software Foundation; either version 2 of
12673N/A the License, or (at your option) any later version.
12673N/A
12673N/A The LZO library is distributed in the hope that it will be useful,
12673N/A but WITHOUT ANY WARRANTY; without even the implied warranty of
12673N/A MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12673N/A GNU General Public License for more details.
12673N/A
12673N/A You should have received a copy of the GNU General Public License
12673N/A along with the LZO library; see the file COPYING.
12673N/A If not, write to the Free Software Foundation, Inc.,
12673N/A 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
12673N/A
12673N/A Markus F.X.J. Oberhumer
12673N/A <markus@oberhumer.com>
12673N/A http://www.oberhumer.com/opensource/lzo/
12673N/A
12673N/A
12673N/A
12673N/A NOTE:
12673N/A the full LZO package can be found at
12673N/A http://www.oberhumer.com/opensource/lzo/
12673N/A
12673N/A
12673N/A--------------------------------------------------------------------
12673N/A
12673N/A Copyright (C) 1998, 1999, 2001, 2002, 2003, 2004, 2005, 2006
12673N/A Copyright (C) 2000, 2001, 2002, 2003, 2004, 2005
12673N/A Copyright (C) 2000, 2001, 2002, 2003, 2005 Free Software Foundation, Inc.
12673N/A Copyright (C) 2000, 2001, 2002, 2003, 2005, 2006 Free Software
12673N/A Copyright (C) 2002, 2003, 2004, 2005 Simon Josefsson
12673N/A Copyright (C) 2002, 2003, 2004, 2005, 2006 Simon Josefsson
12673N/A Copyright (C) 2003, 2004, 2005, 2006 Free Software Foundation, Inc.
12673N/A Copyright (C) 2005 Free Software Foundation, Inc.
12673N/A Copyright (C) 2005, 2006 Free Software Foundation, Inc.
12673N/A rijndael-api-fst.h --- Rijndael cipher implementation.
12673N/A
12673N/A gc-libgcrypt.c --- Crypto wrappers around Libgcrypt for GC.
12673N/A
12673N/A des.c --- DES and Triple-DES encryption/decryption Algorithm
12673N/A Free Software Foundation, Inc.
12673N/A
12673N/A rijndael-alg-fst.c --- Rijndael cipher implementation.
12673N/A
12673N/A arcfour.c --- The arcfour stream cipher
12673N/A Foundation, Inc.
12673N/A
12673N/A rijndael-alg-fst.h --- Rijndael cipher implementation.
12673N/A
12673N/A arctwo.c --- The RC2 cipher as described in RFC 2268.
12673N/A
12673N/A rijndael-api-fst.c --- Rijndael cipher implementation.
12673N/A
12673N/A des.h --- DES cipher implementation.
12673N/A
12673N/A arcfour.h --- The arcfour stream cipher
12673N/A Free Software Foundation, Inc.
12673N/A
12673N/A gc-gnulib.c --- Common gnulib internal crypto interface functions
12673N/A
12673N/A gc.h --- Header file for implementation agnostic crypto wrapper API.
12673N/A
12673N/A arctwo.h --- The arctwo block cipher
12673N/A
12673N/A This file is free software; you can redistribute it and/or modify
12673N/A it under the terms of the GNU Lesser General Public License as published
12673N/A by the Free Software Foundation; either version 2.1, or (at your
12673N/A option) any later version.
12673N/A
12673N/A This file is distributed in the hope that it will be useful, but
12673N/A WITHOUT ANY WARRANTY; without even the implied warranty of
12673N/A MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12673N/A General Public License for more details.
12673N/A
12673N/A You should have received a copy of the GNU Lesser General Public License
12673N/A along with this file; if not, write to the Free Software
12673N/A Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
12673N/A 02110-1301, USA.
12673N/A
12673N/A
12673N/A
12673N/A Adapted for gnulib by Simon Josefsson.
12673N/A
12673N/A*
12673N/A rijndael-api-fst.h
12673N/A
12673N/A @version 2.9 (December 2000)
12673N/A
12673N/A rijndael-alg-fst.h
12673N/A
12673N/A @version 3.0 (December 2000)
12673N/A
12673N/A Optimised ANSI C code for the Rijndael cipher (now AES)
12673N/A
12673N/A @author Vincent Rijmen <vincent.rijmen@esat.kuleuven.ac.be>
12673N/A @author Antoon Bosselaers <antoon.bosselaers@esat.kuleuven.ac.be>
12673N/A @author Paulo Barreto <paulo.barreto@terra.com.br>
12673N/A
12673N/A This code is hereby placed in the public domain.
12673N/A
12673N/A THIS SOFTWARE IS PROVIDED BY THE AUTHORS ''AS IS'' AND ANY EXPRESS
12673N/A OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
12673N/A WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
12673N/A ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHORS OR CONTRIBUTORS BE
12673N/A LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
12673N/A CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
12673N/A SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
12673N/A BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
12673N/A WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
12673N/A OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
12673N/A EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
12673N/A
12673N/A Acknowledgements:
12673N/A
12673N/A We are deeply indebted to the following people for their bug reports,
12673N/A fixes, and improvement suggestions to this implementation. Though we
12673N/A tried to list all contributions, we apologise in advance for any
12673N/A missing reference.
12673N/A
12673N/A Andrew Bales <Andrew.Bales@Honeywell.com>
12673N/A Markus Friedl <markus.friedl@informatik.uni-erlangen.de>
12673N/A John Skodon <skodonj@webquill.com>
12673N/A
12673N/A Note: This file is only built if GC uses Libgcrypt.
12673N/A Adapted for gnulib by Simon Josefsson, based on Libgcrypt.
12673N/A
12673N/A
12673N/A For a description of triple encryption, see:
12673N/A Bruce Schneier: Applied Cryptography. Second Edition.
12673N/A John Wiley & Sons, 1996. ISBN 0-471-12845-7. Pages 358 ff.
12673N/A This implementation is according to the definition of DES in FIPS
12673N/A PUB 46-2 from December 1993.
12673N/A
12673N/A Written by Michael Roth <mroth@nessie.de>, September 1998
12673N/A
12673N/A
12673N/A
12673N/A U S A G E
12673N/A ===========
12673N/A
12673N/A For DES or Triple-DES encryption/decryption you must initialize a proper
12673N/A encryption context with a key.
12673N/A
12673N/A A DES key is 64bit wide but only 56bits of the key are used. The remaining
12673N/A bits are parity bits and they will _not_ checked in this implementation, but
12673N/A simply ignored.
12673N/A
12673N/A For Triple-DES you could use either two 64bit keys or three 64bit keys.
12673N/A The parity bits will _not_ checked, too.
12673N/A
12673N/A After initializing a context with a key you could use this context to
12673N/A encrypt or decrypt data in 64bit blocks in Electronic Codebook Mode.
12673N/A
12673N/A DES Example
12673N/A -----------
12673N/A unsigned char key[8];
12673N/A unsigned char plaintext[8];
12673N/A unsigned char ciphertext[8];
12673N/A unsigned char recoverd[8];
12673N/A des_ctx context;
12673N/A
12673N/A // Fill 'key' and 'plaintext' with some data
12673N/A ....
12673N/A
12673N/A // Set up the DES encryption context
12673N/A des_setkey(&context, key);
12673N/A
12673N/A // Encrypt the plaintext
12673N/A des_ecb_encrypt(&context, plaintext, ciphertext);
12673N/A
12673N/A // To recover the orginal plaintext from ciphertext use:
12673N/A des_ecb_decrypt(&context, ciphertext, recoverd);
12673N/A
12673N/A
12673N/A Triple-DES Example
12673N/A ------------------
12673N/A unsigned char key1[8];
12673N/A unsigned char key2[8];
12673N/A unsigned char key3[8];
12673N/A unsigned char plaintext[8];
12673N/A unsigned char ciphertext[8];
12673N/A unsigned char recoverd[8];
12673N/A tripledes_ctx context;
12673N/A
12673N/A // If you would like to use two 64bit keys, fill 'key1' and'key2'
12673N/A // then setup the encryption context:
12673N/A tripledes_set2keys(&context, key1, key2);
12673N/A
12673N/A // To use three 64bit keys with Triple-DES use:
12673N/A tripledes_set3keys(&context, key1, key2, key3);
12673N/A
12673N/A // Encrypting plaintext with Triple-DES
12673N/A tripledes_ecb_encrypt(&context, plaintext, ciphertext);
12673N/A
12673N/A // Decrypting ciphertext to recover the plaintext with Triple-DES
12673N/A tripledes_ecb_decrypt(&context, ciphertext, recoverd);
12673N/A
12673N/A Based on public domain "Optimised C code" retrieved from (SHA1
12673N/A 7c8e4b00d06685d1dbc6724a9e0d502353de339e):
12673N/A http://www.iaik.tu-graz.ac.at/research/krypto/AES/old/~rijmen/rijndael/rijndael-fst-3.0.zip
12673N/A
12673N/A Code from Libgcrypt adapted for gnulib by Simon Josefsson.
12673N/A
12673N/A
12673N/A For a description of the algorithm, see:
12673N/A Bruce Schneier: Applied Cryptography. John Wiley & Sons, 1996.
12673N/A ISBN 0-471-11709-9. Pages 397 ff.
12673N/A
12673N/A Code from GnuTLS/Libgcrypt adapted for gnulib by Simon Josefsson.
12673N/A
12673N/A This implementation was written by Nikos Mavroyanopoulos for GNUTLS
12673N/A as a Libgcrypt module (gnutls/lib/x509/rc2.c) and later adapted for
12673N/A direct use by Libgcrypt by Werner Koch. This implementation is
12673N/A only useful for pkcs#12 decryption.
12673N/A
12673N/A The implementation here is based on Peter Gutmann's RRC.2 paper.
12673N/A
12673N/A Note: This file is only built if GC uses internal functions.
12673N/A
12673N/A--------------------------------------------------------------------
12673N/A
12673N/A Copyright (C) 1995, 1998, 2001, 2003, 2005 Free Software Foundation, Inc.
12673N/A Copyright (C) 1995-1997,1999,2000,2001,2004,2005,2006
12673N/A Copyright (C) 1996-2002, 2003, 2004, 2005, 2006
12673N/A Copyright (C) 1997, 2001, 2002, 2004, 2005, 2006 Free Software
12673N/A Copyright (C) 1997, 2003 Free Software Foundation, Inc.
12673N/A Copyright (C) 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc.
12673N/A Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006 Free Software
12673N/A Copyright (C) 2001, 2006 Free Software Foundation, Inc.
12673N/A Copyright (C) 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc.
12673N/A Copyright (C) 2003 Free Software Foundation, Inc.
12673N/A Copyright (C) 2004 Free Software Foundation, Inc.
12673N/A Copyright (C) 2005 Free Software Foundation, Inc.
12673N/A Copyright (C) 2005, 2006 Free Software Foundation, Inc.
12673N/A Copyright (C) 2005-2006 Free Software Foundation, Inc.
12673N/A Copyright (C) 2006 Free Software Foundation, Inc.
12673N/A Copyright (C) 1997, 2001, 2002, 2004, 2005, 2006 Free Software Foundation, Inc.
12673N/A Copyright (C) 2001, 2002, 2003, 2006 Free Software Foundation, Inc.
12673N/A Copyright (C) 2001-2002, 2004-2006 Free Software Foundation, Inc.
12673N/A Copyright (C) 2004 Free Software Foundation
12673N/A Copyright (c) 1996,1999 by Internet Software Consortium.
12673N/A Copyright (c) 1996-1999 by Internet Software Consortium.
12673N/A copyright notice and this permission notice appear in all copies.
12673N/A hmac-md5.c -- hashed message authentication codes
12673N/A
12673N/A hmac-sha1.c -- hashed message authentication codes
12673N/A
12673N/A hmac.h -- hashed message authentication codes
12673N/A
12673N/A Declaration of functions and data types used for MD5 sum computing
12673N/A library functions.
12673N/A Free Software Foundation, Inc.
12673N/A This file is part of the GNU C Library.
12673N/A
12673N/A This program is free software; you can redistribute it and/or modify it
12673N/A under the terms of the GNU Lesser General Public License as published by the
12673N/A Free Software Foundation; either version 2.1, or (at your option) any
12673N/A later version.
12673N/A
12673N/A size_max.h -- declare SIZE_MAX through system headers
12673N/A Written by Simon Josefsson.
12673N/A
12673N/A gc-pbkdf2-sha1.c --- Password-Based Key Derivation Function a'la PKCS#5
12673N/A
12673N/A Written by Paul Eggert, Bruno Haible, Sam Steingold, Peter Burwood.
12673N/A This file is part of gnulib.
12673N/A
12673N/A Provide a more complete sys/stat header file.
12673N/A
12673N/A MIN, MAX macros.
12673N/A
12673N/A A dummy file, to prevent empty libraries from breaking builds.
12673N/A
12673N/A Provide a sys/socket header file for systems lacking it (read: MinGW).
12673N/A Written by Simon Josefsson.
12673N/A
12673N/A Compare strings while treating digits characters numerically.
12673N/A
12673N/A
12673N/A xsize.h -- Checked size_t computations.
12673N/A
12673N/A
12673N/A Written by Simon Josefsson
12673N/A
12673N/A read-file.c -- read file contents into a string
12673N/A Written by Simon Josefsson and Bruno Haible.
12673N/A
12673N/A memxor.h -- perform binary exclusive OR operation on memory blocks.
12673N/A
12673N/A read-file.h -- read file contents into a string
12673N/A Written by Simon Josefsson.
12673N/A
12673N/A memxor.c -- perform binary exclusive OR operation of two memory blocks.
12673N/A
12673N/A This program is free software; you can redistribute it and/or modify
12673N/A it under the terms of the GNU Lesser General Public License as published by
12673N/A the Free Software Foundation; either version 2.1, or (at your option)
12673N/A any later version.
12673N/A
12673N/A This program is distributed in the hope that it will be useful,
12673N/A but WITHOUT ANY WARRANTY; without even the implied warranty of
12673N/A MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12673N/A GNU Lesser General Public License for more details.
12673N/A
12673N/A You should have received a copy of the GNU Lesser General Public License
12673N/A along with this program; if not, write to the Free Software Foundation,
12673N/A Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
12673N/A
12673N/A Written by Simon Josefsson.
12673N/A Written by Simon Josefsson. The comments in this file are taken
12673N/A from RFC 2898.
12673N/A Written by Eric Blake, Paul Eggert, and Jim Meyering.
12673N/A A dummy file, to prevent empty libraries from breaking builds.
12673N/A
12673N/A Written by Bruno Haible <haible@clisp.cons.org>, 2001.
12673N/A
12673N/A Provide a sys/socket header file for systems lacking it (read: MinGW).
12673N/A Written by Simon Josefsson.
12673N/A
12673N/A This file is part of the GNU C Library.
12673N/A Contributed by Philip Blundell <pjb27@cam.ac.uk>, 1997.
12673N/A
12673N/A inttostr.c -- convert integers to printable strings
12673N/A
12673N/A
12673N/A getpass.h -- Read a password of arbitrary length from /dev/tty or stdin.
12673N/A Contributed by Simon Josefsson <jas@extundo.com>, 2004.
12673N/A
12673N/A Convert internet address from internal to printable, presentable format.
12673N/A
12673N/A Convert internet address from text to binary format.
12673N/A
12673N/A Written by Paul Eggert, Bruno Haible, Sam Steingold, Peter Burwood.
12673N/A This file is part of gnulib.
12673N/A
12673N/A strdup.h -- duplicate a string
12673N/A
12673N/A Get address information (partial implementation).
12673N/A Foundation, Inc.
12673N/A Contributed by Simon Josefsson <simon@josefsson.org>.
12673N/A
12673N/A inet_ntop.c -- convert IPv4 and IPv6 addresses from binary to text form
12673N/A
12673N/A
12673N/A intprops.h -- properties of integer types
12673N/A
12673N/A
12673N/A readline.h --- Simple implementation of readline.
12673N/A Written by Simon Josefsson
12673N/A
12673N/A Get address information.
12673N/A Free Software Foundation, Inc.
12673N/A Contributed by Simon Josefsson <simon@josefsson.org>.
12673N/A
12673N/A readline.c --- Simple implementation of readline.
12673N/A Written by Simon Josefsson
12673N/A
12673N/A inttostr.h -- convert integers to printable strings
12673N/A
12673N/A Foundation, Inc.
12673N/A
12673N/A This program is free software; you can redistribute it and/or modify
12673N/A it under the terms of the GNU General Public License as published by
12673N/A the Free Software Foundation; either version 2, or (at your option)
12673N/A any later version.
12673N/A
12673N/A This program is distributed in the hope that it will be useful,
12673N/A but WITHOUT ANY WARRANTY; without even the implied warranty of
12673N/A MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12673N/A GNU General Public License for more details.
12673N/A
12673N/A You should have received a copy of the GNU General Public License
12673N/A along with this program; if not, write to the Free Software Foundation,
12673N/A Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
12673N/A
12673N/A Written by Paul Eggert
12673N/A
12673N/A
12673N/A Permission to use, copy, modify, and distribute this software for any
12673N/A purpose with or without fee is hereby granted, provided that the above
12673N/A
12673N/A inet_pton.c -- convert IPv4 and IPv6 addresses from text to binary form
12673N/A
12673N/A
12673N/A This program is free software; you can redistribute it and/or modify
12673N/A it under the terms of the GNU General Public License as published by
12673N/A the Free Software Foundation; either version 2, or (at your option)
12673N/A any later version.
12673N/A
12673N/A This program is distributed in the hope that it will be useful,
12673N/A but WITHOUT ANY WARRANTY; without even the implied warranty of
12673N/A MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12673N/A GNU General Public License for more details.
12673N/A
12673N/A You should have received a copy of the GNU General Public License
12673N/A along with this program; if not, write to the Free Software
12673N/A Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
12673N/A USA.
12673N/A
12673N/A Some systems, reportedly OpenBSD and Mac OS X, refuse to create
12673N/A libraries without any object files. You might get an error like:
12673N/A
12673N/A > ar cru .libs/libgl.a
12673N/A > ar: no archive members specified
12673N/A
12673N/A Compiling this file, and adding its object file to the library, will
12673N/A prevent the library from being empty.
12673N/A
12673N/A This declaration is solely to ensure that after preprocessing
12673N/A this file is never empty.
12673N/A Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
12673N/A * 02110-1301, USA.
12673N/A Written by Simon Josefsson. The interface was inspired by memxor
12673N/A in Niels Möller's Nettle.
12673N/A along with this program; if not, write to the Free Software Foundation,
12673N/A Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
12673N/A
12673N/A
12673N/A
12673N/A Permission to use, copy, modify, and distribute this software for any
12673N/A purpose with or without fee is hereby granted, provided that the above
12673N/A
12673N/A THE SOFTWARE IS PROVIDED "AS IS" AND INTERNET SOFTWARE CONSORTIUM DISCLAIMS
12673N/A ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES
12673N/A OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL INTERNET SOFTWARE
12673N/A CONSORTIUM BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL
12673N/A DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR
12673N/A PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS
12673N/A ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS
12673N/A SOFTWARE.
12673N/A
12673N/A Written by Paul Eggert.
12673N/A
12673N/A--------------------------------------------------------------------
12673N/A