OpenPKG CVS Repository
  http://cvs.openpkg.org/
  ____________________________________________________________________________

  Server: cvs.openpkg.org                  Name:   Ralf S. Engelschall
  Root:   /v/openpkg/cvs                   Email:  [EMAIL PROTECTED]
  Module: openpkg-src                      Date:   16-Nov-2006 22:26:52
  Branch: HEAD                             Handle: 2006111621265200

  Modified files:
    openpkg-src/proftpd     proftpd.patch proftpd.spec

  Log:
    Security Fixes

  Summary:
    Revision    Changes     Path
    1.14        +68 -0      openpkg-src/proftpd/proftpd.patch
    1.113       +1  -1      openpkg-src/proftpd/proftpd.spec
  ____________________________________________________________________________

  patch -p0 <<'@@ .'
  Index: openpkg-src/proftpd/proftpd.patch
  ============================================================================
  $ cvs diff -u -r1.13 -r1.14 proftpd.patch
  --- openpkg-src/proftpd/proftpd.patch 27 Jun 2006 14:12:21 -0000      1.13
  +++ openpkg-src/proftpd/proftpd.patch 16 Nov 2006 21:26:52 -0000      1.14
  @@ -49,3 +49,71 @@
      if (table == uid_table)
        return id.uid == idcomp.uid;
      else
  +
  +-----------------------------------------------------------------------------
  +
  +Security Fix (CVE-2006-5815)
  +
  +Index: src/main.c
  +--- src/main.c.orig  2006-03-15 20:41:01 +0100
  ++++ src/main.c       2006-11-15 16:47:29 +0100
  +@@ -116,6 +116,8 @@
  + 
  + static char sbuf[PR_TUNABLE_BUFFER_SIZE] = {'\0'};
  + 
  ++#define PR_DEFAULT_CMD_BUFSZ 512
  ++
  + static char **Argv = NULL;
  + static char *LastArgv = NULL;
  + static const char *PidPath = PR_PID_FILE_PATH;
  +@@ -820,16 +822,25 @@
  +       pr_timer_reset(TIMER_IDLE, NULL);
  + 
  +     if (cmd_buf_size == -1) {
  +-      long *buf_size = get_param_ptr(main_server->conf,
  +-        "CommandBufferSize", FALSE);
  ++      int *bufsz = get_param_ptr(main_server->conf, "CommandBufferSize",
  ++        FALSE);
  + 
  +-      if (buf_size == NULL || *buf_size <= 0)
  +-        cmd_buf_size = 512;
  ++      if (bufsz == NULL ||
  ++          *bufsz <= 0) {
  ++    pr_log_pri(PR_LOG_WARNING, "invalid CommandBufferSize size (%d) "
  ++          "given, resetting to default buffer size (%u)",
  ++          *bufsz, (unsigned int) PR_DEFAULT_CMD_BUFSZ);
  ++        cmd_buf_size = PR_DEFAULT_CMD_BUFSZ;
  ++
  ++      } else if (*bufsz + 1 > sizeof(buf)) {
  ++    pr_log_pri(PR_LOG_WARNING, "invalid CommandBufferSize size (%d) "
  ++          "given, resetting to default buffer size (%u)",
  ++          *bufsz, (unsigned int) PR_DEFAULT_CMD_BUFSZ);
  ++    cmd_buf_size = PR_DEFAULT_CMD_BUFSZ;
  + 
  +-      else if (*buf_size + 1 > sizeof(buf)) {
  +-    pr_log_pri(PR_LOG_WARNING, "Invalid CommandBufferSize size given. "
  +-          "Resetting to 512.");
  +-    cmd_buf_size = 512;
  ++      } else {
  ++        pr_log_debug(DEBUG1, "setting CommandBufferSize to %d", *bufsz);
  ++        cmd_buf_size = (long) *bufsz;
  +       }
  +     }
  + 
  +-----------------------------------------------------------------------------
  +
  +Security Fix
  +
  +Index: contrib/mod_tls.c
  +--- contrib/mod_tls.c.orig   2005-11-08 18:59:49 +0100
  ++++ contrib/mod_tls.c        2006-11-15 17:54:43 +0100
  +@@ -2421,6 +2421,8 @@
  +      datalen = BIO_get_mem_data(mem, &data);
  + 
  +   if (data) {
  ++    if (datalen > sizeof(buf)-1)
  ++        datalen = sizeof(buf)-1;
  +     memset(&buf, '\0', sizeof(buf));
  +     memcpy(buf, data, datalen);
  +     buf[datalen] = '\0';
  +
  @@ .
  patch -p0 <<'@@ .'
  Index: openpkg-src/proftpd/proftpd.spec
  ============================================================================
  $ cvs diff -u -r1.112 -r1.113 proftpd.spec
  --- openpkg-src/proftpd/proftpd.spec  24 Oct 2006 05:46:50 -0000      1.112
  +++ openpkg-src/proftpd/proftpd.spec  16 Nov 2006 21:26:52 -0000      1.113
  @@ -43,7 +43,7 @@
   Group:        FTP
   License:      GPL
   Version:      %{V_proftpd}
  -Release:      20061024
  +Release:      20061116
   
   #   package options
   %option       with_ifsession  no
  @@ .
______________________________________________________________________
The OpenPKG Project                                    www.openpkg.org
CVS Repository Commit List                     [email protected]

Reply via email to