Merge branch 'org.openembedded.dev' of git@git.openembedded.net:openembedded into...
authorCliff Brake <cbrake@bec-systems.com>
Mon, 26 Jan 2009 19:44:44 +0000 (14:44 -0500)
committerCliff Brake <cbrake@bec-systems.com>
Mon, 26 Jan 2009 19:44:44 +0000 (14:44 -0500)
packages/cwiid/cwiid_0.6.00.bb
packages/krb/files/fix-uclibc-ruserpass-collision.patch [new file with mode: 0644]
packages/krb/krb5_1.6.3.bb
packages/uclibc/uclibc-0.9.30/n1200/uClibc.machine [new file with mode: 0644]

index c35676e..2f7f93d 100644 (file)
@@ -1,5 +1,6 @@
 DESCRIPTION = "wiimote library + tools"
 LICENSE = "GPLv2"
+HOMEPAGE = "http://abstrakraft.org/cwiid/"
 
 PR = "r0"
 
diff --git a/packages/krb/files/fix-uclibc-ruserpass-collision.patch b/packages/krb/files/fix-uclibc-ruserpass-collision.patch
new file mode 100644 (file)
index 0000000..b98baf9
--- /dev/null
@@ -0,0 +1,673 @@
+diff -urN src.old//appl/gssftp/ftp/ftp.c src//appl/gssftp/ftp/ftp.c
+--- src.old//appl/gssftp/ftp/ftp.c     2006-10-15 09:43:30.000000000 +0100
++++ src//appl/gssftp/ftp/ftp.c 2009-01-26 18:55:18.300386663 +0000
+@@ -327,7 +327,7 @@
+       int n, aflag = 0;
+       l_user = pass = l_acct = 0;
+-      if (ruserpass(host, &l_user, &pass, &l_acct) < 0) {
++      if (rkuserpass(host, &l_user, &pass, &l_acct) < 0) {
+               code = -1;
+               return(0);
+       }
+diff -urN src.old//appl/gssftp/ftp/ftp_var.h src//appl/gssftp/ftp/ftp_var.h
+--- src.old//appl/gssftp/ftp/ftp_var.h 2003-06-16 20:02:01.000000000 +0100
++++ src//appl/gssftp/ftp/ftp_var.h     2009-01-26 18:55:30.484695949 +0000
+@@ -270,8 +270,8 @@
+ struct cmd *getcmd (char *);
+-/* ruserpass.c */
+-int ruserpass (char *, char **, char **, char **);
++/* rkuserpass.c */
++int rkuserpass (char *, char **, char **, char **);
+ /* radix.h */
+ int radix_encode (unsigned char *, unsigned char *, int *, int);
+diff -urN src.old//appl/gssftp/ftp/Makefile.in src//appl/gssftp/ftp/Makefile.in
+--- src.old//appl/gssftp/ftp/Makefile.in       2006-12-19 00:12:32.000000000 +0000
++++ src//appl/gssftp/ftp/Makefile.in   2009-01-26 18:55:57.322361169 +0000
+@@ -12,14 +12,14 @@
+ SRCS  = $(srcdir)/cmds.c $(srcdir)/cmdtab.c $(srcdir)/domacro.c \
+         $(srcdir)/ftp.c $(srcdir)/getpass.c $(srcdir)/glob.c \
+         $(srcdir)/main.c $(srcdir)/radix.c \
+-        $(srcdir)/ruserpass.c $(srcdir)/secure.c 
++        $(srcdir)/rkuserpass.c $(srcdir)/secure.c 
+ OBJS  = $(OUTPRE)cmds.$(OBJEXT) $(OUTPRE)cmdtab.$(OBJEXT) \
+         $(OUTPRE)domacro.$(OBJEXT) $(OUTPRE)ftp.$(OBJEXT) \
+         $(OUTPRE)getpass.$(OBJEXT) $(OUTPRE)glob.$(OBJEXT) \
+         $(OUTPRE)main.$(OBJEXT) $(OUTPRE)radix.$(OBJEXT) \
+-        $(OUTPRE)ruserpass.$(OBJEXT) $(OUTPRE)secure.$(OBJEXT)
++        $(OUTPRE)rkuserpass.$(OBJEXT) $(OUTPRE)secure.$(OBJEXT)
+ LOCALINCLUDES = -I$(srcdir)/.. -I$(srcdir) @KRB4_INCLUDES@
+@@ -54,7 +54,7 @@
+       done
+ ftp.o cmds.o main.o:  $(srcdir)/../arpa/ftp.h
+-ftp.o cmds.o cmdtab.o domacro.o main.o ruserpass.o: $(srcdir)/ftp_var.h 
++ftp.o cmds.o cmdtab.o domacro.o main.o rkuserpass.o: $(srcdir)/ftp_var.h 
+ secure.o: secure.h
+ cmds.o: $(srcdir)/cmds.c
+@@ -64,7 +64,7 @@
+ glob.o: $(srcdir)/glob.c
+ main.o: $(srcdir)/main.c
+ pclose.o: $(srcdir)/pclose.c
+-ruserpass.o: $(srcdir)/ruserpass.c
++rkuserpass.o: $(srcdir)/rkuserpass.c
+ domacro.o: $(srcdir)/domacro.c
+ radix.o: $(srcdir)/radix.c
+ secure.o: $(srcdir)/secure.c
+@@ -96,7 +96,7 @@
+   $(SRCTOP)/include/port-sockets.h $(srcdir)/../arpa/ftp.h \
+   ftp_var.h main.c
+ $(OUTPRE)radix.$(OBJEXT): ftp_var.h radix.c
+-$(OUTPRE)ruserpass.$(OBJEXT): ftp_var.h ruserpass.c
++$(OUTPRE)rkuserpass.$(OBJEXT): ftp_var.h rkuserpass.c
+ $(OUTPRE)secure.$(OBJEXT): $(BUILDTOP)/include/autoconf.h \
+   $(BUILDTOP)/include/gssapi/gssapi.h $(BUILDTOP)/include/gssapi/gssapi_generic.h \
+   $(KRB_ERR_H_DEP) $(BUILDTOP)/include/profile.h $(COM_ERR_DEPS) \
+diff -urN src.old//appl/gssftp/ftp/rkuserpass.c src//appl/gssftp/ftp/rkuserpass.c
+--- src.old//appl/gssftp/ftp/rkuserpass.c      1970-01-01 01:00:00.000000000 +0100
++++ src//appl/gssftp/ftp/rkuserpass.c  2009-01-26 18:54:57.899256052 +0000
+@@ -0,0 +1,296 @@
++/*
++ * Copyright (c) 1985 Regents of the University of California.
++ * 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. All advertising materials mentioning features or use of this software
++ *    must display the following acknowledgement:
++ *    This product includes software developed by the University of
++ *    California, Berkeley and its contributors.
++ * 4. Neither the name of the University 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 REGENTS 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 REGENTS 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.
++ */
++
++#ifndef lint
++static char sccsid[] = "@(#)rkuserpass.c      5.3 (Berkeley) 3/1/91";
++#endif /* not lint */
++
++#include <sys/types.h>
++#include <stdio.h>
++#include <string.h>
++#ifdef HAVE_STDLIB_H
++#include <stdlib.h>
++#endif
++#ifdef HAVE_UNISTD_H
++#include <unistd.h>
++#endif
++#include <ctype.h>
++#include <sys/stat.h>
++#include <errno.h>
++#include "ftp_var.h"
++
++#ifdef _WIN32
++#include <win-mac.h>
++#endif
++
++#ifndef MAXHOSTNAMELEN
++#define MAXHOSTNAMELEN 64
++#endif
++
++static int token (void);
++static        FILE *cfile;
++
++#define       DEFAULT 1
++#define       LOGIN   2
++#define       PASSWD  3
++#define       ACCOUNT 4
++#define MACDEF  5
++#define       ID      10
++#define       MACH    11
++
++static char tokval[100];
++
++static struct toktab {
++      char *tokstr;
++      int tval;
++} toktab[]= {
++      { "default",    DEFAULT },
++      { "login",      LOGIN },
++      { "password",   PASSWD },
++      { "passwd",     PASSWD },
++      { "account",    ACCOUNT },
++      { "machine",    MACH },
++      { "macdef",     MACDEF },
++      { NULL,         0 }
++};
++
++
++static int
++token()
++{
++      char *cp;
++      int c;
++      struct toktab *t;
++
++      if (feof(cfile))
++              return (0);
++      while ((c = getc(cfile)) != EOF &&
++          (c == '\n' || c == '\t' || c == ' ' || c == ','))
++              continue;
++      if (c == EOF)
++              return (0);
++      cp = tokval;
++      if (c == '"') {
++              while ((c = getc(cfile)) != EOF && c != '"') {
++                      if (c == '\\')
++                              c = getc(cfile);
++                      *cp++ = c;
++              }
++      } else {
++              *cp++ = c;
++              while ((c = getc(cfile)) != EOF
++                  && c != '\n' && c != '\t' && c != ' ' && c != ',') {
++                      if (c == '\\')
++                              c = getc(cfile);
++                      *cp++ = c;
++              }
++      }
++      *cp = 0;
++      if (tokval[0] == 0)
++              return (0);
++      for (t = toktab; t->tokstr; t++)
++              if (!strcmp(t->tokstr, tokval))
++                      return (t->tval);
++      return (ID);
++}
++
++int 
++rkuserpass(host, aname, apass, aacct)
++      char *host, **aname, **apass, **aacct;
++{
++      char *hdir, buf[FTP_BUFSIZ], *tmp;
++      char myname[MAXHOSTNAMELEN + 1], *mydomain;
++      int t, i, c, usedefault = 0;
++      struct stat stb;
++
++      hdir = getenv("HOME");
++      if (hdir == NULL)
++              hdir = ".";
++      (void) sprintf(buf, "%s/.netrc", hdir);
++      cfile = fopen(buf, "r");
++      if (cfile == NULL) {
++              if (errno != ENOENT)
++                      perror(buf);
++              return(0);
++      }
++      if (gethostname(myname, sizeof(myname)) < 0)
++              myname[0] = '\0';
++      if ((mydomain = strchr(myname, '.')) == NULL)
++              mydomain = "";
++next:
++      while ((t = token())) switch(t) {
++
++      case DEFAULT:
++              usedefault = 1;
++              /* FALL THROUGH */
++
++      case MACH:
++              if (!usedefault) {
++                      if (token() != ID)
++                              continue;
++                      /*
++                       * Allow match either for user's input host name
++                       * or official hostname.  Also allow match of 
++                       * incompletely-specified host in local domain.
++                       */
++                      if (strcasecmp(host, tokval) == 0)
++                              goto match;
++                      if (strcasecmp(hostname, tokval) == 0)
++                              goto match;
++                      if ((tmp = strchr(hostname, '.')) != NULL &&
++                          strcasecmp(tmp, mydomain) == 0 &&
++                          strncasecmp(hostname, tokval,
++                                      (unsigned) (tmp-hostname)) == 0 &&
++                          tokval[tmp - hostname] == '\0')
++                              goto match;
++                      if ((tmp = strchr(host, '.')) != NULL &&
++                          strcasecmp(tmp, mydomain) == 0 &&
++                          strncasecmp(host, tokval,
++                                      (unsigned ) (tmp - host)) == 0 &&
++                          tokval[tmp - host] == '\0')
++                              goto match;
++                      continue;
++              }
++      match:
++              while ((t = token()) && t != MACH && t != DEFAULT) switch(t) {
++
++              case LOGIN:
++                      if (token()) {
++                              if (*aname == 0) { 
++                                      *aname = malloc((unsigned) strlen(tokval) + 1);
++                                      (void) strcpy(*aname, tokval);
++                              } else {
++                                      if (strcmp(*aname, tokval))
++                                              goto next;
++                              }
++                      }
++                      break;
++              case PASSWD:
++                      if (strcmp(*aname, "anonymous") &&
++                          fstat(fileno(cfile), &stb) >= 0 &&
++                          (stb.st_mode & 077) != 0) {
++      fprintf(stderr, "Error - .netrc file not correct mode.\n");
++      fprintf(stderr, "Remove password or correct mode.\n");
++                              goto bad;
++                      }
++                      if (token() && *apass == 0) {
++                              *apass = malloc((unsigned) strlen(tokval) + 1);
++                              (void) strcpy(*apass, tokval);
++                      }
++                      break;
++              case ACCOUNT:
++                      if (fstat(fileno(cfile), &stb) >= 0
++                          && (stb.st_mode & 077) != 0) {
++      fprintf(stderr, "Error - .netrc file not correct mode.\n");
++      fprintf(stderr, "Remove account or correct mode.\n");
++                              goto bad;
++                      }
++                      if (token() && *aacct == 0) {
++                              *aacct = malloc((unsigned) strlen(tokval) + 1);
++                              (void) strcpy(*aacct, tokval);
++                      }
++                      break;
++              case MACDEF:
++                      if (proxy) {
++                              (void) fclose(cfile);
++                              return(0);
++                      }
++                      while ((c = getc(cfile)) != EOF)
++                              if (c != ' ' && c != '\t')
++                                      break;
++                      if (c == EOF || c == '\n') {
++                              printf("Missing macdef name argument.\n");
++                              goto bad;
++                      }
++                      if (macnum == 16) {
++                              printf("Limit of 16 macros have already been defined\n");
++                              goto bad;
++                      }
++                      tmp = macros[macnum].mac_name;
++                      *tmp++ = c;
++                      for (i=0; i < 8 && (c=getc(cfile)) != EOF &&
++                          !isspace(c); ++i) {
++                              *tmp++ = c;
++                      }
++                      if (c == EOF) {
++                              printf("Macro definition missing null line terminator.\n");
++                              goto bad;
++                      }
++                      *tmp = '\0';
++                      if (c != '\n') {
++                              while ((c=getc(cfile)) != EOF && c != '\n');
++                      }
++                      if (c == EOF) {
++                              printf("Macro definition missing null line terminator.\n");
++                              goto bad;
++                      }
++                      if (macnum == 0) {
++                              macros[macnum].mac_start = macbuf;
++                      }
++                      else {
++                              macros[macnum].mac_start = macros[macnum-1].mac_end + 1;
++                      }
++                      tmp = macros[macnum].mac_start;
++                      while (tmp != macbuf + 4096) {
++                              if ((c=getc(cfile)) == EOF) {
++                              printf("Macro definition missing null line terminator.\n");
++                                      goto bad;
++                              }
++                              *tmp = c;
++                              if (*tmp == '\n') {
++                                      if (*(tmp-1) == '\0') {
++                                         macros[macnum++].mac_end = tmp - 1;
++                                         break;
++                                      }
++                                      *tmp = '\0';
++                              }
++                              tmp++;
++                      }
++                      if (tmp == macbuf + 4096) {
++                              printf("4K macro buffer exceeded\n");
++                              goto bad;
++                      }
++                      break;
++              default:
++      fprintf(stderr, "Unknown .netrc keyword %s\n", tokval);
++                      break;
++              }
++              goto done;
++      }
++done:
++      (void) fclose(cfile);
++      return(0);
++bad:
++      (void) fclose(cfile);
++      return(-1);
++}
+diff -urN src.old//appl/gssftp/ftp/ruserpass.c src//appl/gssftp/ftp/ruserpass.c
+--- src.old//appl/gssftp/ftp/ruserpass.c       2001-10-10 04:18:22.000000000 +0100
++++ src//appl/gssftp/ftp/ruserpass.c   1970-01-01 01:00:00.000000000 +0100
+@@ -1,296 +0,0 @@
+-/*
+- * Copyright (c) 1985 Regents of the University of California.
+- * 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. All advertising materials mentioning features or use of this software
+- *    must display the following acknowledgement:
+- *    This product includes software developed by the University of
+- *    California, Berkeley and its contributors.
+- * 4. Neither the name of the University 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 REGENTS 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 REGENTS 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.
+- */
+-
+-#ifndef lint
+-static char sccsid[] = "@(#)ruserpass.c       5.3 (Berkeley) 3/1/91";
+-#endif /* not lint */
+-
+-#include <sys/types.h>
+-#include <stdio.h>
+-#include <string.h>
+-#ifdef HAVE_STDLIB_H
+-#include <stdlib.h>
+-#endif
+-#ifdef HAVE_UNISTD_H
+-#include <unistd.h>
+-#endif
+-#include <ctype.h>
+-#include <sys/stat.h>
+-#include <errno.h>
+-#include "ftp_var.h"
+-
+-#ifdef _WIN32
+-#include <win-mac.h>
+-#endif
+-
+-#ifndef MAXHOSTNAMELEN
+-#define MAXHOSTNAMELEN 64
+-#endif
+-
+-static int token (void);
+-static        FILE *cfile;
+-
+-#define       DEFAULT 1
+-#define       LOGIN   2
+-#define       PASSWD  3
+-#define       ACCOUNT 4
+-#define MACDEF  5
+-#define       ID      10
+-#define       MACH    11
+-
+-static char tokval[100];
+-
+-static struct toktab {
+-      char *tokstr;
+-      int tval;
+-} toktab[]= {
+-      { "default",    DEFAULT },
+-      { "login",      LOGIN },
+-      { "password",   PASSWD },
+-      { "passwd",     PASSWD },
+-      { "account",    ACCOUNT },
+-      { "machine",    MACH },
+-      { "macdef",     MACDEF },
+-      { NULL,         0 }
+-};
+-
+-
+-static int
+-token()
+-{
+-      char *cp;
+-      int c;
+-      struct toktab *t;
+-
+-      if (feof(cfile))
+-              return (0);
+-      while ((c = getc(cfile)) != EOF &&
+-          (c == '\n' || c == '\t' || c == ' ' || c == ','))
+-              continue;
+-      if (c == EOF)
+-              return (0);
+-      cp = tokval;
+-      if (c == '"') {
+-              while ((c = getc(cfile)) != EOF && c != '"') {
+-                      if (c == '\\')
+-                              c = getc(cfile);
+-                      *cp++ = c;
+-              }
+-      } else {
+-              *cp++ = c;
+-              while ((c = getc(cfile)) != EOF
+-                  && c != '\n' && c != '\t' && c != ' ' && c != ',') {
+-                      if (c == '\\')
+-                              c = getc(cfile);
+-                      *cp++ = c;
+-              }
+-      }
+-      *cp = 0;
+-      if (tokval[0] == 0)
+-              return (0);
+-      for (t = toktab; t->tokstr; t++)
+-              if (!strcmp(t->tokstr, tokval))
+-                      return (t->tval);
+-      return (ID);
+-}
+-
+-int 
+-ruserpass(host, aname, apass, aacct)
+-      char *host, **aname, **apass, **aacct;
+-{
+-      char *hdir, buf[FTP_BUFSIZ], *tmp;
+-      char myname[MAXHOSTNAMELEN + 1], *mydomain;
+-      int t, i, c, usedefault = 0;
+-      struct stat stb;
+-
+-      hdir = getenv("HOME");
+-      if (hdir == NULL)
+-              hdir = ".";
+-      (void) sprintf(buf, "%s/.netrc", hdir);
+-      cfile = fopen(buf, "r");
+-      if (cfile == NULL) {
+-              if (errno != ENOENT)
+-                      perror(buf);
+-              return(0);
+-      }
+-      if (gethostname(myname, sizeof(myname)) < 0)
+-              myname[0] = '\0';
+-      if ((mydomain = strchr(myname, '.')) == NULL)
+-              mydomain = "";
+-next:
+-      while ((t = token())) switch(t) {
+-
+-      case DEFAULT:
+-              usedefault = 1;
+-              /* FALL THROUGH */
+-
+-      case MACH:
+-              if (!usedefault) {
+-                      if (token() != ID)
+-                              continue;
+-                      /*
+-                       * Allow match either for user's input host name
+-                       * or official hostname.  Also allow match of 
+-                       * incompletely-specified host in local domain.
+-                       */
+-                      if (strcasecmp(host, tokval) == 0)
+-                              goto match;
+-                      if (strcasecmp(hostname, tokval) == 0)
+-                              goto match;
+-                      if ((tmp = strchr(hostname, '.')) != NULL &&
+-                          strcasecmp(tmp, mydomain) == 0 &&
+-                          strncasecmp(hostname, tokval,
+-                                      (unsigned) (tmp-hostname)) == 0 &&
+-                          tokval[tmp - hostname] == '\0')
+-                              goto match;
+-                      if ((tmp = strchr(host, '.')) != NULL &&
+-                          strcasecmp(tmp, mydomain) == 0 &&
+-                          strncasecmp(host, tokval,
+-                                      (unsigned ) (tmp - host)) == 0 &&
+-                          tokval[tmp - host] == '\0')
+-                              goto match;
+-                      continue;
+-              }
+-      match:
+-              while ((t = token()) && t != MACH && t != DEFAULT) switch(t) {
+-
+-              case LOGIN:
+-                      if (token()) {
+-                              if (*aname == 0) { 
+-                                      *aname = malloc((unsigned) strlen(tokval) + 1);
+-                                      (void) strcpy(*aname, tokval);
+-                              } else {
+-                                      if (strcmp(*aname, tokval))
+-                                              goto next;
+-                              }
+-                      }
+-                      break;
+-              case PASSWD:
+-                      if (strcmp(*aname, "anonymous") &&
+-                          fstat(fileno(cfile), &stb) >= 0 &&
+-                          (stb.st_mode & 077) != 0) {
+-      fprintf(stderr, "Error - .netrc file not correct mode.\n");
+-      fprintf(stderr, "Remove password or correct mode.\n");
+-                              goto bad;
+-                      }
+-                      if (token() && *apass == 0) {
+-                              *apass = malloc((unsigned) strlen(tokval) + 1);
+-                              (void) strcpy(*apass, tokval);
+-                      }
+-                      break;
+-              case ACCOUNT:
+-                      if (fstat(fileno(cfile), &stb) >= 0
+-                          && (stb.st_mode & 077) != 0) {
+-      fprintf(stderr, "Error - .netrc file not correct mode.\n");
+-      fprintf(stderr, "Remove account or correct mode.\n");
+-                              goto bad;
+-                      }
+-                      if (token() && *aacct == 0) {
+-                              *aacct = malloc((unsigned) strlen(tokval) + 1);
+-                              (void) strcpy(*aacct, tokval);
+-                      }
+-                      break;
+-              case MACDEF:
+-                      if (proxy) {
+-                              (void) fclose(cfile);
+-                              return(0);
+-                      }
+-                      while ((c = getc(cfile)) != EOF)
+-                              if (c != ' ' && c != '\t')
+-                                      break;
+-                      if (c == EOF || c == '\n') {
+-                              printf("Missing macdef name argument.\n");
+-                              goto bad;
+-                      }
+-                      if (macnum == 16) {
+-                              printf("Limit of 16 macros have already been defined\n");
+-                              goto bad;
+-                      }
+-                      tmp = macros[macnum].mac_name;
+-                      *tmp++ = c;
+-                      for (i=0; i < 8 && (c=getc(cfile)) != EOF &&
+-                          !isspace(c); ++i) {
+-                              *tmp++ = c;
+-                      }
+-                      if (c == EOF) {
+-                              printf("Macro definition missing null line terminator.\n");
+-                              goto bad;
+-                      }
+-                      *tmp = '\0';
+-                      if (c != '\n') {
+-                              while ((c=getc(cfile)) != EOF && c != '\n');
+-                      }
+-                      if (c == EOF) {
+-                              printf("Macro definition missing null line terminator.\n");
+-                              goto bad;
+-                      }
+-                      if (macnum == 0) {
+-                              macros[macnum].mac_start = macbuf;
+-                      }
+-                      else {
+-                              macros[macnum].mac_start = macros[macnum-1].mac_end + 1;
+-                      }
+-                      tmp = macros[macnum].mac_start;
+-                      while (tmp != macbuf + 4096) {
+-                              if ((c=getc(cfile)) == EOF) {
+-                              printf("Macro definition missing null line terminator.\n");
+-                                      goto bad;
+-                              }
+-                              *tmp = c;
+-                              if (*tmp == '\n') {
+-                                      if (*(tmp-1) == '\0') {
+-                                         macros[macnum++].mac_end = tmp - 1;
+-                                         break;
+-                                      }
+-                                      *tmp = '\0';
+-                              }
+-                              tmp++;
+-                      }
+-                      if (tmp == macbuf + 4096) {
+-                              printf("4K macro buffer exceeded\n");
+-                              goto bad;
+-                      }
+-                      break;
+-              default:
+-      fprintf(stderr, "Unknown .netrc keyword %s\n", tokval);
+-                      break;
+-              }
+-              goto done;
+-      }
+-done:
+-      (void) fclose(cfile);
+-      return(0);
+-bad:
+-      (void) fclose(cfile);
+-      return(-1);
+-}
index c77c606..b13e5f1 100644 (file)
@@ -1,19 +1,20 @@
 DESCRIPTION = "A network authentication protocol"
 HOMEPAGE = "http://web.mit.edu/Kerberos/"
 SECTION = "console/network"
-PR = "r3"
+PR = "r4"
 LICENSE = "MIT"
 DEPENDS = "perl-native ncurses e2fsprogs-libs"
 
 inherit autotools binconfig
 
-SRC_URI = "http://web.mit.edu/kerberos/dist/krb5/1.6/krb5-1.6.3-signed.tar"
+SRC_URI = "http://web.mit.edu/kerberos/dist/krb5/1.6/krb5-1.6.3-signed.tar \
+           file://fix-uclibc-ruserpass-collision.patch"
 S = "${WORKDIR}/${PN}-${PV}/src/"
 
 # Will clean this up...
 EXTRA_OECONF += " krb5_cv_attr_constructor_destructor=yes ac_cv_func_regcomp=yes \
-                    ac_cv_printf_positional=yes ac_cv_file__etc_environment=yes \
-                    ac_cv_file__etc_TIMEZONE=no --with-system-et"
+                  ac_cv_printf_positional=yes ac_cv_file__etc_environment=yes \
+                  ac_cv_file__etc_TIMEZONE=no --with-system-et"
 CFLAGS_append += "-DDESTRUCTOR_ATTR_WORKS=1 -I${STAGING_INCDIR}/et"
 LDFLAGS_append += "-lpthread"
 
@@ -21,6 +22,7 @@ FILES_${PN}-doc += /usr/share/examples
 
 do_configure() {
        tar xzf ${WORKDIR}/krb5-1.6.3.tar.gz -C ${WORKDIR}/
+       patch -p1 < ${WORKDIR}/fix-uclibc-ruserpass-collision.patch
        oe_runconf
 }
 
diff --git a/packages/uclibc/uclibc-0.9.30/n1200/uClibc.machine b/packages/uclibc/uclibc-0.9.30/n1200/uClibc.machine
new file mode 100644 (file)
index 0000000..23ca904
--- /dev/null
@@ -0,0 +1,53 @@
+#
+# Automatically generated make config: don't edit
+# Sun May 13 11:25:50 2007
+#
+# TARGET_alpha is not set
+# TARGET_arm is not set
+# TARGET_bfin is not set
+# TARGET_cris is not set
+# TARGET_e1 is not set
+# TARGET_frv is not set
+# TARGET_h8300 is not set
+# TARGET_hppa is not set
+# TARGET_i386 is not set
+# TARGET_i960 is not set
+# TARGET_ia64 is not set
+# TARGET_m68k is not set
+# TARGET_microblaze is not set
+# TARGET_mips is not set
+# TARGET_nios is not set
+# TARGET_nios2 is not set
+TARGET_powerpc=y
+# TARGET_sh is not set
+# TARGET_sh64 is not set
+# TARGET_sparc is not set
+# TARGET_v850 is not set
+# TARGET_vax is not set
+# TARGET_x86_64 is not set
+
+#
+# Target Architecture Features and Options
+#
+TARGET_ARCH="powerpc"
+FORCE_OPTIONS_FOR_ARCH=y
+CONFIG_CLASSIC=y
+# CONFIG_E500 is not set
+TARGET_SUBARCH="classic"
+
+#
+# Using ELF file format
+#
+ARCH_BIG_ENDIAN=y
+
+#
+# Using Big Endian
+#
+ARCH_HAS_MMU=y
+ARCH_USE_MMU=y
+UCLIBC_HAS_FLOATS=y
+UCLIBC_HAS_FPU=y
+DO_C99_MATH=y
+KERNEL_HEADERS="/stuff/build/tmp/cross/powerpc-angstrom-linux-uclibc/include"
+HAVE_DOT_CONFIG=y
+