diff options
-rw-r--r-- | ChangeLog | 8 | ||||
-rw-r--r-- | INSTALL | 8 | ||||
-rw-r--r-- | acconfig.h | 5 | ||||
-rw-r--r-- | configure.ac | 86 | ||||
-rw-r--r-- | openbsd-compat/fake-regex.h | 106 |
5 files changed, 10 insertions, 203 deletions
@@ -1,4 +1,8 @@ | |||
1 | 20011205 | 1 | 20011207 |
2 | - (bal) PCRE no longer required. Banished from the source along with | ||
3 | fake-regex.h | ||
4 | |||
5 | 20011206 | ||
2 | - (bal) OpenBSD CVS Sync | 6 | - (bal) OpenBSD CVS Sync |
3 | - deraadt@cvs.openbsd.org 2001/11/14 20:45:08 | 7 | - deraadt@cvs.openbsd.org 2001/11/14 20:45:08 |
4 | [sshd.c] | 8 | [sshd.c] |
@@ -6994,4 +6998,4 @@ | |||
6994 | - Wrote replacements for strlcpy and mkdtemp | 6998 | - Wrote replacements for strlcpy and mkdtemp |
6995 | - Released 1.0pre1 | 6999 | - Released 1.0pre1 |
6996 | 7000 | ||
6997 | $Id: ChangeLog,v 1.1687 2001/12/06 18:22:17 mouring Exp $ | 7001 | $Id: ChangeLog,v 1.1688 2001/12/07 17:20:47 mouring Exp $ |
@@ -51,12 +51,6 @@ ftp://ftp.gnu.org/gnu/make/ | |||
51 | OpenSSH has only been tested with GNU make. It may work with other | 51 | OpenSSH has only been tested with GNU make. It may work with other |
52 | 'make' programs, but you are on your own. | 52 | 'make' programs, but you are on your own. |
53 | 53 | ||
54 | PCRE (PERL-compatible Regular Expression library): | ||
55 | ftp://ftp.cus.cam.ac.uk/pub/software/programing/pcre/ | ||
56 | |||
57 | Most platforms do not require this. However older Unices may not have a | ||
58 | posix regex library. PCRE provides a POSIX interface. | ||
59 | |||
60 | S/Key Libraries: | 54 | S/Key Libraries: |
61 | http://www.sparc.spb.su/solaris/skey/ | 55 | http://www.sparc.spb.su/solaris/skey/ |
62 | 56 | ||
@@ -230,4 +224,4 @@ Please refer to the "reporting bugs" section of the webpage at | |||
230 | http://www.openssh.com/ | 224 | http://www.openssh.com/ |
231 | 225 | ||
232 | 226 | ||
233 | $Id: INSTALL,v 1.46 2001/06/29 12:39:24 mouring Exp $ | 227 | $Id: INSTALL,v 1.47 2001/12/07 17:20:48 mouring Exp $ |
diff --git a/acconfig.h b/acconfig.h index 1e3b80e68..766a92687 100644 --- a/acconfig.h +++ b/acconfig.h | |||
@@ -1,4 +1,4 @@ | |||
1 | /* $Id: acconfig.h,v 1.119 2001/11/03 19:09:33 tim Exp $ */ | 1 | /* $Id: acconfig.h,v 1.120 2001/12/07 17:20:48 mouring Exp $ */ |
2 | 2 | ||
3 | #ifndef _CONFIG_H | 3 | #ifndef _CONFIG_H |
4 | #define _CONFIG_H | 4 | #define _CONFIG_H |
@@ -59,9 +59,6 @@ | |||
59 | /* Define if you are on Cygwin */ | 59 | /* Define if you are on Cygwin */ |
60 | #undef HAVE_CYGWIN | 60 | #undef HAVE_CYGWIN |
61 | 61 | ||
62 | /* Define if you lack native POSIX regex and you are using PCRE */ | ||
63 | #undef HAVE_LIBPCRE | ||
64 | |||
65 | /* Define if you have a broken realpath. */ | 62 | /* Define if you have a broken realpath. */ |
66 | #undef BROKEN_REALPATH | 63 | #undef BROKEN_REALPATH |
67 | 64 | ||
diff --git a/configure.ac b/configure.ac index d86a2062d..ae2b6a7a5 100644 --- a/configure.ac +++ b/configure.ac | |||
@@ -1,4 +1,4 @@ | |||
1 | # $Id: configure.ac,v 1.5 2001/11/27 01:19:43 tim Exp $ | 1 | # $Id: configure.ac,v 1.6 2001/12/07 17:20:48 mouring Exp $ |
2 | 2 | ||
3 | AC_INIT | 3 | AC_INIT |
4 | AC_CONFIG_SRCDIR([ssh.c]) | 4 | AC_CONFIG_SRCDIR([ssh.c]) |
@@ -317,46 +317,6 @@ AC_ARG_WITH(libs, | |||
317 | ] | 317 | ] |
318 | ) | 318 | ) |
319 | 319 | ||
320 | AC_ARG_WITH(pcre, | ||
321 | [ --with-pcre[[=PATH]] Override built in regex library with pcre | ||
322 | (optionally in PATH)], | ||
323 | [ | ||
324 | case "$withval" in | ||
325 | no) ;; | ||
326 | *) | ||
327 | if test "x$withval" != "xyes"; then | ||
328 | if test -d "$withval/lib"; then | ||
329 | if test -n "${need_dash_r}"; then | ||
330 | LDFLAGS="-L${withval}/lib -R${withval}/lib ${LDFLAGS}" | ||
331 | else | ||
332 | LDFLAGS="-L${withval}/lib ${LDFLAGS}" | ||
333 | fi | ||
334 | else | ||
335 | if test -n "${need_dash_r}"; then | ||
336 | LDFLAGS="-L${withval} -R${withval} ${LDFLAGS}" | ||
337 | else | ||
338 | LDFLAGS="-L${withval} ${LDFLAGS}" | ||
339 | fi | ||
340 | fi | ||
341 | if test -d "$withval/include"; then | ||
342 | CPPFLAGS="-I${withval}/include ${CPPFLAGS}" | ||
343 | else | ||
344 | CPPFLAGS="-I${withval} ${CPPFLAGS}" | ||
345 | fi | ||
346 | fi | ||
347 | |||
348 | AC_CHECK_HEADER(pcreposix.h, | ||
349 | AC_CHECK_LIB(pcre, pcre_info,[ | ||
350 | AC_DEFINE(HAVE_LIBPCRE) | ||
351 | LIBS="$LIBS -lpcreposix -lpcre" | ||
352 | no_comp_check=yes], | ||
353 | AC_MSG_ERROR([*** unable to locate pcre library ***])), | ||
354 | AC_MSG_ERROR([*** unable to locate pcreposix.h include file ***])) | ||
355 | ;; | ||
356 | esac | ||
357 | ] | ||
358 | ) | ||
359 | |||
360 | # Checks for libraries. | 320 | # Checks for libraries. |
361 | AC_CHECK_FUNC(yp_match, , AC_CHECK_LIB(nsl, yp_match)) | 321 | AC_CHECK_FUNC(yp_match, , AC_CHECK_LIB(nsl, yp_match)) |
362 | AC_CHECK_FUNC(setsockopt, , AC_CHECK_LIB(socket, setsockopt)) | 322 | AC_CHECK_FUNC(setsockopt, , AC_CHECK_LIB(socket, setsockopt)) |
@@ -398,48 +358,6 @@ AC_ARG_WITH(zlib, | |||
398 | 358 | ||
399 | AC_CHECK_LIB(z, deflate, ,AC_MSG_ERROR([*** zlib missing - please install first or check config.log ***])) | 359 | AC_CHECK_LIB(z, deflate, ,AC_MSG_ERROR([*** zlib missing - please install first or check config.log ***])) |
400 | 360 | ||
401 | # We don't want to check if we did an pcre override. | ||
402 | if test -z "$no_comp_check" ; then | ||
403 | AC_CHECK_FUNC(regcomp, | ||
404 | [ | ||
405 | AC_CHECK_FUNC(regsub, | ||
406 | [ | ||
407 | has_regcomp=no | ||
408 | ], | ||
409 | [ | ||
410 | AC_DEFINE(HAVE_REGCOMP) | ||
411 | has_regcomp=yes | ||
412 | ] | ||
413 | ) | ||
414 | ], | ||
415 | [ | ||
416 | has_regcomp=no | ||
417 | ] | ||
418 | ) | ||
419 | # Either regcomp wasn't defined or regsub is defined (which means | ||
420 | # that the libc regex is probably an old non-POSIX implementation. | ||
421 | # Now check for -lregex and -lpcreposix to find some usable regex | ||
422 | # implementation. | ||
423 | if test "$has_regcomp" = "no" ; then | ||
424 | AC_CHECK_LIB(regex, regcomp, | ||
425 | [ | ||
426 | AC_DEFINE(HAVE_REGCOMP) | ||
427 | LIBS="$LIBS -lregex" | ||
428 | ], | ||
429 | [ | ||
430 | AC_CHECK_LIB(pcre, pcre_info, | ||
431 | [ | ||
432 | AC_DEFINE(HAVE_LIBPCRE) | ||
433 | LIBS="$LIBS -lpcreposix -lpcre" | ||
434 | ], | ||
435 | [ | ||
436 | AC_MSG_ERROR([*** No regex library found.]) | ||
437 | ]) | ||
438 | ] | ||
439 | ) | ||
440 | fi | ||
441 | fi | ||
442 | |||
443 | dnl UnixWare 2.x | 361 | dnl UnixWare 2.x |
444 | AC_CHECK_FUNC(strcasecmp, | 362 | AC_CHECK_FUNC(strcasecmp, |
445 | [], [ AC_CHECK_LIB(resolv, strcasecmp, LIBS="$LIBS -lresolv") ] | 363 | [], [ AC_CHECK_LIB(resolv, strcasecmp, LIBS="$LIBS -lresolv") ] |
@@ -459,7 +377,7 @@ AC_FUNC_STRFTIME | |||
459 | AC_CHECK_HEADERS(bstring.h crypt.h endian.h floatingpoint.h \ | 377 | AC_CHECK_HEADERS(bstring.h crypt.h endian.h floatingpoint.h \ |
460 | getopt.h glob.h lastlog.h limits.h login.h \ | 378 | getopt.h glob.h lastlog.h limits.h login.h \ |
461 | login_cap.h maillock.h netdb.h netgroup.h \ | 379 | login_cap.h maillock.h netdb.h netgroup.h \ |
462 | netinet/in_systm.h paths.h poll.h pty.h regex.h \ | 380 | netinet/in_systm.h paths.h poll.h pty.h \ |
463 | security/pam_appl.h shadow.h stddef.h stdint.h \ | 381 | security/pam_appl.h shadow.h stddef.h stdint.h \ |
464 | strings.h sys/bitypes.h sys/bsdtty.h sys/cdefs.h \ | 382 | strings.h sys/bitypes.h sys/bsdtty.h sys/cdefs.h \ |
465 | sys/poll.h sys/queue.h sys/select.h sys/stat.h \ | 383 | sys/poll.h sys/queue.h sys/select.h sys/stat.h \ |
diff --git a/openbsd-compat/fake-regex.h b/openbsd-compat/fake-regex.h deleted file mode 100644 index 8f7f6eddd..000000000 --- a/openbsd-compat/fake-regex.h +++ /dev/null | |||
@@ -1,106 +0,0 @@ | |||
1 | /* $OpenBSD: regex.h,v 1.3 1997/09/21 10:45:48 niklas Exp $ */ | ||
2 | /* $NetBSD: regex.h,v 1.4.6.1 1996/06/10 18:57:07 explorer Exp $ */ | ||
3 | |||
4 | /*- | ||
5 | * Copyright (c) 1992 Henry Spencer. | ||
6 | * Copyright (c) 1992, 1993 | ||
7 | * The Regents of the University of California. All rights reserved. | ||
8 | * | ||
9 | * This code is derived from software contributed to Berkeley by | ||
10 | * Henry Spencer of the University of Toronto. | ||
11 | * | ||
12 | * Redistribution and use in source and binary forms, with or without | ||
13 | * modification, are permitted provided that the following conditions | ||
14 | * are met: | ||
15 | * 1. Redistributions of source code must retain the above copyright | ||
16 | * notice, this list of conditions and the following disclaimer. | ||
17 | * 2. Redistributions in binary form must reproduce the above copyright | ||
18 | * notice, this list of conditions and the following disclaimer in the | ||
19 | * documentation and/or other materials provided with the distribution. | ||
20 | * 3. All advertising materials mentioning features or use of this software | ||
21 | * must display the following acknowledgement: | ||
22 | * This product includes software developed by the University of | ||
23 | * California, Berkeley and its contributors. | ||
24 | * 4. Neither the name of the University nor the names of its contributors | ||
25 | * may be used to endorse or promote products derived from this software | ||
26 | * without specific prior written permission. | ||
27 | * | ||
28 | * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND | ||
29 | * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE | ||
30 | * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE | ||
31 | * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE | ||
32 | * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL | ||
33 | * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS | ||
34 | * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) | ||
35 | * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT | ||
36 | * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY | ||
37 | * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF | ||
38 | * SUCH DAMAGE. | ||
39 | * | ||
40 | * @(#)regex.h 8.1 (Berkeley) 6/2/93 | ||
41 | */ | ||
42 | |||
43 | #ifndef _REGEX_H_ | ||
44 | #define _REGEX_H_ | ||
45 | |||
46 | #include <sys/types.h> | ||
47 | |||
48 | /* types */ | ||
49 | typedef off_t regoff_t; | ||
50 | |||
51 | typedef struct { | ||
52 | int re_magic; | ||
53 | size_t re_nsub; /* number of parenthesized subexpressions */ | ||
54 | const char *re_endp; /* end pointer for REG_PEND */ | ||
55 | struct re_guts *re_g; /* none of your business :-) */ | ||
56 | } regex_t; | ||
57 | |||
58 | typedef struct { | ||
59 | regoff_t rm_so; /* start of match */ | ||
60 | regoff_t rm_eo; /* end of match */ | ||
61 | } regmatch_t; | ||
62 | |||
63 | /* regcomp() flags */ | ||
64 | #define REG_BASIC 0000 | ||
65 | #define REG_EXTENDED 0001 | ||
66 | #define REG_ICASE 0002 | ||
67 | #define REG_NOSUB 0004 | ||
68 | #define REG_NEWLINE 0010 | ||
69 | #define REG_NOSPEC 0020 | ||
70 | #define REG_PEND 0040 | ||
71 | #define REG_DUMP 0200 | ||
72 | |||
73 | /* regerror() flags */ | ||
74 | #define REG_NOMATCH 1 | ||
75 | #define REG_BADPAT 2 | ||
76 | #define REG_ECOLLATE 3 | ||
77 | #define REG_ECTYPE 4 | ||
78 | #define REG_EESCAPE 5 | ||
79 | #define REG_ESUBREG 6 | ||
80 | #define REG_EBRACK 7 | ||
81 | #define REG_EPAREN 8 | ||
82 | #define REG_EBRACE 9 | ||
83 | #define REG_BADBR 10 | ||
84 | #define REG_ERANGE 11 | ||
85 | #define REG_ESPACE 12 | ||
86 | #define REG_BADRPT 13 | ||
87 | #define REG_EMPTY 14 | ||
88 | #define REG_ASSERT 15 | ||
89 | #define REG_INVARG 16 | ||
90 | #define REG_ATOI 255 /* convert name to number (!) */ | ||
91 | #define REG_ITOA 0400 /* convert number to name (!) */ | ||
92 | |||
93 | /* regexec() flags */ | ||
94 | #define REG_NOTBOL 00001 | ||
95 | #define REG_NOTEOL 00002 | ||
96 | #define REG_STARTEND 00004 | ||
97 | #define REG_TRACE 00400 /* tracing of execution */ | ||
98 | #define REG_LARGE 01000 /* force large representation */ | ||
99 | #define REG_BACKR 02000 /* force use of backref code */ | ||
100 | |||
101 | int regcomp(regex_t*, const char*, int); | ||
102 | size_t regerror(int, const regex_t*, char*, size_t); | ||
103 | int regexec(const regex_t*, const char*, size_t, regmatch_t[], int); | ||
104 | void regfree(regex_t*); | ||
105 | |||
106 | #endif /* !_REGEX_H_ */ | ||