Author: guillem
Date: 2006-02-14 05:39:29 +0000 (Tue, 14 Feb 2006)
New Revision: 1193

Added:
   trunk/libbsd/src/
   trunk/libbsd/src/arc4random.c
   trunk/libbsd/src/bsd_getopt.c
   trunk/libbsd/src/err.c
   trunk/libbsd/src/fgetln.c
   trunk/libbsd/src/fmtcheck.c
   trunk/libbsd/src/inet_net_pton.c
   trunk/libbsd/src/md5.copyright
   trunk/libbsd/src/md5c.c
   trunk/libbsd/src/strlcat.c
   trunk/libbsd/src/strlcpy.c
Removed:
   trunk/libbsd/arc4random.c
   trunk/libbsd/bsd_getopt.c
   trunk/libbsd/err.c
   trunk/libbsd/fgetln.c
   trunk/libbsd/fmtcheck.c
   trunk/libbsd/inet_net_pton.c
   trunk/libbsd/md5.copyright
   trunk/libbsd/md5c.c
   trunk/libbsd/strlcat.c
   trunk/libbsd/strlcpy.c
Modified:
   trunk/libbsd/ChangeLog
   trunk/libbsd/Makefile
Log:
Move sources to src/.


Modified: trunk/libbsd/ChangeLog
===================================================================
--- trunk/libbsd/ChangeLog      2006-02-14 05:33:38 UTC (rev 1192)
+++ trunk/libbsd/ChangeLog      2006-02-14 05:39:29 UTC (rev 1193)
@@ -1,5 +1,29 @@
 2006-02-14  Guillem Jover  <[EMAIL PROTECTED]>
 
+       * arc4random.c: Move to ...
+       * src/arc4random.c: ... here.
+       * bsd_getopt.c: Move to ...
+       * src/bsd_getopt.c:: ... here.
+       * err.c: Move to ...
+       * src/err.c:: ... here.
+       * fgetln.c: Move to ...
+       * src/fgetln.c:: ... here.
+       * fmtcheck.c: Move to ...
+       * src/fmtcheck.c:: ... here.
+       * inet_net_pton.c: Move to ...
+       * src/inet_net_pton.c:: ... here.
+       * strlcat.c: Move to ...
+       * src/strlcat.c:: ... here.
+       * strlcpy.c: Move to ...
+       * src/strlcpy.c:: ... here.
+       * md5c.c: Move to ...
+       * src/md5c.c:: ... here.
+       * md5.copyright: Move to ...
+       * src/md5.copyright:: ... here.
+       * Makefile (LIB_SRCS): Automatically prefix the src/ dir.
+
+2006-02-14  Guillem Jover  <[EMAIL PROTECTED]>
+
        * Makefile (LIB_SRCS): Line wrap.
        (LIB_INCLUDES): List only the files, automatically prefix the dir.
        (LIB_MANS): Likewise.

Modified: trunk/libbsd/Makefile
===================================================================
--- trunk/libbsd/Makefile       2006-02-14 05:33:38 UTC (rev 1192)
+++ trunk/libbsd/Makefile       2006-02-14 05:39:29 UTC (rev 1193)
@@ -4,8 +4,9 @@
 # $Id$
 #
 
-LIB_SRCS = arc4random.c bsd_getopt.c err.c fgetln.c inet_net_pton.c \
-          strlcat.c strlcpy.c md5c.c fmtcheck.c
+LIB_SRCS := arc4random.c bsd_getopt.c err.c fgetln.c inet_net_pton.c \
+           strlcat.c strlcpy.c md5c.c fmtcheck.c
+LIB_SRCS := $(patsubst %,src/%,$(LIB_SRCS))
 
 LIB_INCLUDES := err.h getopt.h ip_icmp.h random.h queue.h md5.h string.h \
                bsd.h stdlib.h

Deleted: trunk/libbsd/arc4random.c
===================================================================
--- trunk/libbsd/arc4random.c   2006-02-14 05:33:38 UTC (rev 1192)
+++ trunk/libbsd/arc4random.c   2006-02-14 05:39:29 UTC (rev 1193)
@@ -1,191 +0,0 @@
-/*
- * Arc4 random number generator for OpenBSD.
- * Copyright 1996 David Mazieres <[EMAIL PROTECTED]>.
- *
- * Modification and redistribution in source and binary forms is
- * permitted provided that due credit is given to the author and the
- * OpenBSD project (for instance by leaving this copyright notice
- * intact).
- */
-
-/*
- * This code is derived from section 17.1 of Applied Cryptography,
- * second edition, which describes a stream cipher allegedly
- * compatible with RSA Labs "RC4" cipher (the actual description of
- * which is a trade secret).  The same algorithm is used as a stream
- * cipher called "arcfour" in Tatu Ylonen's ssh package.
- *
- * Here the stream cipher has been modified always to include the time
- * when initializing the state.  That makes it impossible to
- * regenerate the same random sequence twice, so this can't be used
- * for encryption, but will generate good random numbers.
- *
- * RC4 is a registered trademark of RSA Laboratories.
- */
-
-#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/lib/libc/gen/arc4random.c,v 1.10 2004/03/24 14:44:57 
green Exp $");
-
-#include <sys/types.h>
-#include <sys/time.h>
-#include <stdlib.h>
-#include <fcntl.h>
-#include <unistd.h>
-
-struct arc4_stream {
-       u_int8_t i;
-       u_int8_t j;
-       u_int8_t s[256];
-};
-
-#define        RANDOMDEV       "/dev/urandom"
-#define        THREAD_LOCK()
-#define        THREAD_UNLOCK()
-
-static struct arc4_stream rs;
-static int rs_initialized;
-static int rs_stired;
-
-static inline u_int8_t arc4_getbyte(struct arc4_stream *);
-static void arc4_stir(struct arc4_stream *);
-
-static inline void
-arc4_init(struct arc4_stream *as)
-{
-       int     n;
-
-       for (n = 0; n < 256; n++)
-               as->s[n] = n;
-       as->i = 0;
-       as->j = 0;
-}
-
-static inline void
-arc4_addrandom(struct arc4_stream *as, u_char *dat, int datlen)
-{
-       int     n;
-       u_int8_t si;
-
-       as->i--;
-       for (n = 0; n < 256; n++) {
-               as->i = (as->i + 1);
-               si = as->s[as->i];
-               as->j = (as->j + si + dat[n % datlen]);
-               as->s[as->i] = as->s[as->j];
-               as->s[as->j] = si;
-       }
-}
-
-static void
-arc4_stir(struct arc4_stream *as)
-{
-       int     fd, n;
-       struct {
-               struct timeval tv;
-               pid_t pid;
-               u_int8_t rnd[128 - sizeof(struct timeval) - sizeof(pid_t)];
-       }       rdat;
-
-       gettimeofday(&rdat.tv, NULL);
-       rdat.pid = getpid();
-       fd = open(RANDOMDEV, O_RDONLY, 0);
-       if (fd >= 0) {
-               (void) read(fd, rdat.rnd, sizeof(rdat.rnd));
-               close(fd);
-       } 
-       /* fd < 0?  Ah, what the heck. We'll just take whatever was on the
-        * stack... */
-
-       arc4_addrandom(as, (void *) &rdat, sizeof(rdat));
-
-       /*
-        * Throw away the first N bytes of output, as suggested in the
-        * paper "Weaknesses in the Key Scheduling Algorithm of RC4"
-        * by Fluher, Mantin, and Shamir.  N=1024 is based on
-        * suggestions in the paper "(Not So) Random Shuffles of RC4"
-        * by Ilya Mironov.
-        */
-       for (n = 0; n < 1024; n++)
-               arc4_getbyte(as);
-}
-
-static inline u_int8_t
-arc4_getbyte(struct arc4_stream *as)
-{
-       u_int8_t si, sj;
-
-       as->i = (as->i + 1);
-       si = as->s[as->i];
-       as->j = (as->j + si);
-       sj = as->s[as->j];
-       as->s[as->i] = sj;
-       as->s[as->j] = si;
-
-       return (as->s[(si + sj) & 0xff]);
-}
-
-static inline u_int32_t
-arc4_getword(struct arc4_stream *as)
-{
-       u_int32_t val;
-
-       val = arc4_getbyte(as) << 24;
-       val |= arc4_getbyte(as) << 16;
-       val |= arc4_getbyte(as) << 8;
-       val |= arc4_getbyte(as);
-
-       return (val);
-}
-
-static void
-arc4_check_init(void)
-{
-       if (!rs_initialized) {
-               arc4_init(&rs);
-               rs_initialized = 1;
-       }
-}
-
-static void
-arc4_check_stir(void)
-{
-       if (!rs_stired) {
-               arc4_stir(&rs);
-               rs_stired = 1;
-       }
-}
-
-u_int32_t
-arc4random()
-{
-       u_int32_t rnd;
-
-       THREAD_LOCK();
-       arc4_check_init();
-       arc4_check_stir();
-       rnd = arc4_getword(&rs);
-       THREAD_UNLOCK();
-
-       return (rnd);
-}
-
-#if 0
-/*-------- Test code for i386 --------*/
-#include <stdio.h>
-#include <machine/pctr.h>
-int
-main(int argc, char **argv)
-{
-       const int iter = 1000000;
-       int     i;
-       pctrval v;
-
-       v = rdtsc();
-       for (i = 0; i < iter; i++)
-               arc4random();
-       v = rdtsc() - v;
-       v /= iter;
-
-       printf("%qd cycles\n", v);
-}
-#endif

Deleted: trunk/libbsd/bsd_getopt.c
===================================================================
--- trunk/libbsd/bsd_getopt.c   2006-02-14 05:33:38 UTC (rev 1192)
+++ trunk/libbsd/bsd_getopt.c   2006-02-14 05:39:29 UTC (rev 1193)
@@ -1,15 +0,0 @@
-#include <bsd/getopt.h>
-
-int optreset = 0;
-
-int
-bsd_getopt (int argc, char **argv, char *shortopts)
-{
-  if (optreset == 1)
-    {
-      optreset = 0;
-      optind = 0;
-    }
-
-  return getopt (argc, argv, shortopts);
-}

Deleted: trunk/libbsd/err.c
===================================================================
--- trunk/libbsd/err.c  2006-02-14 05:33:38 UTC (rev 1192)
+++ trunk/libbsd/err.c  2006-02-14 05:39:29 UTC (rev 1193)
@@ -1,63 +0,0 @@
-/* Copyright (C) 2006 Robert Millan
-
-   The GNU C Library is free software; you can redistribute it and/or
-   modify it under the terms of the GNU Lesser General Public
-   License as published by the Free Software Foundation; either
-   version 2.1 of the License, or (at your option) any later version.
-
-   The GNU C Library is distributed in the hope that it will be useful,
-   but WITHOUT ANY WARRANTY; without even the implied warranty of
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-   Lesser General Public License for more details.
-
-   You should have received a copy of the GNU Lesser General Public
-   License along with the GNU C Library; if not, write to the Free
-   Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA
-   02110-1301, USA.  */
-
-#include <bsd/err.h>
-#include <errno.h>
-#include <stdarg.h>
-
-void
-warnc (int code, const char *format, ...)
-{
-  int tmp = errno;
-  va_list ap;
-  va_start (ap, format);
-
-  errno = code;
-  warn (format, ap);
-  errno = tmp;
-
-  va_end (ap);
-}
-
-void
-vwarnc (int code, const char *format, va_list ap)
-{
-  int tmp = errno;
-
-  errno = code;
-  vwarn (format, ap);
-  errno = tmp;
-}
-
-void
-errc (int status, int code, const char *format, ...)
-{
-  va_list ap;
-  va_start (ap, format);
-
-  errno = code;
-  err (status, format, ap);
-
-  va_end (ap);
-}
-
-void
-verrc (int status, int code, const char *format, va_list ap)
-{
-  errno = code;
-  verr (status, format, ap);
-}

Deleted: trunk/libbsd/fgetln.c
===================================================================
--- trunk/libbsd/fgetln.c       2006-02-14 05:33:38 UTC (rev 1192)
+++ trunk/libbsd/fgetln.c       2006-02-14 05:39:29 UTC (rev 1193)
@@ -1,28 +0,0 @@
-
-#include <stdio.h>
-#include <sys/cdefs.h>
-#include <sys/types.h>
-#include <string.h>
-
-#ifdef __GLIBC__
-char *
-fgetln (stream, len)
-       FILE *stream;
-       size_t *len;
-{
-       char *line=NULL;
-       size_t nread = 0;
-
-       while (nread == 1) {
-               nread = getline (&line, len, stream);
-               if (nread == -1)
-                       return NULL;
-       }
-
-       (*len)--; /* get rid of the trailing \0, fgetln
-                    does not have it */
-
-       return line;
-}
-#endif
-

Deleted: trunk/libbsd/fmtcheck.c
===================================================================
--- trunk/libbsd/fmtcheck.c     2006-02-14 05:33:38 UTC (rev 1192)
+++ trunk/libbsd/fmtcheck.c     2006-02-14 05:39:29 UTC (rev 1193)
@@ -1,267 +0,0 @@
-/*-
- * Copyright (c) 2000 The NetBSD Foundation, Inc.
- * All rights reserved.
- *
- * This code was contributed to The NetBSD Foundation by Allen Briggs.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- *    notice, this list of conditions and the following disclaimer.
- * 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.
- * 3. All advertising materials mentioning features or use of this software
- *    must display the following acknowledgement:
- *        This product includes software developed by the NetBSD
- *        Foundation, Inc. and its contributors.
- * 4. Neither the name of The NetBSD Foundation 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 PROVIDED BY THE NETBSD FOUNDATION, INC. 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 FOUNDATION 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.
- */
-
-/*     $NetBSD: fmtcheck.c,v 1.2 2000/11/01 01:17:20 briggs Exp $      */
-#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: /repoman/r/ncvs/src/lib/libc/gen/fmtcheck.c,v 1.8 
2005/03/21 08:00:55 das Exp $");
-
-#include <stdio.h>
-#include <string.h>
-#include <ctype.h>
-
-__weak_reference(__fmtcheck, fmtcheck);
-
-enum __e_fmtcheck_types {
-       FMTCHECK_START,
-       FMTCHECK_SHORT,
-       FMTCHECK_INT,
-       FMTCHECK_LONG,
-       FMTCHECK_QUAD,
-       FMTCHECK_PTRDIFFT,
-       FMTCHECK_SIZET,
-       FMTCHECK_SHORTPOINTER,
-       FMTCHECK_INTPOINTER,
-       FMTCHECK_LONGPOINTER,
-       FMTCHECK_QUADPOINTER,
-       FMTCHECK_PTRDIFFTPOINTER,
-       FMTCHECK_SIZETPOINTER,
-#ifndef NO_FLOATING_POINT
-       FMTCHECK_DOUBLE,
-       FMTCHECK_LONGDOUBLE,
-#endif
-       FMTCHECK_STRING,
-       FMTCHECK_WIDTH,
-       FMTCHECK_PRECISION,
-       FMTCHECK_DONE,
-       FMTCHECK_UNKNOWN
-};
-typedef enum __e_fmtcheck_types EFT;
-
-#define RETURN(pf,f,r) do { \
-                       *(pf) = (f); \
-                       return r; \
-                      } /*NOTREACHED*/ /*CONSTCOND*/ while (0)
-
-static EFT
-get_next_format_from_precision(const char **pf)
-{
-       int             sh, lg, quad, longdouble, ptrdifft, sizet;
-       const char      *f;
-
-       sh = lg = quad = longdouble = ptrdifft = sizet = 0;
-
-       f = *pf;
-       switch (*f) {
-       case 'h':
-               f++;
-               sh = 1;
-               break;
-       case 'l':
-               f++;
-               if (!*f) RETURN(pf,f,FMTCHECK_UNKNOWN);
-               if (*f == 'l') {
-                       f++;
-                       quad = 1;
-               } else {
-                       lg = 1;
-               }
-               break;
-       case 'q':
-               f++;
-               quad = 1;
-               break;
-       case 't':
-               f++;
-               ptrdifft = 1;
-               break;
-       case 'z':
-               f++;
-               sizet = 1;
-               break;
-       case 'L':
-               f++;
-               longdouble = 1;
-               break;
-       default:
-               break;
-       }
-       if (!*f) RETURN(pf,f,FMTCHECK_UNKNOWN);
-       if (strchr("diouxX", *f)) {
-               if (longdouble)
-                       RETURN(pf,f,FMTCHECK_UNKNOWN);
-               if (lg)
-                       RETURN(pf,f,FMTCHECK_LONG);
-               if (quad)
-                       RETURN(pf,f,FMTCHECK_QUAD);
-               if (ptrdifft)
-                       RETURN(pf,f,FMTCHECK_PTRDIFFT);
-               if (sizet)
-                       RETURN(pf,f,FMTCHECK_SIZET);
-               RETURN(pf,f,FMTCHECK_INT);
-       }
-       if (*f == 'n') {
-               if (longdouble)
-                       RETURN(pf,f,FMTCHECK_UNKNOWN);
-               if (sh)
-                       RETURN(pf,f,FMTCHECK_SHORTPOINTER);
-               if (lg)
-                       RETURN(pf,f,FMTCHECK_LONGPOINTER);
-               if (quad)
-                       RETURN(pf,f,FMTCHECK_QUADPOINTER);
-               if (ptrdifft)
-                       RETURN(pf,f,FMTCHECK_PTRDIFFTPOINTER);
-               if (sizet)
-                       RETURN(pf,f,FMTCHECK_SIZETPOINTER);
-               RETURN(pf,f,FMTCHECK_INTPOINTER);
-       }
-       if (strchr("DOU", *f)) {
-               if (sh + lg + quad + longdouble + ptrdifft + sizet)
-                       RETURN(pf,f,FMTCHECK_UNKNOWN);
-               RETURN(pf,f,FMTCHECK_LONG);
-       }
-#ifndef NO_FLOATING_POINT
-       if (strchr("aAeEfFgG", *f)) {
-               if (longdouble)
-                       RETURN(pf,f,FMTCHECK_LONGDOUBLE);
-               if (sh + lg + quad + ptrdifft + sizet)
-                       RETURN(pf,f,FMTCHECK_UNKNOWN);
-               RETURN(pf,f,FMTCHECK_DOUBLE);
-       }
-#endif
-       if (*f == 'c') {
-               if (sh + lg + quad + longdouble + ptrdifft + sizet)
-                       RETURN(pf,f,FMTCHECK_UNKNOWN);
-               RETURN(pf,f,FMTCHECK_INT);
-       }
-       if (*f == 's') {
-               if (sh + lg + quad + longdouble + ptrdifft + sizet)
-                       RETURN(pf,f,FMTCHECK_UNKNOWN);
-               RETURN(pf,f,FMTCHECK_STRING);
-       }
-       if (*f == 'p') {
-               if (sh + lg + quad + longdouble + ptrdifft + sizet)
-                       RETURN(pf,f,FMTCHECK_UNKNOWN);
-               RETURN(pf,f,FMTCHECK_LONG);
-       }
-       RETURN(pf,f,FMTCHECK_UNKNOWN);
-       /*NOTREACHED*/
-}
-
-static EFT
-get_next_format_from_width(const char **pf)
-{
-       const char      *f;
-
-       f = *pf;
-       if (*f == '.') {
-               f++;
-               if (*f == '*') {
-                       RETURN(pf,f,FMTCHECK_PRECISION);
-               }
-               /* eat any precision (empty is allowed) */
-               while (isdigit(*f)) f++;
-               if (!*f) RETURN(pf,f,FMTCHECK_UNKNOWN);
-       }
-       RETURN(pf,f,get_next_format_from_precision(pf));
-       /*NOTREACHED*/
-}
-
-static EFT
-get_next_format(const char **pf, EFT eft)
-{
-       int             infmt;
-       const char      *f;
-
-       if (eft == FMTCHECK_WIDTH) {
-               (*pf)++;
-               return get_next_format_from_width(pf);
-       } else if (eft == FMTCHECK_PRECISION) {
-               (*pf)++;
-               return get_next_format_from_precision(pf);
-       }
-
-       f = *pf;
-       infmt = 0;
-       while (!infmt) {
-               f = strchr(f, '%');
-               if (f == NULL)
-                       RETURN(pf,f,FMTCHECK_DONE);
-               f++;
-               if (!*f)
-                       RETURN(pf,f,FMTCHECK_UNKNOWN);
-               if (*f != '%')
-                       infmt = 1;
-               else
-                       f++;
-       }
-
-       /* Eat any of the flags */
-       while (*f && (strchr("#'0- +", *f)))
-               f++;
-
-       if (*f == '*') {
-               RETURN(pf,f,FMTCHECK_WIDTH);
-       }
-       /* eat any width */
-       while (isdigit(*f)) f++;
-       if (!*f) {
-               RETURN(pf,f,FMTCHECK_UNKNOWN);
-       }
-
-       RETURN(pf,f,get_next_format_from_width(pf));
-       /*NOTREACHED*/
-}
-
-__const char *
-__fmtcheck(const char *f1, const char *f2)
-{
-       const char      *f1p, *f2p;
-       EFT             f1t, f2t;
-
-       if (!f1) return f2;
-       
-       f1p = f1;
-       f1t = FMTCHECK_START;
-       f2p = f2;
-       f2t = FMTCHECK_START;
-       while ((f1t = get_next_format(&f1p, f1t)) != FMTCHECK_DONE) {
-               if (f1t == FMTCHECK_UNKNOWN)
-                       return f2;
-               f2t = get_next_format(&f2p, f2t);
-               if (f1t != f2t)
-                       return f2;
-       }
-       return f1;
-}

Deleted: trunk/libbsd/inet_net_pton.c
===================================================================
--- trunk/libbsd/inet_net_pton.c        2006-02-14 05:33:38 UTC (rev 1192)
+++ trunk/libbsd/inet_net_pton.c        2006-02-14 05:39:29 UTC (rev 1193)
@@ -1,214 +0,0 @@
-/*
- * Copyright (c) 1996 by Internet Software Consortium.
- *
- * Permission to use, copy, modify, and distribute this software for any
- * purpose with or without fee is hereby granted, provided that the above
- * copyright notice and this permission notice appear in all copies.
- *
- * THE SOFTWARE IS PROVIDED "AS IS" AND INTERNET SOFTWARE CONSORTIUM DISCLAIMS
- * ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES
- * OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL INTERNET SOFTWARE
- * CONSORTIUM BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL
- * DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR
- * PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS
- * ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS
- * SOFTWARE.
- */
-
-#if defined(LIBC_SCCS) && !defined(lint)
-static const char orig_rcsid[] = "From Id: inet_net_pton.c,v 1.8 1996/11/21 
10:28:12 vixie Exp $";
-#endif
-#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/lib/libc/net/inet_net_pton.c,v 1.9 2003/09/15 23:38:06 
fenner Exp $");
-
-#include <sys/types.h>
-#include <sys/socket.h>
-#include <netinet/in.h>
-#include <arpa/inet.h>
-
-#include <assert.h>
-#include <ctype.h>
-#include <errno.h>
-#include <stdio.h>
-#include <string.h>
-#include <stdlib.h>
-
-#ifdef SPRINTF_CHAR
-# define SPRINTF(x) strlen(sprintf/**/x)
-#else
-# define SPRINTF(x) ((size_t)sprintf x)
-#endif
-
-static int     inet_net_pton_ipv4(const char *src, u_char *dst, size_t size);
-
-/*
- * static int
- * inet_net_pton(af, src, dst, size)
- *     convert network number from presentation to network format.
- *     accepts hex octets, hex strings, decimal octets, and /CIDR.
- *     "size" is in bytes and describes "dst".
- * return:
- *     number of bits, either imputed classfully or specified with /CIDR,
- *     or -1 if some failure occurred (check errno).  ENOENT means it was
- *     not a valid network specification.
- * author:
- *     Paul Vixie (ISC), June 1996
- */
-int
-inet_net_pton(af, src, dst, size)
-       int af;
-       const char *src;
-       void *dst;
-       size_t size;
-{
-       switch (af) {
-       case AF_INET:
-               return (inet_net_pton_ipv4(src, dst, size));
-       default:
-               errno = EAFNOSUPPORT;
-               return (-1);
-       }
-}
-
-/*
- * static int
- * inet_net_pton_ipv4(src, dst, size)
- *     convert IPv4 network number from presentation to network format.
- *     accepts hex octets, hex strings, decimal octets, and /CIDR.
- *     "size" is in bytes and describes "dst".
- * return:
- *     number of bits, either imputed classfully or specified with /CIDR,
- *     or -1 if some failure occurred (check errno).  ENOENT means it was
- *     not an IPv4 network specification.
- * note:
- *     network byte order assumed.  this means 192.5.5.240/28 has
- *     0x11110000 in its fourth octet.
- * author:
- *     Paul Vixie (ISC), June 1996
- */
-static int
-inet_net_pton_ipv4(src, dst, size)
-       const char *src;
-       u_char *dst;
-       size_t size;
-{
-       static const char
-               xdigits[] = "0123456789abcdef",
-               digits[] = "0123456789";
-       int n, ch, tmp, dirty, bits;
-       const u_char *odst = dst;
-
-       ch = *src++;
-       if (ch == '0' && (src[0] == 'x' || src[0] == 'X')
-           && isascii(src[1]) && isxdigit(src[1])) {
-               /* Hexadecimal: Eat nybble string. */
-               if (size <= 0)
-                       goto emsgsize;
-               *dst = 0, dirty = 0;
-               src++;  /* skip x or X. */
-               while ((ch = *src++) != '\0' &&
-                      isascii(ch) && isxdigit(ch)) {
-                       if (isupper(ch))
-                               ch = tolower(ch);
-                       n = strchr(xdigits, ch) - xdigits;
-                       assert(n >= 0 && n <= 15);
-                       *dst |= n;
-                       if (!dirty++)
-                               *dst <<= 4;
-                       else if (size-- > 0)
-                               *++dst = 0, dirty = 0;
-                       else
-                               goto emsgsize;
-               }
-               if (dirty)
-                       size--;
-       } else if (isascii(ch) && isdigit(ch)) {
-               /* Decimal: eat dotted digit string. */
-               for (;;) {
-                       tmp = 0;
-                       do {
-                               n = strchr(digits, ch) - digits;
-                               assert(n >= 0 && n <= 9);
-                               tmp *= 10;
-                               tmp += n;
-                               if (tmp > 255)
-                                       goto enoent;
-                       } while ((ch = *src++) != '\0' &&
-                                isascii(ch) && isdigit(ch));
-                       if (size-- <= 0)
-                               goto emsgsize;
-                       *dst++ = (u_char) tmp;
-                       if (ch == '\0' || ch == '/')
-                               break;
-                       if (ch != '.')
-                               goto enoent;
-                       ch = *src++;
-                       if (!isascii(ch) || !isdigit(ch))
-                               goto enoent;
-               }
-       } else
-               goto enoent;
-
-       bits = -1;
-       if (ch == '/' && isascii(src[0]) && isdigit(src[0]) && dst > odst) {
-               /* CIDR width specifier.  Nothing can follow it. */
-               ch = *src++;    /* Skip over the /. */
-               bits = 0;
-               do {
-                       n = strchr(digits, ch) - digits;
-                       assert(n >= 0 && n <= 9);
-                       bits *= 10;
-                       bits += n;
-               } while ((ch = *src++) != '\0' && isascii(ch) && isdigit(ch));
-               if (ch != '\0')
-                       goto enoent;
-               if (bits > 32)
-                       goto emsgsize;
-       }
-
-       /* Firey death and destruction unless we prefetched EOS. */
-       if (ch != '\0')
-               goto enoent;
-
-       /* If nothing was written to the destination, we found no address. */
-       if (dst == odst)
-               goto enoent;
-       /* If no CIDR spec was given, infer width from net class. */
-       if (bits == -1) {
-               if (*odst >= 240)       /* Class E */
-                       bits = 32;
-               else if (*odst >= 224)  /* Class D */
-                       bits = 4;
-               else if (*odst >= 192)  /* Class C */
-                       bits = 24;
-               else if (*odst >= 128)  /* Class B */
-                       bits = 16;
-               else                    /* Class A */
-                       bits = 8;
-               /* If imputed mask is narrower than specified octets, widen. */
-               if (bits < ((dst - odst) * 8))
-                       bits = (dst - odst) * 8;
-       }
-       /* Extend network to cover the actual mask. */
-       while (bits > ((dst - odst) * 8)) {
-               if (size-- <= 0)
-                       goto emsgsize;
-               *dst++ = '\0';
-       }
-       return (bits);
-
- enoent:
-       errno = ENOENT;
-       return (-1);
-
- emsgsize:
-       errno = EMSGSIZE;
-       return (-1);
-}
-
-/*
- * Weak aliases for applications that use certain private entry points,
- * and fail to include <arpa/inet.h>.
- */
-#undef inet_net_pton
-//__weak_reference(__inet_net_pton, inet_net_pton);

Deleted: trunk/libbsd/md5.copyright
===================================================================
--- trunk/libbsd/md5.copyright  2006-02-14 05:33:38 UTC (rev 1192)
+++ trunk/libbsd/md5.copyright  2006-02-14 05:39:29 UTC (rev 1193)
@@ -1,21 +0,0 @@
-.\" $FreeBSD: src/lib/libmd/md5.copyright,v 1.5 1999/08/28 00:05:06 peter Exp $
-Copyright (C) 1991-2, RSA Data Security, Inc. Created 1991. All
-rights reserved.
-.Pp
-License to copy and use this software is granted provided that it
-is identified as the "RSA Data Security, Inc. MD5 Message-Digest
-Algorithm" in all material mentioning or referencing this software
-or this function.
-.Pp
-License is also granted to make and use derivative works provided
-that such works are identified as "derived from the RSA Data
-Security, Inc. MD5 Message-Digest Algorithm" in all material
-mentioning or referencing the derived work.
-.Pp
-RSA Data Security, Inc. makes no representations concerning either
-the merchantability of this software or the suitability of this
-software for any particular purpose. It is provided "as is"
-without express or implied warranty of any kind.
-.Pp
-These notices must be retained in any copies of any part of this
-documentation and/or software.

Deleted: trunk/libbsd/md5c.c
===================================================================
--- trunk/libbsd/md5c.c 2006-02-14 05:33:38 UTC (rev 1192)
+++ trunk/libbsd/md5c.c 2006-02-14 05:39:29 UTC (rev 1193)
@@ -1,336 +0,0 @@
-/*
- * MD5C.C - RSA Data Security, Inc., MD5 message-digest algorithm
- *
- * Copyright (C) 1991-2, RSA Data Security, Inc. Created 1991. All
- * rights reserved.
- *
- * License to copy and use this software is granted provided that it
- * is identified as the "RSA Data Security, Inc. MD5 Message-Digest
- * Algorithm" in all material mentioning or referencing this software
- * or this function.
- *
- * License is also granted to make and use derivative works provided
- * that such works are identified as "derived from the RSA Data
- * Security, Inc. MD5 Message-Digest Algorithm" in all material
- * mentioning or referencing the derived work.
- *
- * RSA Data Security, Inc. makes no representations concerning either
- * the merchantability of this software or the suitability of this
- * software for any particular purpose. It is provided "as is"
- * without express or implied warranty of any kind.
- *
- * These notices must be retained in any copies of any part of this
- * documentation and/or software.
- *
- * This code is the same as the code published by RSA Inc.  It has been
- * edited for clarity and style only.
- */
-
-#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/lib/libmd/md5c.c,v 1.16 2003/06/05 13:17:32 markm Exp 
$");
-
-#include <sys/types.h>
-
-#ifdef _KERNEL
-#include <sys/systm.h>
-#else
-#include <string.h>
-#endif
-
-//#include <machine/endian.h>
-//#include <sys/endian.h>
-#include <bsd/md5.h>
-
-static void MD5Transform(u_int32_t [4], const unsigned char [64]);
-
-#ifdef _KERNEL
-#define memset(x,y,z)  bzero(x,z);
-#define memcpy(x,y,z)  bcopy(y, x, z)
-#endif
-
-#if (BYTE_ORDER == LITTLE_ENDIAN)
-#define Encode memcpy
-#define Decode memcpy
-#else 
-
-/*
- * Encodes input (u_int32_t) into output (unsigned char). Assumes len is
- * a multiple of 4.
- */
-
-static void
-Encode (unsigned char *output, u_int32_t *input, unsigned int len)
-{
-       unsigned int i;
-       u_int32_t *op = (u_int32_t *)output;
-
-       for (i = 0; i < len / 4; i++)
-               op[i] = htole32(input[i]);
-}
-
-/*
- * Decodes input (unsigned char) into output (u_int32_t). Assumes len is
- * a multiple of 4.
- */
-
-static void
-Decode (u_int32_t *output, const unsigned char *input, unsigned int len)
-{
-       unsigned int i;
-       const u_int32_t *ip = (const u_int32_t *)input;
-
-       for (i = 0; i < len / 4; i++)
-               output[i] = le32toh(ip[i]);
-}
-#endif
-
-static unsigned char PADDING[64] = {
-  0x80, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
-};
-
-/* F, G, H and I are basic MD5 functions. */
-#define F(x, y, z) (((x) & (y)) | ((~x) & (z)))
-#define G(x, y, z) (((x) & (z)) | ((y) & (~z)))
-#define H(x, y, z) ((x) ^ (y) ^ (z))
-#define I(x, y, z) ((y) ^ ((x) | (~z)))
-
-/* ROTATE_LEFT rotates x left n bits. */
-#define ROTATE_LEFT(x, n) (((x) << (n)) | ((x) >> (32-(n))))
-
-/*
- * FF, GG, HH, and II transformations for rounds 1, 2, 3, and 4.
- * Rotation is separate from addition to prevent recomputation.
- */
-#define FF(a, b, c, d, x, s, ac) { \
-       (a) += F ((b), (c), (d)) + (x) + (u_int32_t)(ac); \
-       (a) = ROTATE_LEFT ((a), (s)); \
-       (a) += (b); \
-       }
-#define GG(a, b, c, d, x, s, ac) { \
-       (a) += G ((b), (c), (d)) + (x) + (u_int32_t)(ac); \
-       (a) = ROTATE_LEFT ((a), (s)); \
-       (a) += (b); \
-       }
-#define HH(a, b, c, d, x, s, ac) { \
-       (a) += H ((b), (c), (d)) + (x) + (u_int32_t)(ac); \
-       (a) = ROTATE_LEFT ((a), (s)); \
-       (a) += (b); \
-       }
-#define II(a, b, c, d, x, s, ac) { \
-       (a) += I ((b), (c), (d)) + (x) + (u_int32_t)(ac); \
-       (a) = ROTATE_LEFT ((a), (s)); \
-       (a) += (b); \
-       }
-
-/* MD5 initialization. Begins an MD5 operation, writing a new context. */
-
-void
-MD5Init (context)
-       MD5_CTX *context;
-{
-
-       context->count[0] = context->count[1] = 0;
-
-       /* Load magic initialization constants.  */
-       context->state[0] = 0x67452301;
-       context->state[1] = 0xefcdab89;
-       context->state[2] = 0x98badcfe;
-       context->state[3] = 0x10325476;
-}
-
-/* 
- * MD5 block update operation. Continues an MD5 message-digest
- * operation, processing another message block, and updating the
- * context.
- */
-
-void
-MD5Update (context, input, inputLen)
-       MD5_CTX *context;
-       const unsigned char *input;
-       unsigned int inputLen;
-{
-       unsigned int i, idx, partLen;
-
-       /* Compute number of bytes mod 64 */
-       idx = (unsigned int)((context->count[0] >> 3) & 0x3F);
-
-       /* Update number of bits */
-       if ((context->count[0] += ((u_int32_t)inputLen << 3))
-           < ((u_int32_t)inputLen << 3))
-               context->count[1]++;
-       context->count[1] += ((u_int32_t)inputLen >> 29);
-
-       partLen = 64 - idx;
-
-       /* Transform as many times as possible. */
-       if (inputLen >= partLen) {
-               memcpy((void *)&context->buffer[idx], (const void *)input,
-                   partLen);
-               MD5Transform (context->state, context->buffer);
-
-               for (i = partLen; i + 63 < inputLen; i += 64)
-                       MD5Transform (context->state, &input[i]);
-
-               idx = 0;
-       }
-       else
-               i = 0;
-
-       /* Buffer remaining input */
-       memcpy ((void *)&context->buffer[idx], (const void *)&input[i],
-           inputLen-i);
-}
-
-/*
- * MD5 padding. Adds padding followed by original length.
- */
-
-void
-MD5Pad (context)
-       MD5_CTX *context;
-{
-       unsigned char bits[8];
-       unsigned int idx, padLen;
-
-       /* Save number of bits */
-       Encode (bits, context->count, 8);
-
-       /* Pad out to 56 mod 64. */
-       idx = (unsigned int)((context->count[0] >> 3) & 0x3f);
-       padLen = (idx < 56) ? (56 - idx) : (120 - idx);
-       MD5Update (context, PADDING, padLen);
-
-       /* Append length (before padding) */
-       MD5Update (context, bits, 8);
-}
-
-/*
- * MD5 finalization. Ends an MD5 message-digest operation, writing the
- * the message digest and zeroizing the context.
- */
-
-void
-MD5Final (digest, context)
-       unsigned char digest[16];
-       MD5_CTX *context;
-{
-       /* Do padding. */
-       MD5Pad (context);
-
-       /* Store state in digest */
-       Encode (digest, context->state, 16);
-
-       /* Zeroize sensitive information. */
-       memset ((void *)context, 0, sizeof (*context));
-}
-
-/* MD5 basic transformation. Transforms state based on block. */
-
-static void
-MD5Transform (state, block)
-       u_int32_t state[4];
-       const unsigned char block[64];
-{
-       u_int32_t a = state[0], b = state[1], c = state[2], d = state[3], x[16];
-
-       Decode (x, block, 64);
-
-       /* Round 1 */
-#define S11 7
-#define S12 12
-#define S13 17
-#define S14 22
-       FF (a, b, c, d, x[ 0], S11, 0xd76aa478); /* 1 */
-       FF (d, a, b, c, x[ 1], S12, 0xe8c7b756); /* 2 */
-       FF (c, d, a, b, x[ 2], S13, 0x242070db); /* 3 */
-       FF (b, c, d, a, x[ 3], S14, 0xc1bdceee); /* 4 */
-       FF (a, b, c, d, x[ 4], S11, 0xf57c0faf); /* 5 */
-       FF (d, a, b, c, x[ 5], S12, 0x4787c62a); /* 6 */
-       FF (c, d, a, b, x[ 6], S13, 0xa8304613); /* 7 */
-       FF (b, c, d, a, x[ 7], S14, 0xfd469501); /* 8 */
-       FF (a, b, c, d, x[ 8], S11, 0x698098d8); /* 9 */
-       FF (d, a, b, c, x[ 9], S12, 0x8b44f7af); /* 10 */
-       FF (c, d, a, b, x[10], S13, 0xffff5bb1); /* 11 */
-       FF (b, c, d, a, x[11], S14, 0x895cd7be); /* 12 */
-       FF (a, b, c, d, x[12], S11, 0x6b901122); /* 13 */
-       FF (d, a, b, c, x[13], S12, 0xfd987193); /* 14 */
-       FF (c, d, a, b, x[14], S13, 0xa679438e); /* 15 */
-       FF (b, c, d, a, x[15], S14, 0x49b40821); /* 16 */
-
-       /* Round 2 */
-#define S21 5
-#define S22 9
-#define S23 14
-#define S24 20
-       GG (a, b, c, d, x[ 1], S21, 0xf61e2562); /* 17 */
-       GG (d, a, b, c, x[ 6], S22, 0xc040b340); /* 18 */
-       GG (c, d, a, b, x[11], S23, 0x265e5a51); /* 19 */
-       GG (b, c, d, a, x[ 0], S24, 0xe9b6c7aa); /* 20 */
-       GG (a, b, c, d, x[ 5], S21, 0xd62f105d); /* 21 */
-       GG (d, a, b, c, x[10], S22,  0x2441453); /* 22 */
-       GG (c, d, a, b, x[15], S23, 0xd8a1e681); /* 23 */
-       GG (b, c, d, a, x[ 4], S24, 0xe7d3fbc8); /* 24 */
-       GG (a, b, c, d, x[ 9], S21, 0x21e1cde6); /* 25 */
-       GG (d, a, b, c, x[14], S22, 0xc33707d6); /* 26 */
-       GG (c, d, a, b, x[ 3], S23, 0xf4d50d87); /* 27 */
-       GG (b, c, d, a, x[ 8], S24, 0x455a14ed); /* 28 */
-       GG (a, b, c, d, x[13], S21, 0xa9e3e905); /* 29 */
-       GG (d, a, b, c, x[ 2], S22, 0xfcefa3f8); /* 30 */
-       GG (c, d, a, b, x[ 7], S23, 0x676f02d9); /* 31 */
-       GG (b, c, d, a, x[12], S24, 0x8d2a4c8a); /* 32 */
-
-       /* Round 3 */
-#define S31 4
-#define S32 11
-#define S33 16
-#define S34 23
-       HH (a, b, c, d, x[ 5], S31, 0xfffa3942); /* 33 */
-       HH (d, a, b, c, x[ 8], S32, 0x8771f681); /* 34 */
-       HH (c, d, a, b, x[11], S33, 0x6d9d6122); /* 35 */
-       HH (b, c, d, a, x[14], S34, 0xfde5380c); /* 36 */
-       HH (a, b, c, d, x[ 1], S31, 0xa4beea44); /* 37 */
-       HH (d, a, b, c, x[ 4], S32, 0x4bdecfa9); /* 38 */
-       HH (c, d, a, b, x[ 7], S33, 0xf6bb4b60); /* 39 */
-       HH (b, c, d, a, x[10], S34, 0xbebfbc70); /* 40 */
-       HH (a, b, c, d, x[13], S31, 0x289b7ec6); /* 41 */
-       HH (d, a, b, c, x[ 0], S32, 0xeaa127fa); /* 42 */
-       HH (c, d, a, b, x[ 3], S33, 0xd4ef3085); /* 43 */
-       HH (b, c, d, a, x[ 6], S34,  0x4881d05); /* 44 */
-       HH (a, b, c, d, x[ 9], S31, 0xd9d4d039); /* 45 */
-       HH (d, a, b, c, x[12], S32, 0xe6db99e5); /* 46 */
-       HH (c, d, a, b, x[15], S33, 0x1fa27cf8); /* 47 */
-       HH (b, c, d, a, x[ 2], S34, 0xc4ac5665); /* 48 */
-
-       /* Round 4 */
-#define S41 6
-#define S42 10
-#define S43 15
-#define S44 21
-       II (a, b, c, d, x[ 0], S41, 0xf4292244); /* 49 */
-       II (d, a, b, c, x[ 7], S42, 0x432aff97); /* 50 */
-       II (c, d, a, b, x[14], S43, 0xab9423a7); /* 51 */
-       II (b, c, d, a, x[ 5], S44, 0xfc93a039); /* 52 */
-       II (a, b, c, d, x[12], S41, 0x655b59c3); /* 53 */
-       II (d, a, b, c, x[ 3], S42, 0x8f0ccc92); /* 54 */
-       II (c, d, a, b, x[10], S43, 0xffeff47d); /* 55 */
-       II (b, c, d, a, x[ 1], S44, 0x85845dd1); /* 56 */
-       II (a, b, c, d, x[ 8], S41, 0x6fa87e4f); /* 57 */
-       II (d, a, b, c, x[15], S42, 0xfe2ce6e0); /* 58 */
-       II (c, d, a, b, x[ 6], S43, 0xa3014314); /* 59 */
-       II (b, c, d, a, x[13], S44, 0x4e0811a1); /* 60 */
-       II (a, b, c, d, x[ 4], S41, 0xf7537e82); /* 61 */
-       II (d, a, b, c, x[11], S42, 0xbd3af235); /* 62 */
-       II (c, d, a, b, x[ 2], S43, 0x2ad7d2bb); /* 63 */
-       II (b, c, d, a, x[ 9], S44, 0xeb86d391); /* 64 */
-
-       state[0] += a;
-       state[1] += b;
-       state[2] += c;
-       state[3] += d;
-
-       /* Zeroize sensitive information. */
-       memset ((void *)x, 0, sizeof (x));
-}

Copied: trunk/libbsd/src/arc4random.c (from rev 1187, trunk/libbsd/arc4random.c)

Copied: trunk/libbsd/src/bsd_getopt.c (from rev 1187, trunk/libbsd/bsd_getopt.c)

Copied: trunk/libbsd/src/err.c (from rev 1187, trunk/libbsd/err.c)

Copied: trunk/libbsd/src/fgetln.c (from rev 1187, trunk/libbsd/fgetln.c)

Copied: trunk/libbsd/src/fmtcheck.c (from rev 1187, trunk/libbsd/fmtcheck.c)

Copied: trunk/libbsd/src/inet_net_pton.c (from rev 1187, 
trunk/libbsd/inet_net_pton.c)

Copied: trunk/libbsd/src/md5.copyright (from rev 1187, 
trunk/libbsd/md5.copyright)

Copied: trunk/libbsd/src/md5c.c (from rev 1187, trunk/libbsd/md5c.c)

Copied: trunk/libbsd/src/strlcat.c (from rev 1187, trunk/libbsd/strlcat.c)

Copied: trunk/libbsd/src/strlcpy.c (from rev 1187, trunk/libbsd/strlcpy.c)

Deleted: trunk/libbsd/strlcat.c
===================================================================
--- trunk/libbsd/strlcat.c      2006-02-14 05:33:38 UTC (rev 1192)
+++ trunk/libbsd/strlcat.c      2006-02-14 05:39:29 UTC (rev 1193)
@@ -1,74 +0,0 @@
-/*     $OpenBSD: strlcat.c,v 1.2 1999/06/17 16:28:58 millert Exp $     */
-
-/*
- * Copyright (c) 1998 Todd C. Miller <[EMAIL PROTECTED]>
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- *    notice, this list of conditions and the following disclaimer.
- * 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.
- * 3. The name of the author may not be used to endorse or promote products
- *    derived from this software without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED ``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 AUTHOR 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.
- */
-
-#if defined(LIBC_SCCS) && !defined(lint)
-static char *rcsid = "$OpenBSD: strlcat.c,v 1.2 1999/06/17 16:28:58 millert 
Exp $");
-#endif /* LIBC_SCCS and not lint */
-#include <sys/cdefs.h>
-
-#include <sys/types.h>
-#include <string.h>
-
-/*
- * Appends src to string dst of size siz (unlike strncat, siz is the
- * full size of dst, not space left).  At most siz-1 characters
- * will be copied.  Always NUL terminates (unless siz <= strlen(dst)).
- * Returns strlen(src) + MIN(siz, strlen(initial dst)).
- * If retval >= siz, truncation occurred.
- */
-size_t
-strlcat(dst, src, siz)
-       char *dst;
-       const char *src;
-       size_t siz;
-{
-       char *d = dst;
-       const char *s = src;
-       size_t n = siz;
-       size_t dlen;
-
-       /* Find the end of dst and adjust bytes left but don't go past end */
-       while (n-- != 0 && *d != '\0')
-               d++;
-       dlen = d - dst;
-       n = siz - dlen;
-
-       if (n == 0)
-               return(dlen + strlen(s));
-       while (*s != '\0') {
-               if (n != 1) {
-                       *d++ = *s;
-                       n--;
-               }
-               s++;
-       }
-       *d = '\0';
-
-       return(dlen + (s - src));       /* count does not include NUL */
-}

Deleted: trunk/libbsd/strlcpy.c
===================================================================
--- trunk/libbsd/strlcpy.c      2006-02-14 05:33:38 UTC (rev 1192)
+++ trunk/libbsd/strlcpy.c      2006-02-14 05:39:29 UTC (rev 1193)
@@ -1,69 +0,0 @@
-/*     $OpenBSD: strlcpy.c,v 1.4 1999/05/01 18:56:41 millert Exp $     */
-
-/*
- * Copyright (c) 1998 Todd C. Miller <[EMAIL PROTECTED]>
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- *    notice, this list of conditions and the following disclaimer.
- * 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.
- * 3. The name of the author may not be used to endorse or promote products
- *    derived from this software without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED ``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 AUTHOR 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.
- */
-
-#if defined(LIBC_SCCS) && !defined(lint)
-static char *rcsid = "$OpenBSD: strlcpy.c,v 1.4 1999/05/01 18:56:41 millert 
Exp $");
-#endif /* LIBC_SCCS and not lint */
-#include <sys/cdefs.h>
-
-#include <sys/types.h>
-#include <string.h>
-
-/*
- * Copy src to string dst of size siz.  At most siz-1 characters
- * will be copied.  Always NUL terminates (unless siz == 0).
- * Returns strlen(src); if retval >= siz, truncation occurred.
- */
-size_t strlcpy(dst, src, siz)
-       char *dst;
-       const char *src;
-       size_t siz;
-{
-       char *d = dst;
-       const char *s = src;
-       size_t n = siz;
-
-       /* Copy as many bytes as will fit */
-       if (n != 0 && --n != 0) {
-               do {
-                       if ((*d++ = *s++) == 0)
-                               break;
-               } while (--n != 0);
-       }
-
-       /* Not enough room in dst, add NUL and traverse rest of src */
-       if (n == 0) {
-               if (siz != 0)
-                       *d = '\0';              /* NUL-terminate dst */
-               while (*s++)
-                       ;
-       }
-
-       return(s - src - 1);    /* count does not include NUL */
-}


-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]

Reply via email to