diff --git a/borg/_hashindex.c b/borg/_hashindex.c index f1aa0aa8c..e3a4641da 100644 --- a/borg/_hashindex.c +++ b/borg/_hashindex.c @@ -8,10 +8,14 @@ #include #include -#if defined(BYTE_ORDER)&&(BYTE_ORDER == BIG_ENDIAN) +#if defined (__SVR4) && defined (__sun) +#include +#endif + +#if (defined(BYTE_ORDER)&&(BYTE_ORDER == BIG_ENDIAN)) || defined(_BIG_ENDIAN) #define _le32toh(x) __builtin_bswap32(x) #define _htole32(x) __builtin_bswap32(x) -#elif defined(BYTE_ORDER)&&(BYTE_ORDER == LITTLE_ENDIAN) +#elif (defined(BYTE_ORDER)&&(BYTE_ORDER == LITTLE_ENDIAN)) || defined(_LITTLE_ENDIAN) #define _le32toh(x) (x) #define _htole32(x) (x) #else diff --git a/borg/archiver.py b/borg/archiver.py index 75084453d..7b99c3bb5 100644 --- a/borg/archiver.py +++ b/borg/archiver.py @@ -322,6 +322,12 @@ class Archiver: elif stat.S_ISSOCK(st.st_mode): # Ignore unix sockets return + elif stat.S_ISDOOR(st.st_mode): + # Ignore Solaris doors + return + elif stat.S_ISPORT(st.st_mode): + # Ignore Solaris event ports + return else: self.print_warning('Unknown file type: %s', path) return diff --git a/borg/locking.py b/borg/locking.py index c03885780..bc3660d61 100644 --- a/borg/locking.py +++ b/borg/locking.py @@ -33,7 +33,8 @@ class TimeoutTimer: :param timeout: time out interval [s] or None (no timeout) :param sleep: sleep interval [s] (>= 0: do sleep call, <0: don't call sleep) - or None (autocompute: use 10% of timeout, or 1s for no timeout) + or None (autocompute: use 10% of timeout [but not more than 60s], + or 1s for no timeout) """ if timeout is not None and timeout < 0: raise ValueError("timeout must be >= 0") @@ -42,7 +43,7 @@ class TimeoutTimer: if timeout is None: sleep = 1.0 else: - sleep = timeout / 10.0 + sleep = min(60.0, timeout / 10.0) self.sleep_interval = sleep self.start_time = None self.end_time = None diff --git a/docs/installation.rst b/docs/installation.rst index 3e5946079..ef52827a4 100644 --- a/docs/installation.rst +++ b/docs/installation.rst @@ -198,7 +198,7 @@ Use the Cygwin installer to install the dependencies:: python3 python3-setuptools python3-cython # not needed for releases - binutils gcc-core + binutils gcc-g++ libopenssl openssl-devel liblz4_1 liblz4-devel # from cygwinports.org git make openssh