[pacman-dev] [GIT] The official pacman repository branch, master, updated. v4.2.1-282-ga8e2578

Allan McRae allan at archlinux.org
Sat Dec 5 12:40:44 UTC 2015


This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "The official pacman repository".

The branch, master has been updated
       via  a8e2578febbb71d1b788c7270c2be57ca1e64dec (commit)
       via  b8a72770619a29db436e2a3883ebe03910a8e827 (commit)
       via  8089081ef962337d9ff445213cdb160fc47da7c8 (commit)
       via  c74495a3b217249e3a14d616b38367b6dbb006e4 (commit)
       via  4d2317dafb3c3aac56f9f604262d82fd1b396a19 (commit)
       via  220a3ce2b8177bb3cc8a7a20715b67d5cbf7fc71 (commit)
       via  8d11aa3cdf284ebd5b0239b3e3e2f0c39ec7c3ba (commit)
       via  85508b478e23ef225afccf5ec27dffb39a0300c9 (commit)
       via  7fb8a299c2a2e18eed21694ba24cf8959aa830dd (commit)
       via  7b6f7bbe090e9c10c094c998147212ec0c1ba770 (commit)
       via  16623a7ea577309c8cfb90920ca61342c585f73a (commit)
       via  4838d250e5fc258bdd52dc31098ed2ad0e44ee40 (commit)
       via  bb5e6c3b767e923fdb6cbdd75a930838c9b2a018 (commit)
       via  8a373096f590925465f624d7b0bf466b02143ce1 (commit)
       via  088649534e7fd493cab4fce335f50a68108a48a6 (commit)
      from  dfa4dcb16d42a84a76ed22792f681190aaa60b31 (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
commit a8e2578febbb71d1b788c7270c2be57ca1e64dec
Author: Andrew Gregory <andrew.gregory.8 at gmail.com>
Date:   Fri Dec 4 14:27:41 2015 -0500

    remove soft interrupt handler before cleanup
    
    The soft interrupt handler dereferences config, causing a segfault if
    it is called during cleanup.
    
    Signed-off-by: Andrew Gregory <andrew.gregory.8 at gmail.com>
    Signed-off-by: Allan McRae <allan at archlinux.org>

commit b8a72770619a29db436e2a3883ebe03910a8e827
Author: Andrew Gregory <andrew.gregory.8 at gmail.com>
Date:   Mon Nov 30 13:07:11 2015 -0500

    extract soft interrupt handlers
    
    Delays handler setup until after config is set to a valid
    value to avoid a segmentation fault.
    
    Signed-off-by: Andrew Gregory <andrew.gregory.8 at gmail.com>
    Signed-off-by: Allan McRae <allan at archlinux.org>

commit 8089081ef962337d9ff445213cdb160fc47da7c8
Author: Andrew Gregory <andrew.gregory.8 at gmail.com>
Date:   Thu Nov 12 18:56:26 2015 -0500

    extract SIGSEGV handler
    
    Signed-off-by: Andrew Gregory <andrew.gregory.8 at gmail.com>
    Signed-off-by: Allan McRae <allan at archlinux.org>

commit c74495a3b217249e3a14d616b38367b6dbb006e4
Author: Andrew Gregory <andrew.gregory.8 at gmail.com>
Date:   Thu Nov 12 18:51:15 2015 -0500

    extract SIGWINCH handler
    
    Signed-off-by: Andrew Gregory <andrew.gregory.8 at gmail.com>
    Signed-off-by: Allan McRae <allan at archlinux.org>

commit 4d2317dafb3c3aac56f9f604262d82fd1b396a19
Author: Andrew Gregory <andrew.gregory.8 at gmail.com>
Date:   Mon Nov 30 12:36:30 2015 -0500

    move signal handlers to sighandler.[ch]
    
    Signals are special because they run asynchronously, making them
    non-trivial to handle correctly.  Move the handlers a separate file to
    offset them from the normal code and make them easier to separate into
    individual functions without further cluttering pacman.c
    
    Signed-off-by: Andrew Gregory <andrew.gregory.8 at gmail.com>
    Signed-off-by: Allan McRae <allan at archlinux.org>

commit 220a3ce2b8177bb3cc8a7a20715b67d5cbf7fc71
Author: Andrew Gregory <andrew.gregory.8 at gmail.com>
Date:   Mon Nov 30 12:29:13 2015 -0500

    avoid unsafe functions in signal handler
    
    signal(7) lists a set of functions that can safely be called from within
    a signal handler.  Even fileno and strlen are not guaranteed to be safe.
    
    Signed-off-by: Andrew Gregory <andrew.gregory.8 at gmail.com>
    Signed-off-by: Allan McRae <allan at archlinux.org>

commit 8d11aa3cdf284ebd5b0239b3e3e2f0c39ec7c3ba
Author: Andrew Gregory <andrew.gregory.8 at gmail.com>
Date:   Mon Nov 30 12:16:48 2015 -0500

    remove SIG_IGN check when setting signal handler
    
    Our signal handler provides a way to gracefully interrupt a transaction
    and should always be set.
    
    The check appears to have originally been copied directly from the glibc
    manual.
    
    Signed-off-by: Andrew Gregory <andrew.gregory.8 at gmail.com>
    Signed-off-by: Allan McRae <allan at archlinux.org>

commit 85508b478e23ef225afccf5ec27dffb39a0300c9
Author: Andrew Gregory <andrew.gregory.8 at gmail.com>
Date:   Mon Nov 30 12:10:58 2015 -0500

    do not catch SIGTERM
    
    On SIGTERM pacman was exiting immediately, even in the middle of
    a transaction.  In this case we should leave the lock file in place as
    an indication that the database may not be in a consistent state.
    
    Signed-off-by: Andrew Gregory <andrew.gregory.8 at gmail.com>
    Signed-off-by: Allan McRae <allan at archlinux.org>

commit 7fb8a299c2a2e18eed21694ba24cf8959aa830dd
Author: Andrew Gregory <andrew.gregory.8 at gmail.com>
Date:   Thu Nov 12 18:37:43 2015 -0500

    pacman: exit without memory cleanup on signals
    
    Memory allocation/deallocation functions are not safe to call from
    signal handlers.  Just remove the lock file if there is one and exit
    immediately.
    
    Fixes: FS#46375, FS#45995, FS#47011
    
    Signed-off-by: Andrew Gregory <andrew.gregory.8 at gmail.com>
    Signed-off-by: Allan McRae <allan at archlinux.org>

commit 7b6f7bbe090e9c10c094c998147212ec0c1ba770
Author: Andrew Gregory <andrew.gregory.8 at gmail.com>
Date:   Thu Nov 12 18:06:53 2015 -0500

    add and expose alpm_unlock
    
    alpm_unlock is a limited version of alpm_release that does nothing but
    the actual unlinking of the lock file and is therefore safe to call from
    signal handlers.
    
    Signed-off-by: Andrew Gregory <andrew.gregory.8 at gmail.com>
    Signed-off-by: Allan McRae <allan at archlinux.org>

commit 16623a7ea577309c8cfb90920ca61342c585f73a
Author: Andrew Gregory <andrew.gregory.8 at gmail.com>
Date:   Thu Nov 12 17:58:01 2015 -0500

    handle_unlock: return 0 if lockfile == NULL
    
    Returning -1 is useless since we don't provide any way
    to determine why it failed.
    
    Signed-off-by: Andrew Gregory <andrew.gregory.8 at gmail.com>
    Signed-off-by: Allan McRae <allan at archlinux.org>

commit 4838d250e5fc258bdd52dc31098ed2ad0e44ee40
Author: Andrew Gregory <andrew.gregory.8 at gmail.com>
Date:   Fri Dec 4 14:14:32 2015 -0500

    skip conflicts resolved by file replacement
    
    When replacing a file with a directory, any files inside the new
    directory cannot possibly exist on the filesystem and can be skipped.
    This allows cross-package symlink-to-directory transitions when there
    are files with the same name under both the symlinked directory and the
    new directory.
    
    Signed-off-by: Andrew Gregory <andrew.gregory.8 at gmail.com>
    Signed-off-by: Allan McRae <allan at archlinux.org>

commit bb5e6c3b767e923fdb6cbdd75a930838c9b2a018
Author: Andrew Gregory <andrew.gregory.8 at gmail.com>
Date:   Fri Dec 4 14:14:31 2015 -0500

    always unlink files before extraction
    
    libarchive will not extract a directory over an existing directory
    symlink, making it impossible to replace a symlink with a directory
    across packages.  Adding the ARCHIVE_EXTRACT_UNLINK and
    ARCHIVE_EXTRACT_SECURE_SYMLINKS causes libarchive to unlink the existing
    symlink and prevents it from extracting any paths that contain
    a symlink, which we should not be doing anyway.
    
    Signed-off-by: Andrew Gregory <andrew.gregory.8 at gmail.com>
    Signed-off-by: Allan McRae <allan at archlinux.org>

commit 8a373096f590925465f624d7b0bf466b02143ce1
Author: Allan McRae <allan at archlinux.org>
Date:   Fri Dec 4 07:36:01 2015 +1000

    Detect potential conflict when symlink to directory is changing to directory
    
    When a symlink to a directory is changing to a directory, any package file
    inside the new directory can create an unexpected conflict with the filesystem.
    
    Reported by Neofytos and Luca from Chakra.
    
    Signed-off-by: Allan McRae <allan at archlinux.org>

commit 088649534e7fd493cab4fce335f50a68108a48a6
Author: Allan McRae <allan at archlinux.org>
Date:   Sun Nov 29 08:42:56 2015 +1000

    Add large file support CFLAGS to pkgconfig file
    
    Large file support is enabled by our configure script as required.  If anything
    linking to libalpm does not also define large file support, there will be
    differences in the size of off_t which are not caught until runtime.
    
    Add the required CFLAGS to the pkg-config file so that users of libalpm know
    what flags are required.
    
    Signed-off-by: Allan McRae <allan at archlinux.org>

-----------------------------------------------------------------------

Summary of changes:
 configure.ac                                  |   9 ++
 lib/libalpm/add.c                             |  11 +--
 lib/libalpm/alpm.h                            |   1 +
 lib/libalpm/conflict.c                        |  15 ++++
 lib/libalpm/handle.c                          |  21 ++++-
 lib/libalpm/libalpm.pc.in                     |   2 +-
 src/pacman/Makefile.am                        |   1 +
 src/pacman/pacman.c                           |  75 ++--------------
 src/pacman/sighandler.c                       | 119 ++++++++++++++++++++++++++
 lib/libalpm/hook.h => src/pacman/sighandler.h |  20 ++---
 test/pacman/tests/TESTS                       |   1 +
 test/pacman/tests/symlink021.py               |  26 ++++++
 12 files changed, 211 insertions(+), 90 deletions(-)
 create mode 100644 src/pacman/sighandler.c
 copy lib/libalpm/hook.h => src/pacman/sighandler.h (74%)
 create mode 100644 test/pacman/tests/symlink021.py


hooks/post-receive
-- 
The official pacman repository


More information about the pacman-dev mailing list