[0KRunning with gitlab-runner 13.9.0 (2ebc4dc4) [0;m[0K on Lightweight gitlab runner (aws) mVSs9rcP [0;msection_start:1615833436:prepare_executor [0K[0K[36;1mPreparing the "docker+machine" executor[0;m [0;m[0KUsing Docker executor with image registry.gitlab.apertis.org/infrastructure/apertis-docker-images/v2022dev2-package-source-builder ... [0;m[0KAuthenticating with credentials from job payload (GitLab Registry) [0;m[0KPulling docker image registry.gitlab.apertis.org/infrastructure/apertis-docker-images/v2022dev2-package-source-builder ... [0;m[0KUsing docker image sha256:ff028df555e20b545eafee57e2e5d960c86a6f01f86776692262fb654dbce329 for registry.gitlab.apertis.org/infrastructure/apertis-docker-images/v2022dev2-package-source-builder with digest registry.gitlab.apertis.org/infrastructure/apertis-docker-images/v2022dev2-package-source-builder@sha256:6e655e146239bafd928a67af841c530ee9505d19d2c28dd9cbb017d23d9451e7 ... [0;msection_end:1615833438:prepare_executor [0Ksection_start:1615833438:prepare_script [0K[0K[36;1mPreparing environment[0;m [0;mRunning on runner-mvss9rcp-project-6497-concurrent-0 via runner-mvss9rcp-apertis-lightweight-machine-1615810530-9c4ea706... section_end:1615833439:prepare_script [0Ksection_start:1615833439:get_sources [0K[0K[36;1mGetting source from Git repository[0;m [0;m[32;1mFetching changes...[0;m Initialized empty Git repository in /builds/pkg/fscrypt/.git/ [32;1mCreated fresh repository.[0;m [32;1mChecking out 3daa56ec as debian/bullseye...[0;m [32;1mSkipping Git submodules setup[0;m section_end:1615833440:get_sources [0Ksection_start:1615833440:step_script [0K[0K[36;1mExecuting "step_script" stage of the job script[0;m [0;m[0KUsing docker image sha256:ff028df555e20b545eafee57e2e5d960c86a6f01f86776692262fb654dbce329 for registry.gitlab.apertis.org/infrastructure/apertis-docker-images/v2022dev2-package-source-builder with digest registry.gitlab.apertis.org/infrastructure/apertis-docker-images/v2022dev2-package-source-builder@sha256:6e655e146239bafd928a67af841c530ee9505d19d2c28dd9cbb017d23d9451e7 ... [0;m[32;1m$ mkdir -p .git/info[0;m [32;1m$ echo '* -text -eol -crlf -ident -filter -working-tree-encoding -export-subst' > .git/info/attributes[0;m [32;1m$ echo 'debian/changelog merge=dpkg-mergechangelogs' >> .git/info/attributes[0;m [32;1m$ UPSTREAM_RELEASE=$CI_COMMIT_BRANCH[0;m [32;1m$ DOWNSTREAM_RELEASES_VAR=DOWNSTREAM_RELEASES_$(echo $UPSTREAM_RELEASE|sed "s@/@_@")[0;m [32;1m$ if [ -z "$DOWNSTREAM_RELEASES" ] # collapsed multi-line command[0;m Checking downstream targets in DOWNSTREAM_RELEASES_debian_bullseye [32;1m$ if [ -z "$DOWNSTREAM_RELEASES" ] # collapsed multi-line command[0;m [32;1m$ apertis-pkg-merge-upstream-to-downstreams --upstream=${UPSTREAM_RELEASE} --downstream=${DOWNSTREAM_RELEASES} ${CI_AUTH_PROJECT_URL}[0;m Branch 'debian/bullseye' set up to track remote branch 'debian/bullseye' from 'origin'. remote: remote: View merge request for proposed-updates/debian/bullseye/95e3b549: remote: https://gitlab.apertis.org/pkg/fscrypt/-/merge_requests/2 remote: To https://gitlab.apertis.org/pkg/fscrypt.git/ * [new branch] proposed-updates/debian/bullseye/95e3b549 -> proposed-updates/debian/bullseye/95e3b549 Branch 'debian/bullseye' set up to track remote branch 'debian/bullseye' from 'origin'. Removing security/keyring.go Removing debian/compat Auto-merging debian/changelog Removing Gopkg.toml Removing Gopkg.lock Merge made by the 'recursive' strategy. .gitignore | 6 +- .travis.yml | 41 ++- CODE_OF_CONDUCT.md | 93 +++++ CONTRIBUTING.md | 56 +-- Gopkg.lock | 119 ------- Gopkg.toml | 40 --- Makefile | 105 +++--- README.md | 670 +++++++++++++++++++++++++---------- actions/config.go | 80 +++-- actions/config_test.go | 79 +++++ actions/context.go | 80 ++--- actions/context_test.go | 4 +- actions/policy.go | 262 +++++++++++--- actions/protector.go | 66 +++- actions/recovery.go | 111 ++++++ actions/recovery_test.go | 90 +++++ cli-tests/README.md | 67 ++++ cli-tests/common.sh | 166 +++++++++ cli-tests/run.sh | 299 ++++++++++++++++ cli-tests/t_change_passphrase.out | 32 ++ cli-tests/t_change_passphrase.sh | 60 ++++ cli-tests/t_encrypt.out | 100 ++++++ cli-tests/t_encrypt.sh | 54 +++ cli-tests/t_encrypt_custom.out | 55 +++ cli-tests/t_encrypt_custom.sh | 50 +++ cli-tests/t_encrypt_login.out | 157 ++++++++ cli-tests/t_encrypt_login.sh | 86 +++++ cli-tests/t_encrypt_raw_key.out | 25 ++ cli-tests/t_encrypt_raw_key.sh | 38 ++ cli-tests/t_lock.out | 88 +++++ cli-tests/t_lock.sh | 51 +++ cli-tests/t_not_enabled.out | 63 ++++ cli-tests/t_not_enabled.sh | 39 ++ cli-tests/t_not_supported.out | 9 + cli-tests/t_not_supported.sh | 17 + cli-tests/t_passphrase_hashing.out | 0 cli-tests/t_passphrase_hashing.sh | 34 ++ cli-tests/t_setup.out | 49 +++ cli-tests/t_setup.sh | 52 +++ cli-tests/t_status.out | 48 +++ cli-tests/t_status.sh | 56 +++ cli-tests/t_unlock.out | 116 ++++++ cli-tests/t_unlock.sh | 82 +++++ cli-tests/t_v1_policy.out | 143 ++++++++ cli-tests/t_v1_policy.sh | 72 ++++ cli-tests/t_v1_policy_fs_keyring.out | 75 ++++ cli-tests/t_v1_policy_fs_keyring.sh | 49 +++ cmd/fscrypt/commands.go | 412 ++++++++++++++++----- cmd/fscrypt/errors.go | 245 ++++++++++--- cmd/fscrypt/flags.go | 71 ++-- cmd/fscrypt/format.go | 83 +++-- cmd/fscrypt/fscrypt.go | 43 +-- cmd/fscrypt/keys.go | 6 +- cmd/fscrypt/prompt.go | 7 +- cmd/fscrypt/protector.go | 32 +- cmd/fscrypt/setup.go | 24 +- cmd/fscrypt/status.go | 54 ++- cmd/fscrypt/strings.go | 38 +- crypto/crypto.go | 64 ++-- crypto/crypto_test.go | 109 +++--- crypto/key.go | 80 ++--- crypto/rand.go | 41 ++- debian/changelog | 54 +++ debian/compat | 1 - debian/control | 10 +- debian/copyright | 5 +- debian/gbp.conf | 1 + debian/libpam-fscrypt.dirs | 1 + debian/libpam-fscrypt.install | 1 - debian/rules | 35 +- filesystem/filesystem.go | 425 ++++++++++++++++------ filesystem/filesystem_test.go | 103 +++++- filesystem/mountpoint.go | 449 ++++++++++++++++------- filesystem/mountpoint_test.go | 376 ++++++++++++++++++++ filesystem/path.go | 77 ++-- filesystem/path_test.go | 81 +++++ go.mod | 16 + go.sum | 44 +++ keyring/fs_keyring.go | 326 +++++++++++++++++ keyring/keyring.go | 175 +++++++++ keyring/keyring_test.go | 330 +++++++++++++++++ keyring/user_keyring.go | 251 +++++++++++++ metadata/checks.go | 35 +- metadata/config.go | 14 - metadata/config_test.go | 53 ++- metadata/constants.go | 20 +- metadata/metadata.pb.go | 402 ++++++++++++++------- metadata/metadata.proto | 11 +- metadata/policy.go | 299 ++++++++++++---- metadata/policy_test.go | 66 +++- pam/constants.go | 2 +- pam/login.go | 6 +- pam/pam.c | 5 +- pam/pam.go | 19 +- pam/pam.h | 4 +- pam_fscrypt/config | 6 +- pam_fscrypt/pam_fscrypt.go | 90 ++++- pam_fscrypt/run_fscrypt.go | 5 +- pam_fscrypt/run_test.go | 2 +- security/cache.go | 6 +- security/keyring.go | 209 ----------- security/privileges.go | 27 +- tools.go | 13 + util/errors.go | 4 +- util/util.go | 29 +- util/util_test.go | 7 + 106 files changed, 7738 insertions(+), 1800 deletions(-) create mode 100644 CODE_OF_CONDUCT.md delete mode 100644 Gopkg.lock delete mode 100644 Gopkg.toml create mode 100644 actions/config_test.go create mode 100644 actions/recovery.go create mode 100644 actions/recovery_test.go create mode 100644 cli-tests/README.md create mode 100644 cli-tests/common.sh create mode 100755 cli-tests/run.sh create mode 100644 cli-tests/t_change_passphrase.out create mode 100755 cli-tests/t_change_passphrase.sh create mode 100644 cli-tests/t_encrypt.out create mode 100755 cli-tests/t_encrypt.sh create mode 100644 cli-tests/t_encrypt_custom.out create mode 100755 cli-tests/t_encrypt_custom.sh create mode 100644 cli-tests/t_encrypt_login.out create mode 100755 cli-tests/t_encrypt_login.sh create mode 100644 cli-tests/t_encrypt_raw_key.out create mode 100755 cli-tests/t_encrypt_raw_key.sh create mode 100644 cli-tests/t_lock.out create mode 100755 cli-tests/t_lock.sh create mode 100644 cli-tests/t_not_enabled.out create mode 100755 cli-tests/t_not_enabled.sh create mode 100644 cli-tests/t_not_supported.out create mode 100755 cli-tests/t_not_supported.sh create mode 100644 cli-tests/t_passphrase_hashing.out create mode 100755 cli-tests/t_passphrase_hashing.sh create mode 100644 cli-tests/t_setup.out create mode 100755 cli-tests/t_setup.sh create mode 100644 cli-tests/t_status.out create mode 100755 cli-tests/t_status.sh create mode 100644 cli-tests/t_unlock.out create mode 100755 cli-tests/t_unlock.sh create mode 100644 cli-tests/t_v1_policy.out create mode 100755 cli-tests/t_v1_policy.sh create mode 100644 cli-tests/t_v1_policy_fs_keyring.out create mode 100755 cli-tests/t_v1_policy_fs_keyring.sh delete mode 100644 debian/compat create mode 100644 debian/libpam-fscrypt.dirs create mode 100644 filesystem/path_test.go create mode 100644 go.mod create mode 100644 go.sum create mode 100644 keyring/fs_keyring.go create mode 100644 keyring/keyring.go create mode 100644 keyring/keyring_test.go create mode 100644 keyring/user_keyring.go delete mode 100644 security/keyring.go create mode 100644 tools.go source package fscrypt running git branch -f debian/bullseye origin/debian/bullseye downstream apertis/v2022dev2 0.2.4-2co1 upstream debian/bullseye 0.2.9-1 remote: remote: View merge request for proposed-updates/debian/bullseye/95e3b549: remote: https://gitlab.apertis.org/pkg/fscrypt/-/merge_requests/2 remote: To https://gitlab.apertis.org/pkg/fscrypt.git/ 0d8f37f..baa1714 proposed-updates/debian/bullseye/95e3b549 -> proposed-updates/debian/bullseye/95e3b549 Setting branch apertis/v2022dev2 to point to apertis/v2022dev2 (95e3b54) Looking at apertis/v2022dev2 <- debian/bullseye Submit proposed-updates/debian/bullseye/95e3b549 for merging into apertis/v2022dev2 the updates from debian/bullseye Pushing: Update from debian/bullseye for apertis/v2022dev2 Attempt merging debian/bullseye into apertis/v2022dev2 via proposed-updates/debian/bullseye/95e3b549 Merge done, pushing {proposed_branch} to update the existing MR Pushing: Update from debian/bullseye for apertis/v2022dev2 section_end:1615833445:step_script [0Ksection_start:1615833445:cleanup_file_variables [0K[0K[36;1mCleaning up file based variables[0;m [0;msection_end:1615833446:cleanup_file_variables [0K[32;1mJob succeeded [0;m