opie/opie.patch

Fri, 07 Sep 2012 19:08:07 +0200

author
Michael Schloh von Bennewitz <michael@schloh.com>
date
Fri, 07 Sep 2012 19:08:07 +0200
changeset 667
9dacbd1d1aa2
permissions
-rw-r--r--

Correct build configuration in Solaris subdir, correct english grammar,
remove irrelevant strip notice, introduce custom CFLAG logic, facilitate
use of Solaris Studio compiler with needed build configuration
adjustments, conditionally build 64 bit position independent code,
and accommodate tun(7) in newer Solaris releases by renaming driver
and module from conflicting 'tun' to 'vtun'. These changes include
some nonstandard 'I give up' logic causing out of tree builds by
manipulating the PATH, for example.

     1 Index: Makefile.in
     2 --- Makefile.in.orig	2005-11-07 19:38:27 +0100
     3 +++ Makefile.in	2005-11-07 19:38:52 +0100
     4 @@ -152,7 +152,7 @@
     5  	@-for i in otp-md4 otp-md5; do ln -s opiekey.1 $(LOCALMAN)/man1/$$i.1; done
     6  	@if test ! -d $(LOCALMAN)/man1; then $(MKDIR) $(LOCALMAN)/man1; chmod 755 $(LOCALMAN)/man1; fi; cp opiekey.1 $(LOCALMAN)/man1/opiekey.1; $(CHOWN) $(OWNER) $(LOCALMAN)/man1/opiekey.1; chgrp $(GROUP) $(LOCALMAN)/man1/opiekey.1; chmod 644 $(LOCALMAN)/man1/opiekey.1
     8 -server:	libopie/libopie.a libmissing/libmissing.a opietest-passed opielogin opiesu opiepasswd opieinfo opieftpd opieserv
     9 +server:	libopie/libopie.a libmissing/libmissing.a opietest-passed opielogin opiesu opiepasswd opieinfo opieserv
    11  server-install: server
    12  	@echo "Installing OPIE server software..."
    13 Index: libopie/atob8.c
    14 --- libopie/atob8.c.orig	1999-03-11 03:09:57 +0100
    15 +++ libopie/atob8.c	2005-11-07 19:39:30 +0100
    16 @@ -72,5 +72,5 @@
    17      *out++ |= val;
    18    }
    20 -  return out;
    21 +  return (char *)out;
    22  }
    23 Index: opie_cfg.h
    24 --- opie_cfg.h.orig	2001-11-20 17:23:37 +0100
    25 +++ opie_cfg.h	2005-11-07 19:39:05 +0100
    26 @@ -69,6 +69,9 @@
    27  #define DOUTMPX 0
    28  #endif /* HAVE_GETUTXLINE && HAVE_UTMPX_H */
    30 +#include <stdlib.h>
    31 +#include <stdio.h>
    32 +#include <string.h>
    33  #include <sys/types.h>
    34  /* Adapted from the Autoconf hypertext info pages */
    35  #if HAVE_DIRENT_H
    36 Index: libopie/generator.c
    37 --- libopie/generator.c.orig	2006-06-18 02:06:28.215630000 +0200
    38 +++ libopie/generator.c	2006-06-18 02:06:15.049431000 +0200
    39 @@ -62,7 +62,7 @@
    40  static int opieauto_connect FUNCTION_NOARGS
    41  {
    42    int s;
    43 -  struct sockaddr_un sun;
    44 +  struct sockaddr_un locsun;
    45    char buffer[1024];
    46    char *c, *c2 ="/.opieauto";
    47    uid_t myuid = getuid(), myeuid = geteuid();
    48 @@ -74,8 +74,8 @@
    49      return -1;
    50    };
    52 -  memset(&sun, 0, sizeof(struct sockaddr_un));
    53 -  sun.sun_family = AF_UNIX;
    54 +  memset(&locsun, 0, sizeof(struct sockaddr_un));
    55 +  locsun.sun_family = AF_UNIX;
    57    if (!(c = getenv("HOME"))) {
    58  #if DEBUG
    59 @@ -84,15 +84,15 @@
    60      return -1;
    61    };
    63 -  if (strlen(c) > (sizeof(sun.sun_path) - strlen(c2) - 1)) {
    64 +  if (strlen(c) > (sizeof(locsun.sun_path) - strlen(c2) - 1)) {
    65  #if DEBUG
    66      syslog(LOG_DEBUG, "opieauto_connect: HOME is too long: %s", c);
    67  #endif /* DEBUG */
    68      return -1;
    69    };
    71 -  strcpy(sun.sun_path, c);
    72 -  strcat(sun.sun_path, c2);
    73 +  strcpy(locsun.sun_path, c);
    74 +  strcat(locsun.sun_path, c2);
    76    if ((s = socket(PF_UNIX, SOCK_STREAM, 0)) < 0) {
    77  #if DEBUG
    78 @@ -104,14 +104,14 @@
    79    {
    80      struct stat st;
    82 -    if (stat(sun.sun_path, &st) < 0) {
    83 +    if (stat(locsun.sun_path, &st) < 0) {
    84  #if DEBUG
    85        syslog(LOG_DEBUG, "opieauto_connect: stat: %s(%d)\n", strerror(errno), errno);
    86  #endif /* DEBUG */
    87        goto ret;
    88      };
    90 -    if (connect(s, (struct sockaddr *)&sun, sizeof(struct sockaddr_un))) {
    91 +    if (connect(s, (struct sockaddr *)&locsun, sizeof(struct sockaddr_un))) {
    92  #if DEBUG
    93        syslog(LOG_DEBUG, "opieauto_connect: connect: %s(%d)\n", strerror(errno), errno);
    94  #endif /* DEBUG */
    95 Index: opieauto.c
    96 --- opieauto.c.orig	2001-11-20 16:18:42.000000000 +0100
    97 +++ opieauto.c	2006-06-18 02:28:20.526432000 +0200
    98 @@ -282,10 +282,10 @@
    99      baile("atexit");
   101    {
   102 -    struct sockaddr_un sun;
   103 +    struct sockaddr_un locsun;
   105 -    memset(&sun, 0, sizeof(struct sockaddr_un));
   106 -    sun.sun_family = AF_UNIX;
   107 +    memset(&locsun, 0, sizeof(struct sockaddr_un));
   108 +    locsun.sun_family = AF_UNIX;
   110      {
   111      char *c;
   112 @@ -294,12 +294,12 @@
   113      if (!(c = getenv("HOME")))
   114        bail("getenv(HOME) failed -- no HOME variable?");
   116 -    if (strlen(c) > (sizeof(sun.sun_path) - strlen(c2) - 1))
   117 +    if (strlen(c) > (sizeof(locsun.sun_path) - strlen(c2) - 1))
   118        bail("your HOME is too long");
   120 -    strcpy(sun.sun_path, c);
   121 -    strcat(sun.sun_path, c2);
   122 -    sockpath = strdup(sun.sun_path);
   123 +    strcpy(locsun.sun_path, c);
   124 +    strcat(locsun.sun_path, c2);
   125 +    sockpath = strdup(locsun.sun_path);
   126      };
   128      if ((parents = socket(PF_UNIX, SOCK_STREAM, 0)) < 0)
   129 @@ -311,7 +311,7 @@
   130      if (umask(0177) < 0)
   131        baile("umask");
   133 -    if (bind(parents, (struct sockaddr *)&sun, sizeof(struct sockaddr_un)))
   134 +    if (bind(parents, (struct sockaddr *)&locsun, sizeof(struct sockaddr_un)))
   135        baile("bind");
   137      if (stat(sockpath, &st) < 0)

mercurial