--- cpio-2.6/src/userspec.c.orig Mon Jul 4 15:37:14 2005 +++ cpio-2.6/src/userspec.c Mon Jul 4 16:44:26 2005 @@ -19,6 +19,9 @@ #include +#ifdef __FreeBSD__ +#include +#else #ifdef __GNUC__ #define alloca __builtin_alloca #else @@ -32,6 +35,7 @@ #endif #endif #endif +#endif #include #include @@ -72,7 +76,7 @@ otherwise return 0. */ static int -isnumber (const char *str) +isnumberstring (const char *str) { for (; *str; str++) if (!isdigit (*str)) @@ -136,7 +140,7 @@ if (pwd == NULL) { - if (!isnumber (u)) + if (!isnumberstring (u)) error_msg = _("invalid user"); else { @@ -182,7 +186,7 @@ grp = getgrnam (g); if (grp == NULL) { - if (!isnumber (g)) + if (!isnumberstring (g)) error_msg = _("invalid group"); else *gid = atoi (g); --- cpio-2.6/src/makepath.c.orig Mon Jul 4 16:44:55 2005 +++ cpio-2.6/src/makepath.c Mon Jul 4 16:45:31 2005 @@ -24,6 +24,8 @@ #include +#ifdef __FreeBSD__ +#else #ifdef __GNUC__ #define alloca __builtin_alloca #else @@ -34,6 +36,7 @@ #pragma alloca #else char *alloca (); +#endif #endif #endif #endif