New upstream release

- Drop all current patches, applied upstream
  - Update symbols file
This commit is contained in:
Simon McVittie 2017-10-03 19:15:05 +01:00
parent 6ae4b65bbd
commit d39f0321d8
7 changed files with 11 additions and 225 deletions

8
debian/changelog vendored
View File

@ -1,3 +1,11 @@
ostree (2017.12-1) UNRELEASED; urgency=medium
* New upstream release
- Drop all current patches, applied upstream
- Update symbols file
-- Simon McVittie <smcv@debian.org> Tue, 03 Oct 2017 19:14:14 +0100
ostree (2017.11-2) unstable; urgency=medium
* Replace patch with the version applied upstream in 2017.12

View File

@ -17,6 +17,7 @@ libostree-1.so.1 libostree-1-1 #MINVER#
LIBOSTREE_2017.9@LIBOSTREE_2017.9 2017.9
LIBOSTREE_2017.10@LIBOSTREE_2017.10 2017.10
LIBOSTREE_2017.11@LIBOSTREE_2017.11 2017.11
LIBOSTREE_2017.12@LIBOSTREE_2017.12 2017.12
ostree_async_progress_finish@LIBOSTREE_2016.3 2016.4
ostree_async_progress_get@LIBOSTREE_2017.6 2017.6
ostree_async_progress_get_status@LIBOSTREE_2016.3 2016.4
@ -161,6 +162,7 @@ libostree-1.so.1 libostree-1-1 #MINVER#
ostree_repo_devino_cache_new@LIBOSTREE_2016.3 2016.4
ostree_repo_devino_cache_ref@LIBOSTREE_2016.3 2016.4
ostree_repo_devino_cache_unref@LIBOSTREE_2016.3 2016.4
ostree_repo_equal@LIBOSTREE_2017.12 2017.12
ostree_repo_export_tree_to_archive@LIBOSTREE_2016.3 2016.3
ostree_repo_file_ensure_resolved@LIBOSTREE_2016.3 2016.4
ostree_repo_file_get_checksum@LIBOSTREE_2016.3 2016.4
@ -187,6 +189,7 @@ libostree-1.so.1 libostree-1-1 #MINVER#
ostree_repo_get_type@LIBOSTREE_2016.3 2016.4
ostree_repo_gpg_verify_data@LIBOSTREE_2016.6 2016.6
ostree_repo_has_object@LIBOSTREE_2016.3 2016.4
ostree_repo_hash@LIBOSTREE_2017.12 2017.12
ostree_repo_import_archive_to_mtree@LIBOSTREE_2016.3 2016.3
ostree_repo_import_object_from@LIBOSTREE_2016.3 2016.4
ostree_repo_import_object_from_with_trust@LIBOSTREE_2016.5 2016.5

View File

@ -1,70 +0,0 @@
From: Jonathan Lebon <jlebon@redhat.com>
Date: Wed, 20 Sep 2017 18:38:16 +0000
Subject: rofiles-fuse: also pass mode for O_RDONLY
In the `O_RDONLY` case, we were calling `openat` without a mode
argument. However, it's perfectly legal (albeit unusual) to do
`open(O_RDONLY|O_CREAT)`. One such application that makes use of this is
`flock(1)`.
This was actually caught by `_FORTIFY_SOURCE=2`, and once we run
`rofiles-fuse` with `-f`, the message is clear:
```
*** invalid openat64 call: O_CREAT or O_TMPFILE without mode ***:
rofiles-fuse terminated
======= Backtrace: =========
/lib64/libc.so.6(+0x7c8dc)[0x7f36d9f188dc]
/lib64/libc.so.6(__fortify_fail+0x37)[0x7f36d9fbfaa7]
/lib64/libc.so.6(+0x10019a)[0x7f36d9f9c19a]
rofiles-fuse[0x401768]
...
```
Without `_FORTIFY_SOURCE`, the file gets created, but its mode is
completely random.
I ran into this while investigating
https://github.com/projectatomic/rpm-ostree/pull/1003.
Closes: #1200
Approved by: cgwalters
Origin: upstream, 2017.12, commit:d4c7093e370843c57eab2f89f0c39ef449e6b32e
---
src/rofiles-fuse/main.c | 2 +-
tests/test-rofiles-fuse.sh | 5 ++++-
2 files changed, 5 insertions(+), 2 deletions(-)
diff --git a/src/rofiles-fuse/main.c b/src/rofiles-fuse/main.c
index 6deaa6d..f2b1b65 100644
--- a/src/rofiles-fuse/main.c
+++ b/src/rofiles-fuse/main.c
@@ -313,7 +313,7 @@ do_open (const char *path, mode_t mode, struct fuse_file_info *finfo)
if ((finfo->flags & O_ACCMODE) == O_RDONLY)
{
/* Read */
- fd = openat (basefd, path, finfo->flags);
+ fd = openat (basefd, path, finfo->flags, mode);
if (fd == -1)
return -errno;
}
diff --git a/tests/test-rofiles-fuse.sh b/tests/test-rofiles-fuse.sh
index d329d76..6222929 100755
--- a/tests/test-rofiles-fuse.sh
+++ b/tests/test-rofiles-fuse.sh
@@ -26,7 +26,7 @@ skip_without_user_xattrs
setup_test_repository "bare"
-echo "1..7"
+echo "1..8"
cd ${test_tmpdir}
mkdir mnt
@@ -114,3 +114,6 @@ fi
assert_file_has_content err.txt "Unable to do hardlink checkout across devices"
echo "ok checkout copy fallback"
+
+# check that O_RDONLY|O_CREAT is handled correctly; used by flock(1) at least
+flock mnt/nonexistent-file echo "ok create file in ro mode"

View File

@ -1,31 +0,0 @@
From: Simon McVittie <smcv@collabora.com>
Date: Tue, 19 Sep 2017 14:41:18 +0100
Subject: tests: Explicitly unset LANGUAGE after setting LC_ALL
As a GNU extension, LANGUAGE takes precedence over LC_ALL for
gettext(3) whenever the locale is not C, causing tests that grep for
specific English strings to fail when run in non-English locales.
The upstream glibc proposal for C.UTF-8 would give C.UTF-8 the same
special case as C here, but the implementation in Debian does not
currently have this, so we have to unset LANGUAGE too.
Signed-off-by: Simon McVittie <smcv@collabora.com>
Forwarded: https://github.com/ostreedev/ostree/pull/1188
Applied-upstream: 2017.12, commit:223c940b46a4bb335665df7436566b73cdf0effd
---
tests/libtest-core.sh | 2 ++
1 file changed, 2 insertions(+)
diff --git a/tests/libtest-core.sh b/tests/libtest-core.sh
index d0b7d37..ce0e4bb 100644
--- a/tests/libtest-core.sh
+++ b/tests/libtest-core.sh
@@ -40,6 +40,8 @@ if locale -a | grep C.UTF-8 >/dev/null; then
else
export LC_ALL=C
fi
+# A GNU extension, used whenever LC_ALL is not C
+unset LANGUAGE
# This should really be the default IMO
export G_DEBUG=fatal-warnings

View File

@ -1,45 +0,0 @@
From: Simon McVittie <smcv@collabora.com>
Date: Fri, 15 Sep 2017 15:32:55 +0100
Subject: tests: Fix JavaScript tests with gjs 1.50.0
In recent gjs, you can't declare a variable with "let" multiple times.
Signed-off-by: Simon McVittie <smcv@collabora.com>
Closes: #1178
Approved by: cgwalters
Forwarded: https://github.com/ostreedev/ostree/pull/1178
Applied-upstream: 2017.12, commit:1b430a776486d68be2d16a0ec53ad5512c604988
---
tests/corrupt-repo-ref.js | 1 -
tests/test-sysroot.js | 6 +++---
2 files changed, 3 insertions(+), 4 deletions(-)
diff --git a/tests/corrupt-repo-ref.js b/tests/corrupt-repo-ref.js
index c5f2806..bcde86b 100755
--- a/tests/corrupt-repo-ref.js
+++ b/tests/corrupt-repo-ref.js
@@ -47,7 +47,6 @@ function listObjectChecksumsRecurse(dir, allObjects) {
e.close(null);
}
-let [,commit] = repo.resolve_rev(refToCorrupt, false);
let [,root,commit] = repo.read_commit(refToCorrupt, null);
let allObjects = {};
allObjects[commit + '.commit'] = true;
diff --git a/tests/test-sysroot.js b/tests/test-sysroot.js
index 40397fe..e7250a8 100755
--- a/tests/test-sysroot.js
+++ b/tests/test-sysroot.js
@@ -97,9 +97,9 @@ assertEquals(deploymentPath.query_exists(null), false);
//// Ok, redeploy, then add a new revision upstream and pull it
-let [,deployment] = sysroot.deploy_tree('testos', rev, origin,
- mergeDeployment, null,
- null);
+[,deployment] = sysroot.deploy_tree('testos', rev, origin,
+ mergeDeployment, null,
+ null);
newDeployments = deployments;
deployments = null;
newDeployments.unshift(deployment);

View File

@ -1,75 +0,0 @@
From: Simon McVittie <smcv@collabora.com>
Date: Tue, 19 Sep 2017 18:37:58 +0100
Subject: tests: Reset umask to 022 while creating test repository
In test-basic-root.sh we make assertions about the permissions
of files like baz/cow, which were created without an explicit chmod.
We can't do that unless we control the permissions.
For some reason the "debomatic" autobuilder used to do some Debian
archive rebuilds does the entire build including build-time tests
as uid 0 with umask 002, which broke those assertions. This seems
a weird thing to do, and I've opened a bug, but it also seems
reasonable to fix this test.
This also lets us remove a couple of existing workarounds for the
same issue.
Bug-Debian: https://bugs.debian.org/876138
Signed-off-by: Simon McVittie <smcv@collabora.com>
Closes: #1192
Approved by: cgwalters
Forwarded: https://github.com/ostreedev/ostree/pull/1192
Applied-upstream: 2017.12, commit:e3c3ec5dd91492e82c79223052443d038c60f41c
---
tests/libtest.sh | 3 +++
tests/test-basic-user.sh | 8 ++------
2 files changed, 5 insertions(+), 6 deletions(-)
diff --git a/tests/libtest.sh b/tests/libtest.sh
index 73e8889..1ae04a7 100755
--- a/tests/libtest.sh
+++ b/tests/libtest.sh
@@ -150,6 +150,8 @@ setup_test_repository () {
export OSTREE="${CMD_PREFIX} ostree ${ot_repo}"
cd ${test_tmpdir}
+ local oldumask="$(umask)"
+ umask 022
mkdir files
cd files
ot_files=`pwd`
@@ -172,6 +174,7 @@ setup_test_repository () {
ln -s nonexistent baz/alink
mkdir baz/another/
echo x > baz/another/y
+ umask "${oldumask}"
cd ${test_tmpdir}/files
$OSTREE commit ${COMMIT_ARGS} -b test2 -s "Test Commit 2" -m "Commit body second"
diff --git a/tests/test-basic-user.sh b/tests/test-basic-user.sh
index 9486655..291806c 100755
--- a/tests/test-basic-user.sh
+++ b/tests/test-basic-user.sh
@@ -34,11 +34,7 @@ setup_test_repository "bare-user"
cd ${test_tmpdir}
objpath_nonexec=$(ostree_file_path_to_object_path repo test2 baz/cow)
-# Sigh, umask
-touch testfile
-default_mode=$(stat -c '%a' testfile)
-rm testfile
-assert_file_has_mode ${objpath_nonexec} ${default_mode}
+assert_file_has_mode ${objpath_nonexec} 644
objpath_ro=$(ostree_file_path_to_object_path repo test2 baz/cowro)
assert_file_has_mode ${objpath_ro} 600
objpath_exec=$(ostree_file_path_to_object_path repo test2 baz/deeper/ohyeahx)
@@ -48,7 +44,7 @@ echo "ok bare-user committed modes"
rm test2-checkout -rf
$OSTREE checkout -U -H test2 test2-checkout
cd test2-checkout
-assert_file_has_mode baz/cow ${default_mode}
+assert_file_has_mode baz/cow 644
assert_file_has_mode baz/cowro 600
assert_file_has_mode baz/deeper/ohyeahx 755
echo "ok bare-user checkout modes"

View File

@ -1,4 +0,0 @@
2017.12/tests-Fix-JavaScript-tests-with-gjs-1.50.0.patch
2017.12/tests-Explicitly-unset-LANGUAGE-after-setting-LC_ALL.patch
2017.12/tests-Reset-umask-to-022-while-creating-test-repository.patch
2017.12/rofiles-fuse-also-pass-mode-for-O_RDONLY.patch