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:   30-May-2006 20:34:04
  Branch: HEAD                             Handle: 2006053019340300

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

  Log:
    add vendor patch to fix 'unexpected tag 3' errors.

  Summary:
    Revision    Changes     Path
    1.22        +91 -0      openpkg-src/rsync/rsync.patch
    1.81        +1  -1      openpkg-src/rsync/rsync.spec
  ____________________________________________________________________________

  patch -p0 <<'@@ .'
  Index: openpkg-src/rsync/rsync.patch
  ============================================================================
  $ cvs diff -u -r1.21 -r1.22 rsync.patch
  --- openpkg-src/rsync/rsync.patch     22 Apr 2006 18:39:07 -0000      1.21
  +++ openpkg-src/rsync/rsync.patch     30 May 2006 18:34:03 -0000      1.22
  @@ -49,3 +49,94 @@
    
    #define RSYNC_PORT 873
    
  +-----------------------------------------------------------------------------
  +
  +Vendor patch to fix 'unexpected tag 3' errors.
  +http://lists.samba.org/archive/rsync/2006-May/015607.html
  +
  +Index: io.c
  +--- io.c.orig        2006-04-21 18:40:19 +0200
  ++++ io.c     2006-05-30 20:30:09 +0200
  +@@ -273,10 +273,7 @@
  +                     exit_cleanup(RERR_STREAMIO);
  +             }
  +             read_loop(fd, buf, len);
  +-            if (defer_forwarding_messages)
  +-                    msg_list_add(&msg2sndr, MSG_DELETED, buf, len);
  +-            else
  +-                    io_multiplex_write(MSG_DELETED, buf, len);
  ++            send_msg(MSG_DELETED, buf, len);
  +             break;
  +     case MSG_SUCCESS:
  +             if (len != 4 || !am_generator) {
  +@@ -286,10 +283,7 @@
  +             read_loop(fd, buf, len);
  +             if (remove_sent_files) {
  +                     decrement_active_files(IVAL(buf,0));
  +-                    if (defer_forwarding_messages)
  +-                            msg_list_add(&msg2sndr, MSG_SUCCESS, buf, len);
  +-                    else
  +-                            io_multiplex_write(MSG_SUCCESS, buf, len);
  ++                    send_msg(MSG_SUCCESS, buf, len);
  +             }
  +             if (preserve_hard_links)
  +                     flist_ndx_push(&hlink_list, IVAL(buf,0));
  +@@ -309,10 +303,7 @@
  +                     if (n >= sizeof buf)
  +                             n = sizeof buf - 1;
  +                     read_loop(fd, buf, n);
  +-                    if (am_generator && am_server && 
defer_forwarding_messages)
  +-                            msg_list_add(&msg2sndr, tag, buf, n);
  +-                    else
  +-                            rwrite((enum logcode)tag, buf, n);
  ++                    rwrite(tag, buf, n);
  +                     len -= n;
  +             }
  +             break;
  +@@ -386,14 +377,19 @@
  +     return 1;
  + }
  + 
  +-void send_msg(enum msgcode code, char *buf, int len)
  ++int send_msg(enum msgcode code, char *buf, int len)
  + {
  +     if (msg_fd_out < 0) {
  +-            io_multiplex_write(code, buf, len);
  +-            return;
  ++            if (!defer_forwarding_messages)
  ++                    return io_multiplex_write(code, buf, len);
  ++            if (!io_multiplexing_out)
  ++                    return 0;
  ++            msg_list_add(&msg2sndr, code, buf, len);
  ++            return 1;
  +     }
  +     msg_list_add(&msg2genr, code, buf, len);
  +     msg2genr_flush(NORMAL_FLUSH);
  ++    return 1;
  + }
  + 
  + int get_redo_num(int itemizing, enum logcode code)
  +Index: log.c
  +--- log.c.orig       2006-04-08 18:04:34 +0200
  ++++ log.c    2006-05-30 20:30:09 +0200
  +@@ -264,7 +264,7 @@
  + 
  +     if (am_server) {
  +             /* Pass the message to the non-server side. */
  +-            if (io_multiplex_write((enum msgcode)code, buf, len))
  ++            if (send_msg(code, buf, len))
  +                     return;
  +             if (am_daemon) {
  +                     /* TODO: can we send the error to the user somehow? */
  +Index: proto.h
  +--- proto.h.orig     2006-04-22 17:38:34 +0200
  ++++ proto.h  2006-05-30 20:30:09 +0200
  +@@ -104,7 +104,7 @@
  + void set_msg_fd_out(int fd);
  + void increment_active_files(int ndx, int itemizing, enum logcode code);
  + void decrement_active_files(int ndx);
  +-void send_msg(enum msgcode code, char *buf, int len);
  ++int send_msg(enum msgcode code, char *buf, int len);
  + int get_redo_num(int itemizing, enum logcode code);
  + int get_hlink_num(void);
  + void io_set_filesfrom_fds(int f_in, int f_out);
  @@ .
  patch -p0 <<'@@ .'
  Index: openpkg-src/rsync/rsync.spec
  ============================================================================
  $ cvs diff -u -r1.80 -r1.81 rsync.spec
  --- openpkg-src/rsync/rsync.spec      22 Apr 2006 18:39:07 -0000      1.80
  +++ openpkg-src/rsync/rsync.spec      30 May 2006 18:34:03 -0000      1.81
  @@ -33,7 +33,7 @@
   Group:        Filesystem
   License:      GPL
   Version:      2.6.8
  -Release:      20060422
  +Release:      20060530
   
   #   package options
   %option       with_lastmatch  no
  @@ .
______________________________________________________________________
The OpenPKG Project                                    www.openpkg.org
CVS Repository Commit List                     [email protected]

Reply via email to