Compare commits
	
		
			50 Commits
		
	
	
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
|   | d0160dd96e | ||
|   | eca4c2d31e | ||
|   | 6a91444bd9 | ||
|   | 075fb7c646 | ||
|   | 7f597d024a | ||
|   | 27219666ab | ||
|   | 76022cba36 | ||
|   | 792dc7f6e8 | ||
|   | b5d576255b | ||
|   | 45d1494b5d | ||
|   | 20856a14e9 | ||
|   | a850651f5c | ||
|   | b0a80a042d | ||
|   | 49620e95ec | ||
|   | b4789b9910 | ||
|   | d5ae8a2ad1 | ||
|   | 3a276728e0 | ||
|   | 29d3e0bde2 | ||
|   | 969a036225 | ||
|   | 9767d24510 | ||
|   | c73284ef96 | ||
|   | 0657bf0d25 | ||
|   | 80aad11b02 | ||
|   | 2d9dc654b5 | ||
|   | f46cc83ef7 | ||
|   | cc45b55f89 | ||
|   | 930e69017f | ||
|   | 44912434cf | ||
|   | c7fde9a3da | ||
|   | ffededbf95 | ||
|   | b0efb663f9 | ||
|   | aa69e48125 | ||
|   | 4ba10f1d50 | ||
|   | 38a9e2ff63 | ||
|   | 783af5abac | ||
|   | 75c3b53e31 | ||
|   | c300c180a2 | ||
|   | be8d2ee6e3 | ||
|   | d9ef1bb635 | ||
|   | cfc6991219 | ||
|   | 97ae5af201 | ||
|   | 4c820a0e48 | ||
|   | 9c39b381a5 | ||
|   | 321bb2cd90 | ||
|   | 8c99d817d4 | ||
| 2e1fb4d02b | |||
|   | a2f0afb8bc | ||
|   | 430fa132f2 | ||
|   | 12cd7ce9de | ||
|   | 167acac140 | 
| @@ -4,7 +4,8 @@ | ||||
| test_task: | ||||
|   freebsd_instance: | ||||
|     matrix: | ||||
|       image: freebsd-12-1-release-amd64 | ||||
|       image: freebsd-13-0-release-amd64 | ||||
|       image: freebsd-12-2-release-amd64 | ||||
|       image: freebsd-11-4-release-amd64 | ||||
|   env: | ||||
|     OS: FreeBSD | ||||
|   | ||||
							
								
								
									
										26
									
								
								.github/workflows/ci-alpine-linux.yml
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										26
									
								
								.github/workflows/ci-alpine-linux.yml
									
									
									
									
										vendored
									
									
										Normal file
									
								
							| @@ -0,0 +1,26 @@ | ||||
| name: ci_alpine_linux | ||||
|  | ||||
| on: [push, pull_request] | ||||
|  | ||||
| jobs: | ||||
|  | ||||
|   gcc-musl: | ||||
|     runs-on: ubuntu-latest | ||||
|     container: alpine:latest | ||||
|     steps: | ||||
|       - name: install deps | ||||
|         run: >- | ||||
|           apk --no-cache add \ | ||||
|             build-base \ | ||||
|             meson \ | ||||
|             pkgconf \ | ||||
|             linux-pam \ | ||||
|             linux-pam-dev | ||||
|       - name: checkout | ||||
|         uses: actions/checkout@v2 | ||||
|       - run: meson setup builddir/ | ||||
|         env: | ||||
|           CC: gcc | ||||
|       - run: ninja -C builddir | ||||
|         env: | ||||
|           CC: gcc | ||||
							
								
								
									
										32
									
								
								.github/workflows/ci-ubuntu.yml
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										32
									
								
								.github/workflows/ci-ubuntu.yml
									
									
									
									
										vendored
									
									
										Normal file
									
								
							| @@ -0,0 +1,32 @@ | ||||
| name: ci_ubuntu | ||||
|  | ||||
| on: [push, pull_request] | ||||
|  | ||||
| jobs: | ||||
|  | ||||
|   gcc-glibc: | ||||
|     runs-on: ubuntu-latest | ||||
|     steps: | ||||
|     - uses: actions/checkout@v2 | ||||
|     - run: sudo apt-get update -q | ||||
|     - run: sudo apt-get install -q -y build-essential libpam-dev meson | ||||
|     - run: meson setup builddir/ | ||||
|       env: | ||||
|         CC: gcc | ||||
|     - run: ninja -C builddir | ||||
|       env: | ||||
|         CC: gcc | ||||
|  | ||||
|  | ||||
|   clang-glibc: | ||||
|     runs-on: ubuntu-latest | ||||
|     steps: | ||||
|     - uses: actions/checkout@v2 | ||||
|     - run: sudo apt-get update -q | ||||
|     - run: sudo apt-get install -q -y build-essential clang libpam-dev meson | ||||
|     - run: meson setup builddir/ | ||||
|       env: | ||||
|         CC: clang | ||||
|     - run: ninja -C builddir | ||||
|       env: | ||||
|         CC: clang | ||||
							
								
								
									
										613
									
								
								ChangeLog
									
									
									
									
									
								
							
							
						
						
									
										613
									
								
								ChangeLog
									
									
									
									
									
								
							| @@ -1,3 +1,464 @@ | ||||
| commit eca4c2d31efc29ed653dbcfc3a3cc043d24bd08d | ||||
| Author: William Hubbs <w.d.hubbs@gmail.com> | ||||
| Commit: William Hubbs <w.d.hubbs@gmail.com> | ||||
|  | ||||
|     support/init.d.examples: Do not use @PKG_PREFIX@ in service examples | ||||
|      | ||||
|     I can't think of a reason to do this since these scripts are just | ||||
|     examples. | ||||
|      | ||||
|     This is for #474. | ||||
|  | ||||
| commit 6a91444bd9f7f122f580d1297f33d58d5b518359 | ||||
| Author: Sam James <sam@gentoo.org> | ||||
| Commit: William Hubbs <w.d.hubbs@gmail.com> | ||||
|  | ||||
|     meson: fallback to libcrypt detection outside of pkg-config | ||||
|      | ||||
|     Much like PAM, not all implementations of libcrypt provide a pkg-config | ||||
|     file, and hence we can't find it using the old logic. | ||||
|      | ||||
|     Let's fall back to the standard AC_SEARCH_LIBS-style check if the pkg-config-style | ||||
|     detection fails. | ||||
|      | ||||
|     This fixes finding e.g. musl's libcrypt. | ||||
|      | ||||
|     X-Gentoo-Bug: 827074 | ||||
|     X-Gentoo-Bug-URL: https://bugs.gentoo.org/827074 | ||||
|  | ||||
| commit 075fb7c6465824b51881fa47c6419650011f4e0f | ||||
| Author: Sam James <sam@gentoo.org> | ||||
| Commit: William Hubbs <w.d.hubbs@gmail.com> | ||||
|  | ||||
|     src/rc/rc-selinux.c: fix use of deprecated security_context_t | ||||
|      | ||||
|     It's only a char* and has been deprecated upstream [0]. | ||||
|      | ||||
|     [0] https://github.com/SELinuxProject/selinux/commit/7a124ca27581 | ||||
|      | ||||
|     Fixes: #478 | ||||
|  | ||||
| commit 7f597d024af1612d8a104ed6fe591aae71105220 | ||||
| Author: Sam James <sam@gentoo.org> | ||||
| Commit: William Hubbs <w.d.hubbs@gmail.com> | ||||
|  | ||||
|     meson: only find libcrypt if SELinux and no PAM | ||||
|      | ||||
|     We only need libcrypt if we're building _with_ SELinux and | ||||
|     _without_ PAM. We don't use libcrypt for general SELinux | ||||
|     with PAM. | ||||
|      | ||||
|     This is mostly a correctness change as libcrypt should | ||||
|     generally be available (as opposed to the previous | ||||
|     change which fixed some real-world cases). | ||||
|      | ||||
|     Fixes: f3f0fde861b438c80f99afdd49fe175e9d0a68ca | ||||
|     Fixes: #478 | ||||
|  | ||||
| commit 27219666abf15117c8722dcd716681f7e6e957bf | ||||
| Author: Sam James <sam@gentoo.org> | ||||
| Commit: William Hubbs <w.d.hubbs@gmail.com> | ||||
|  | ||||
|     meson: link against libcrypt for SELinux if no PAM | ||||
|      | ||||
|     We use libcrypt's crypt() if we're _not_ using PAM | ||||
|     in the SELinux code (rc-selinux, specifically). | ||||
|      | ||||
|     X-Gentoo-Bug: 824954 | ||||
|     X-Gentoo-Bug-URL: https://bugs.gentoo.org/824954 | ||||
|     Fixes: https://github.com/openrc/openrc/pull/477 | ||||
|  | ||||
| commit 76022cba36a5281f1da227a40f7fe7d805b85426 | ||||
| Author: Sam James <sam@gentoo.org> | ||||
| Commit: William Hubbs <w.d.hubbs@gmail.com> | ||||
|  | ||||
|     meson: fix pam_misc_dep definition | ||||
|      | ||||
|     X-Gentoo-Bug: 824954 | ||||
|     X-Gentoo-Bug-URL: https://bugs.gentoo.org/824954 | ||||
|     Fixes: https://github.com/OpenRC/openrc/issues/470 | ||||
|     Fixes: https://github.com/OpenRC/openrc/pull/477 | ||||
|  | ||||
| commit 792dc7f6e8f31acace120b9e562412517ccea9d8 | ||||
| Author: Sam James <sam@gentoo.org> | ||||
| Commit: William Hubbs <w.d.hubbs@gmail.com> | ||||
|  | ||||
|     src/librc/librc-daemon.c: add missing include for kill (fix uclibc) | ||||
|      | ||||
|     Fixes: #471 | ||||
|     Fixes: #473 | ||||
|  | ||||
| commit b5d576255bbe7ca3175046540a28d9613d40f9eb | ||||
| Author: Sam James <sam@gentoo.org> | ||||
| Commit: William Hubbs <w.d.hubbs@gmail.com> | ||||
|  | ||||
|     src/librc/librc-misc.c: add missing include for fileno (fix uclibc) | ||||
|      | ||||
|     Fixes: #471 | ||||
|     Fixes: #473 | ||||
|  | ||||
| commit 45d1494b5d741d1f061c5a28e2ef8b506d36249d | ||||
| Author: William Hubbs <w.d.hubbs@gmail.com> | ||||
| Commit: William Hubbs <w.d.hubbs@gmail.com> | ||||
|  | ||||
|     version 0.44.8 | ||||
|  | ||||
| commit 20856a14e9e045fc2ab3d87a2a7f5e1408d1914f | ||||
| Author: William Hubbs <w.d.hubbs@gmail.com> | ||||
| Commit: William Hubbs <w.d.hubbs@gmail.com> | ||||
|  | ||||
|     update ChangeLog | ||||
|  | ||||
| commit a850651f5ce29a37574f7d76ae40ef9e1d2d4a62 | ||||
| Author: William Hubbs <w.d.hubbs@gmail.com> | ||||
| Commit: William Hubbs <w.d.hubbs@gmail.com> | ||||
|  | ||||
|     openrc-init: fix build for selinux | ||||
|      | ||||
|     X-Gentoo-Bug: 821520 | ||||
|     X-Gentoo-Bug-URL: https://bugs.gentoo.org/show_bug.cgi?id=821520 | ||||
|  | ||||
| commit b0a80a042d20d3d0ee4d204c5c96e1538a65575f | ||||
| Author: William Hubbs <w.d.hubbs@gmail.com> | ||||
| Commit: William Hubbs <w.d.hubbs@gmail.com> | ||||
|  | ||||
|     build: pam fix | ||||
|      | ||||
|     Set the HAVE_PAM option if the dependency is found *and* pam is | ||||
|     requested. | ||||
|      | ||||
|     X-Gentoo-Bug: 821211 | ||||
|     X-Gentoo-Bug-URL: https://bugs.gentoo.org/show_bug.cgi?id=821211 | ||||
|  | ||||
| commit 49620e95ec8ecd5d91c554d8e50cdf65df1920b5 | ||||
| Author: William Hubbs <w.d.hubbs@gmail.com> | ||||
| Commit: William Hubbs <w.d.hubbs@gmail.com> | ||||
|  | ||||
|     fix permission of installed version file | ||||
|  | ||||
| commit b4789b99104f08136ad160920388b8d4df000508 | ||||
| Author: William Hubbs <w.d.hubbs@gmail.com> | ||||
| Commit: William Hubbs <w.d.hubbs@gmail.com> | ||||
|  | ||||
|     version 0.44.7 | ||||
|  | ||||
| commit d5ae8a2ad1b66f4f20609b3eadf9968b36133f7a | ||||
| Author: William Hubbs <w.d.hubbs@gmail.com> | ||||
| Commit: William Hubbs <w.d.hubbs@gmail.com> | ||||
|  | ||||
|     update ChangeLog | ||||
|  | ||||
| commit 3a276728e079aa9f44ab19cf5858e1eac2670462 | ||||
| Author: Kerin Millar <kfm@plushkava.net> | ||||
| Commit: William Hubbs <w.d.hubbs@gmail.com> | ||||
|  | ||||
|     init.d/s6-svscan.in: make sure $command exists | ||||
|      | ||||
|     While the s6-svscan runscript belongs to OpenRC, the user is required to | ||||
|     install s6 before it can actually be used, potentially leading to | ||||
|     confusion. Check for the existence of $command in start_pre and, if it does not | ||||
|     exist, bail out with an error that makes this observation. | ||||
|      | ||||
|     X-Gentoo-Bug: 816978 | ||||
|     X-Gentoo-Bug-URL: https://bugs.gentoo.org/show_bug.cgi?id=816978 | ||||
|  | ||||
| commit 29d3e0bde237e13f8c5083d2f0db50652061bf2c | ||||
| Author: William Hubbs <w.d.hubbs@gmail.com> | ||||
| Commit: William Hubbs <w.d.hubbs@gmail.com> | ||||
|  | ||||
|     selinux build fix | ||||
|  | ||||
| commit 969a0362252a7f9459337ac564ebf5f0c2c74476 | ||||
| Author: William Hubbs <w.d.hubbs@gmail.com> | ||||
| Commit: William Hubbs <w.d.hubbs@gmail.com> | ||||
|  | ||||
|     fix bug in pam build tests | ||||
|  | ||||
| commit 9767d24510e1d52b86a2051c25af2fa5928e7319 | ||||
| Author: William Hubbs <w.d.hubbs@gmail.com> | ||||
| Commit: William Hubbs <w.d.hubbs@gmail.com> | ||||
|  | ||||
|     support older pam versions | ||||
|      | ||||
|     Some distros are still using versions of pam which do not create | ||||
|     *.pc files, so we need fallback logic for that situation. | ||||
|  | ||||
| commit c73284ef963cd6b3c47dd007a45f5c13c5dafcb0 | ||||
| Author: William Hubbs <w.d.hubbs@gmail.com> | ||||
| Commit: William Hubbs <w.d.hubbs@gmail.com> | ||||
|  | ||||
|     build: fix pam and pam_misc dependencies | ||||
|      | ||||
|     Pam generates pkgconfig files now, so meson can use them to find the pam | ||||
|     dependencies. | ||||
|  | ||||
| commit 0657bf0d25a460b4b56579984eb326302f3bf121 | ||||
| Author: William Hubbs <w.d.hubbs@gmail.com> | ||||
| Commit: William Hubbs <w.d.hubbs@gmail.com> | ||||
|  | ||||
|     separate github actions based on OS | ||||
|      | ||||
|     This fixes #466. | ||||
|  | ||||
| commit 80aad11b02d575d5a949914bb6942b92fc15e834 | ||||
| Author: Sam James <sam@gentoo.org> | ||||
| Commit: William Hubbs <w.d.hubbs@gmail.com> | ||||
|  | ||||
|     add github action to build on several linux platforms | ||||
|      | ||||
|     This github action runs a build on each of the following platforms on a | ||||
|     push or pull request. | ||||
|      | ||||
|     - Ubuntu LTS with gcc and glibc | ||||
|     - Ubuntu LTS with clang and glibc | ||||
|     - Alpine with gcc and musl | ||||
|      | ||||
|     This fixes #463. | ||||
|  | ||||
| commit 2d9dc654b58c4a523b01097369ce94708c8cf43a | ||||
| Author: Sam James <sam@gentoo.org> | ||||
| Commit: William Hubbs <w.d.hubbs@gmail.com> | ||||
|  | ||||
|     .cirrus.yml: update FreeBSD images | ||||
|  | ||||
| commit f46cc83ef7100ce713c4e616524e63371825e153 | ||||
| Author: William Hubbs <w.d.hubbs@gmail.com> | ||||
| Commit: William Hubbs <w.d.hubbs@gmail.com> | ||||
|  | ||||
|     move rc_bindir and rc_sbindir definitions to the top level | ||||
|  | ||||
| commit cc45b55f895d0c21b5ac3e5a65b0bf00f76adeb7 | ||||
| Author: Sam James <sam@gentoo.org> | ||||
| Commit: William Hubbs <w.d.hubbs@gmail.com> | ||||
|  | ||||
|     checkpath: fix allocation size of path buffer | ||||
|      | ||||
|     strlen's return value isn't enough to be used | ||||
|     directly for (x)malloc; it doesn't include | ||||
|     the null byte at the end of the string. | ||||
|      | ||||
|     X-Gentoo-Bug: 816900 | ||||
|     X-Gentoo-Bug-URL: https://bugs.gentoo.org/816900 | ||||
|     Fixes: #459 | ||||
|     Fixes: #462 | ||||
|  | ||||
| commit 930e69017f95766c662763c2445e2827eb037fd7 | ||||
| Author: William Hubbs <w.d.hubbs@gmail.com> | ||||
| Commit: William Hubbs <w.d.hubbs@gmail.com> | ||||
|  | ||||
|     version 0.44.6 | ||||
|  | ||||
| commit 44912434cfe139a1953bbd3b2cde7e0b2bce0ae7 | ||||
| Author: William Hubbs <w.d.hubbs@gmail.com> | ||||
| Commit: William Hubbs <w.d.hubbs@gmail.com> | ||||
|  | ||||
|     update ChangeLog | ||||
|  | ||||
| commit c7fde9a3dab01d30d16f9907f7cce00799f92821 | ||||
| Author: William Hubbs <w.d.hubbs@gmail.com> | ||||
| Commit: William Hubbs <w.d.hubbs@gmail.com> | ||||
|  | ||||
|     fix build for selinux | ||||
|      | ||||
|     I would like to thank jpds@protonmail.com for the patch. | ||||
|      | ||||
|     X-Gentoo-Bug: 815847 | ||||
|     X-Gentoo-Bug-URL: https://bugs.gentoo.org/show_bug.cgi?id=815847 | ||||
|  | ||||
| commit ffededbf955e39add0fbbacc22f2c0d7a8901b35 | ||||
| Author: William Hubbs <w.d.hubbs@gmail.com> | ||||
| Commit: William Hubbs <w.d.hubbs@gmail.com> | ||||
|  | ||||
|     version 0.44.5 | ||||
|  | ||||
| commit b0efb663f9ed84627c302a2d051fc5a74fb0c2b6 | ||||
| Author: William Hubbs <w.d.hubbs@gmail.com> | ||||
| Commit: William Hubbs <w.d.hubbs@gmail.com> | ||||
|  | ||||
|     update ChangeLog | ||||
|  | ||||
| commit aa69e48125df7684ab3b77eaf9013f8c126b1fca | ||||
| Author: William Hubbs <w.d.hubbs@gmail.com> | ||||
| Commit: William Hubbs <w.d.hubbs@gmail.com> | ||||
|  | ||||
|     build: fix rootprefix | ||||
|      | ||||
|     This fixes #438. | ||||
|  | ||||
| commit 4ba10f1d5074a45b4ddd96d2d404842fa3b38e63 | ||||
| Author: William Hubbs <w.d.hubbs@gmail.com> | ||||
| Commit: William Hubbs <w.d.hubbs@gmail.com> | ||||
|  | ||||
|     link runscript with audit | ||||
|  | ||||
| commit 38a9e2ff630b0e0bd261afb2e66072f904b5d608 | ||||
| Author: William Hubbs <w.d.hubbs@gmail.com> | ||||
| Commit: William Hubbs <w.d.hubbs@gmail.com> | ||||
|  | ||||
|     link openrc-run with audit and libpam_misc | ||||
|  | ||||
| commit 783af5abac209c7745fd5c06dc89b2f5dfa3b313 | ||||
| Author: William Hubbs <w.d.hubbs@gmail.com> | ||||
| Commit: William Hubbs <w.d.hubbs@gmail.com> | ||||
|  | ||||
|     version 0.44.4 | ||||
|  | ||||
| commit 75c3b53e3195f2d3541a7d83920667d1c4b14337 | ||||
| Author: William Hubbs <w.d.hubbs@gmail.com> | ||||
| Commit: William Hubbs <w.d.hubbs@gmail.com> | ||||
|  | ||||
|     update ChangeLog | ||||
|  | ||||
| commit c300c180a2a7dbefb46272c2acac6462372b8eb0 | ||||
| Author: Natanael Copa <ncopa@alpinelinux.org> | ||||
| Commit: William Hubbs <w.d.hubbs@gmail.com> | ||||
|  | ||||
|     hide error when migrating /var/run to /run | ||||
|      | ||||
|     The script tries to copy non-existing files. We simply hide the error | ||||
|      | ||||
|     http://bugs.alpinelinux.org/issues/3160 | ||||
|     This fixes #451. | ||||
|  | ||||
| commit be8d2ee6e35a6ea504e6a3cf725b8804dd2da617 | ||||
| Author: Natanael Copa <ncopa@alpinelinux.org> | ||||
| Commit: William Hubbs <w.d.hubbs@gmail.com> | ||||
|  | ||||
|     force root to be rw before localmount | ||||
|      | ||||
|     The original service that pulled in root remount was mtab which | ||||
|     is not part of OpenRC. | ||||
|      | ||||
|     This fixes #449. | ||||
|  | ||||
| commit d9ef1bb6355c62e335a972f203806210de68912f | ||||
| Author: Aaditya Bagga <aaditya_gnulinux@zoho.com> | ||||
| Commit: William Hubbs <w.d.hubbs@gmail.com> | ||||
|  | ||||
|     [runit integration] give a bit of time to start the service | ||||
|      | ||||
|     Currently, we run sv start immediately after linking the service. | ||||
|     The runsv process may not be up at the moment, as a result of which | ||||
|     openrc will mark the service as stopped, even though it may be brought up | ||||
|     by runit at the next scan. | ||||
|      | ||||
|     This is documented in the gentoo wiki: | ||||
|     https://wiki.gentoo.org/wiki/Runit#OpenRC.27s_runit_integration_feature | ||||
|      | ||||
|     This PR adds a timeout so that correct process state can be reported. | ||||
|      | ||||
|     Before: | ||||
|      * Starting netdata-runit ... | ||||
|     fail: /run/openrc/sv/netdata: runsv not running | ||||
|      * Failed to start netdata-runit | ||||
|      | ||||
|     After: | ||||
|      * Starting netdata-runit ... | ||||
|     fail: /run/openrc/sv/netdata: runsv not running | ||||
|     ok: run: /run/openrc/sv/netdata: (pid 9042) 0s | ||||
|      | ||||
|     This fixes #253. | ||||
|  | ||||
| commit cfc699121960a8298c8e9519239c149f31a35ef0 | ||||
| Author: Jakub Jirutka <jakub@jirutka.cz> | ||||
| Commit: William Hubbs <w.d.hubbs@gmail.com> | ||||
|  | ||||
|     Fix undeclared UT_LINESIZE | ||||
|      | ||||
|     Fix the following error: | ||||
|      | ||||
|             broadcast.c:41:21: error: '__UT_LINESIZE' undeclared (first use in this function); did you mean 'UT_LINESIZE'? | ||||
|              #define UT_LINESIZE __UT_LINESIZE | ||||
|                               ^~~~~~~~~~ | ||||
|      | ||||
|     Constant UT_LINESIZE is defined in <utmp.h> provided by musl. | ||||
|  | ||||
| commit 97ae5af2017df2667e0c79d7dac3706b3a93c6cc | ||||
| Author: Sören Tempel <soeren+git@soeren-tempel.net> | ||||
| Commit: William Hubbs <w.d.hubbs@gmail.com> | ||||
|  | ||||
|     rc-mount: make timeout invocation compatible with busybox timeout | ||||
|      | ||||
|     Busybox timeout does not support the `-k` flag. As such, invoking fuser | ||||
|     from do_unmount never worked without this patch. This went unnoticed as | ||||
|     standard error is redirected to /dev/null. This patch fixes this by | ||||
|     simply removing the incompatible `-k` flag. | ||||
|      | ||||
|     [Ariadne: the `-k` is redundant anyway, since we are sending the KILL | ||||
|      signal to begin with.] | ||||
|  | ||||
| commit 4c820a0e48301f997911a196d6159670dad68296 | ||||
| Author: William Hubbs <w.d.hubbs@gmail.com> | ||||
| Commit: William Hubbs <w.d.hubbs@gmail.com> | ||||
|  | ||||
|     version 0.44.3 | ||||
|  | ||||
| commit 9c39b381a5185325dc1359b6001f00e60732ec71 | ||||
| Author: William Hubbs <w.d.hubbs@gmail.com> | ||||
| Commit: William Hubbs <w.d.hubbs@gmail.com> | ||||
|  | ||||
|     update ChangeLog | ||||
|  | ||||
| commit 321bb2cd90cf673d03175c56bf1cecfcef02bd49 | ||||
| Author: Ariadne Conill <ariadne@dereferenced.org> | ||||
| Commit: William Hubbs <w.d.hubbs@gmail.com> | ||||
|  | ||||
|     fix build under musl 1.2 on 32 bit systems | ||||
|      | ||||
|     Since musl 1.2 time_t is a 64 bit value, even on 32 bit systems. A | ||||
|     hotfix for printing the value is simply using PRIu64 from inttypes.h | ||||
|     in the format string. | ||||
|      | ||||
|     This fixes #446. | ||||
|  | ||||
| commit 8c99d817d48bc879504b8973d868e1718f4e7d12 | ||||
| Author: Ariadne Conill <ariadne@dereferenced.org> | ||||
| Commit: William Hubbs <w.d.hubbs@gmail.com> | ||||
|  | ||||
|     fix trailing whitespace in tools/meson_runlevels.sh | ||||
|  | ||||
| commit 2e1fb4d02b1ad294394107642aed07f057e6a8b9 | ||||
| Author: artoo <artoo@artixlinux.org> | ||||
| Commit: William Hubbs <w.d.hubbs@gmail.com> | ||||
|  | ||||
|     meson: fix symlinks with sysvinit | ||||
|  | ||||
| commit a2f0afb8bcb024c8d532d8be8b855d72f999aab8 | ||||
| Author: William Hubbs <w.d.hubbs@gmail.com> | ||||
| Commit: William Hubbs <w.d.hubbs@gmail.com> | ||||
|  | ||||
|     version 0.44.2 | ||||
|  | ||||
| commit 430fa132f2596de126f8461f361333c89b794945 | ||||
| Author: William Hubbs <w.d.hubbs@gmail.com> | ||||
| Commit: William Hubbs <w.d.hubbs@gmail.com> | ||||
|  | ||||
|     update ChangeLog | ||||
|  | ||||
| commit 12cd7ce9dea73926c203c5d64e425d51e209425a | ||||
| Author: William Hubbs <w.d.hubbs@gmail.com> | ||||
| Commit: William Hubbs <w.d.hubbs@gmail.com> | ||||
|  | ||||
|     build: install pam files | ||||
|  | ||||
| commit 167acac1407782d454be2cc413431c00498e94ed | ||||
| Author: William Hubbs <w.d.hubbs@gmail.com> | ||||
| Commit: William Hubbs <w.d.hubbs@gmail.com> | ||||
|  | ||||
|     meson: typo fix | ||||
|  | ||||
| commit f839ba27c5e52990ca9c6431bba4455a1124f81d | ||||
| Author: William Hubbs <w.d.hubbs@gmail.com> | ||||
| Commit: William Hubbs <w.d.hubbs@gmail.com> | ||||
|  | ||||
|     version 0.44.1 | ||||
|  | ||||
| commit 80dd6aac5fcb1f17b86d35db2babe487b90d7081 | ||||
| Author: William Hubbs <w.d.hubbs@gmail.com> | ||||
| Commit: William Hubbs <w.d.hubbs@gmail.com> | ||||
|  | ||||
|     update ChangeLog | ||||
|  | ||||
| commit 0d00b8d8abe33c4d824446ed989e8cc3166590b4 | ||||
| Author: William Hubbs <w.d.hubbs@gmail.com> | ||||
| Commit: William Hubbs <w.d.hubbs@gmail.com> | ||||
| @@ -575,155 +1036,3 @@ Commit: William Hubbs <w.d.hubbs@gmail.com> | ||||
|      | ||||
|     This fixes #375 and allows us to not add another level of indentation in | ||||
|     the supervisor loop. | ||||
|  | ||||
| commit 57d9528a0bc64366ea3e0fbbb21b1282ce5c1212 | ||||
| Author: Dermot Bradley <dermot_bradley@yahoo.com> | ||||
| Commit: William Hubbs <w.d.hubbs@gmail.com> | ||||
|  | ||||
|     Remove warning when osclock init.d script runs | ||||
|      | ||||
|     Currently when osclock is enabled as a init.d service the following | ||||
|     messages appear during boot when osclock starts: | ||||
|      | ||||
|       * The command variable is undefined. | ||||
|       * There is nothing for osclock to start. | ||||
|       * If this is what you intend, please write a start function. | ||||
|       * This will become a failure in a future release. | ||||
|      | ||||
|     osclock is activated whenever a machine's system clock is automatically | ||||
|     configured from a RTC by the kernel and the osclock's only purpose is to | ||||
|     satisfy the "clock" dependency defined by other init.d services. | ||||
|      | ||||
|     Adding a stub start() function prevents OpenRC from showing warnings but | ||||
|     continues to ensure that the osclock service still does not actually do | ||||
|     anything. | ||||
|      | ||||
|     This fixes #377. | ||||
|  | ||||
| commit 6ce48f124aea593b77163d6f198d18bbe9093068 | ||||
| Author: Calvin Montgomery <calzoneman@gmail.com> | ||||
| Commit: William Hubbs <w.d.hubbs@gmail.com> | ||||
|  | ||||
|     man/openrc.8: populate OPTIONS from --help output | ||||
|      | ||||
|     This fixes #378. | ||||
|  | ||||
| commit 00ea2166081856774f24f7243126f701c7fe6db9 | ||||
| Author: Michael Orlitzky <michael@orlitzky.com> | ||||
| Commit: William Hubbs <w.d.hubbs@gmail.com> | ||||
|  | ||||
|     src/rc/checkpath.c: replace mkdir() with mkdirat(). | ||||
|      | ||||
|     The do_check() function recently gained some defenses against symlink | ||||
|     replacement attacks that involve the use of *at functions in place of | ||||
|     their vanilla counterparts; openat() instead of open(), for example. | ||||
|     One opportunity to replace mkdir() with mkdirat() was missed, however, | ||||
|     and this commit replaces it. | ||||
|      | ||||
|     This fixes #386. | ||||
|  | ||||
| commit ac7ca6d901d72b1bc4ed13be5438e825c07fc0da | ||||
| Author: Michael Orlitzky <michael@orlitzky.com> | ||||
| Commit: William Hubbs <w.d.hubbs@gmail.com> | ||||
|  | ||||
|     src/rc/checkpath.c: fix typo "synbolic" -> "symbolic". | ||||
|  | ||||
| commit 47819f004cec3cc3e911ba69003b8b52bacbebef | ||||
| Author: Johannes Heimansberg <git@jhe.dedyn.io> | ||||
| Commit: William Hubbs <w.d.hubbs@gmail.com> | ||||
|  | ||||
|     start-stop-daemon, supervise-daemon: fix parsing of usernames passed via --user that start with a number | ||||
|      | ||||
|     start-stop-daemon and supervise-daemon parse usernames and group names | ||||
|     passed via the --user argument as numeric UID/GID if they start with a | ||||
|     number (e.g. user "4foo" will be treated as UID 4). This results in the | ||||
|     process that is being started to run under a totally unexpected user if | ||||
|     that UID exists. | ||||
|      | ||||
|     Even though the result of the sscanf calls are tested for a result of | ||||
|     exactly 1, which means exactly one value was extracted, because sscanf's | ||||
|     format string only contains only one placeholder, it will never return | ||||
|     a value greater than 1, even if there are still characters left to be | ||||
|     parsed. This causes start-stop-daemon and supervise-daemon to assume | ||||
|     that usernames starting with a number are just that number. Adding a | ||||
|     second placeholder "%1s" to the format string, which matches a string of | ||||
|     length 1, makes sure that sscanf can distinguish between pure numbers | ||||
|     (in which case it will return 1) and strings either starting with a | ||||
|     number (in which case it will return 2) and any other string (in which | ||||
|     case it will return 0). | ||||
|      | ||||
|     This fixes #379. | ||||
|     This fixes #380. | ||||
|  | ||||
| commit 0fab3e837b45021fdcc02a71873c3c245ce96080 | ||||
| Author: William Hubbs <w.d.hubbs@gmail.com> | ||||
| Commit: William Hubbs <w.d.hubbs@gmail.com> | ||||
|  | ||||
|     bootmisc: allow sysvinit compatibility  during shutdown | ||||
|      | ||||
|     Use "halt -w" to write the halt record if it exists. | ||||
|     Otherwise use openrc-shutdown. | ||||
|      | ||||
|     This fixes #336. | ||||
|  | ||||
| commit 38aaba28ee86602e29d8a31f155dfa72f5481e68 | ||||
| Author: William Hubbs <w.d.hubbs@gmail.com> | ||||
| Commit: William Hubbs <w.d.hubbs@gmail.com> | ||||
|  | ||||
|     scripts/shutdown.in: fix sysvinit compatible shutdown | ||||
|      | ||||
|     X-Gentoo-Bug: https://bugs.gentoo.org/755422 | ||||
|  | ||||
| commit 3ed4126a31406124ae8042fc3d4c0bf963d6961e | ||||
| Author: William Hubbs <w.d.hubbs@gmail.com> | ||||
| Commit: William Hubbs <w.d.hubbs@gmail.com> | ||||
|  | ||||
|     update news for 0.43 with info on checkpath fix | ||||
|  | ||||
| commit aa0fdf6d08b987dfcabebf5b8d05beff015ad8f4 | ||||
| Author: Lars Wendler <polynomial-c@gentoo.org> | ||||
| Commit: William Hubbs <w.d.hubbs@gmail.com> | ||||
|  | ||||
|     start-stop-daemon: Don't segfault if --exec was given a non-existing file name | ||||
|      | ||||
|       Starting program: /sbin/start-stop-daemon --start --exec i-dont-exist | ||||
|      | ||||
|       Program received signal SIGSEGV, Segmentation fault. | ||||
|       0x0000555555559053 in main (argc=1, argv=0x7fffffffdc20) | ||||
|           at start-stop-daemon.c:631 | ||||
|       631                         *exec_file ? exec_file : exec); | ||||
|      | ||||
|     This fixes #385. | ||||
|  | ||||
| commit b6fef599bf8493480664b766040fa9b0d4b1e335 | ||||
| Author: William Hubbs <w.d.hubbs@gmail.com> | ||||
| Commit: William Hubbs <w.d.hubbs@gmail.com> | ||||
|  | ||||
|     checkpath: fix CVE-2018-21269 | ||||
|      | ||||
|     This walks the directory path to the file we are going to manipulate to make | ||||
|     sure that when we create the file and change the ownership and permissions | ||||
|     we are working on the same file. | ||||
|     Also, all non-terminal symbolic links must be owned by root. This will | ||||
|     keep a non-root user from making a symbolic link as described in the | ||||
|     bug. If root creates the symbolic link, it is assumed to be trusted. | ||||
|      | ||||
|     On non-linux platforms, we no longer follow non-terminal symbolic links | ||||
|     by default. If you need to do that, add the -s option on the checkpath | ||||
|     command line, but keep in mind that this is not secure. | ||||
|      | ||||
|     This fixes #201. | ||||
|  | ||||
| commit aac1734a70b60da97d4d24930f1902ca46894b44 | ||||
| Author: Julien Surloppe <julien@surloppe.fr> | ||||
| Commit: Mike Frysinger <vapier@gmail.com> | ||||
|  | ||||
|     Update user-guide.md | ||||
|      | ||||
|     Add missing underscore. | ||||
|  | ||||
| commit 2355f1a3f2a4fd62cac6d9af0e94c8731acd4c0f | ||||
| Author: William Hubbs <w.d.hubbs@gmail.com> | ||||
| Commit: William Hubbs <w.d.hubbs@gmail.com> | ||||
|  | ||||
|     supervise-daemon: only log debug logs when verbose mode is active | ||||
|   | ||||
| @@ -1,3 +1,3 @@ | ||||
| NAME=		openrc | ||||
| VERSION=	0.44.1 | ||||
| VERSION=	0.44.8 | ||||
| PKG=		${NAME}-${VERSION} | ||||
|   | ||||
| @@ -113,8 +113,10 @@ migrate_to_run() | ||||
|  		rm $src | ||||
|  	elif [ ! -L $src -a -d $src ]; then | ||||
|  		ebegin "Migrating $src to $dst" | ||||
|  		if ! rmdir $src 2>/dev/null; then | ||||
|  			cp -a $src/* $dst/ | ||||
|  			rm -rf $src | ||||
|  		fi | ||||
|  		eend $? | ||||
|  	fi | ||||
|  	# If $src doesn't exist at all, just run this | ||||
|   | ||||
| @@ -13,9 +13,9 @@ description="Mounts disks and swap according to /etc/fstab." | ||||
|  | ||||
| depend() | ||||
| { | ||||
| 	need fsck | ||||
| 	use lvm modules root | ||||
| 	after clock lvm modules root | ||||
| 	need fsck root | ||||
| 	use lvm modules | ||||
| 	after clock lvm modules | ||||
| 	keyword -docker -jail -lxc -prefix -systemd-nspawn -vserver | ||||
| } | ||||
|  | ||||
|   | ||||
| @@ -21,9 +21,13 @@ depend() | ||||
|  | ||||
| start_pre() | ||||
| { | ||||
| 	if [ ! -e "$command" ]; then | ||||
| 		eerror "$command is missing (please install s6)" | ||||
| 	else | ||||
| 		einfo "Creating s6 scan directory" | ||||
| 		checkpath -d -m 0755 "$RC_SVCDIR"/s6-scan | ||||
| 	return $? | ||||
| 	fi | ||||
| 	return | ||||
| } | ||||
|  | ||||
| stop_post() | ||||
|   | ||||
							
								
								
									
										57
									
								
								meson.build
									
									
									
									
									
								
							
							
						
						
									
										57
									
								
								meson.build
									
									
									
									
									
								
							| @@ -1,5 +1,5 @@ | ||||
| project('OpenRC', 'c', | ||||
|   version : '0.44.1', | ||||
|   version : '0.44.8', | ||||
|   license: 'BSD-2', | ||||
|   default_options : [ | ||||
|     'c_std=c99', | ||||
| @@ -42,17 +42,20 @@ else | ||||
|   os = option_os | ||||
| endif | ||||
|  | ||||
| pam = get_option('pam') | ||||
| if pam | ||||
|   libpam = cc.find_library('pam') | ||||
|   libpam_misc = cc.find_library('pam_misc') | ||||
| pam_dep = dependency('pam', required: false) | ||||
| if not pam_dep.found() | ||||
|   pam_dep = cc.find_library('pam', required: false) | ||||
| endif | ||||
| if pam_dep.found() and get_option('pam') | ||||
|   cc_pam_flags = '-DHAVE_PAM' | ||||
| else | ||||
|   libpam = [] | ||||
|   libpam_misc = [] | ||||
|   cc_pam_flags = [] | ||||
| endif | ||||
|  | ||||
| if not pam_dep.found() and get_option('pam') | ||||
|   error('Pam was requested but could not be located') | ||||
|   endif | ||||
|  | ||||
| option_pkg_prefix = get_option('pkg_prefix') | ||||
| if option_pkg_prefix == '' | ||||
|   if os == 'Dragonfly' or os == 'FreeBSD' | ||||
| @@ -72,26 +75,45 @@ else | ||||
|   split_usr = get_option('split-usr') == 'true' | ||||
| endif | ||||
|  | ||||
| rootprefix_default = split_usr ? '/' : '/usr' | ||||
| rootprefix_path = get_option('rootprefix') | ||||
| rootprefix = rootprefix_path != '' ? rootprefix_path : rootprefix_default | ||||
| rootprefix = get_option('rootprefix') | ||||
| rootprefix_default = '/' | ||||
| if rootprefix == '' | ||||
| rootprefix = rootprefix_default | ||||
| endif | ||||
|  | ||||
| bindir = rootprefix / get_option('bindir') | ||||
| libdir = rootprefix / get_option('libdir') | ||||
| if os == 'Linux' and split_usr | ||||
|   libexecpath = 'lib' | ||||
| else | ||||
|   libexecpath = get_option('libexecdir') | ||||
| libexecdir = get_option('libexecdir') | ||||
| if os == 'Linux' and libexecdir == 'libexec' | ||||
|   libexecdir = 'lib' | ||||
| endif | ||||
| libexecdir = split_usr ? rootprefix / libexecpath : | ||||
|   get_option('prefix') / libexecpath | ||||
| libexecdir = rootprefix / libexecdir | ||||
| rc_libexecdir = libexecdir / 'rc' | ||||
| rc_bindir = rc_libexecdir / 'bin' | ||||
| rc_sbindir = rc_libexecdir / 'sbin' | ||||
| sbindir = rootprefix / get_option('sbindir') | ||||
|  | ||||
| crypt_dep = [] | ||||
|  | ||||
| selinux_dep = dependency('libselinux', required : get_option('selinux')) | ||||
| pam_misc_dep = [] | ||||
| if selinux_dep.found() | ||||
|   cc_selinux_flags = '-DHAVE_SELINUX' | ||||
|   if pam_dep.found() and get_option('pam') | ||||
|     pam_misc_dep = dependency('pam_misc', required: false) | ||||
|     if not pam_misc_dep.found() | ||||
|       pam_misc_dep = cc.find_library('pam_misc', required: false) | ||||
|     endif | ||||
|     if not pam_misc_dep.found() and get_option('pam') | ||||
|       error('Pam was requested but could not be located') | ||||
|     endif | ||||
|   else | ||||
|     crypt_dep = dependency('libcrypt', required : false) | ||||
|     if not crypt_dep.found() | ||||
|       crypt_dep = cc.find_library('crypt', required : true) | ||||
|     endif | ||||
|   endif | ||||
| else | ||||
|   cc_selinux_flags = [] | ||||
| endif | ||||
|  | ||||
| @@ -164,6 +186,9 @@ subdir('etc') | ||||
| subdir('init.d') | ||||
| subdir('local.d') | ||||
| subdir('man') | ||||
| if get_option('pam') | ||||
| subdir('pam') | ||||
|   endif | ||||
| if get_option('pkgconfig') | ||||
| subdir('pkgconfig') | ||||
|   endif | ||||
|   | ||||
							
								
								
									
										9
									
								
								pam/meson.build
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										9
									
								
								pam/meson.build
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,9 @@ | ||||
| pam_dir =	get_option('sysconfdir') / 'pam.d' | ||||
|  | ||||
| pam_files = [ | ||||
|   'start-stop-daemon', | ||||
|   'supervise-daemon', | ||||
|   ] | ||||
|  | ||||
| install_data(pam_files, | ||||
|   install_dir : pam_dir) | ||||
							
								
								
									
										6
									
								
								pam/start-stop-daemon
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										6
									
								
								pam/start-stop-daemon
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,6 @@ | ||||
| #%PAM-1.0 | ||||
|  | ||||
| auth            required        pam_permit.so | ||||
| account         required        pam_permit.so | ||||
| password        required        pam_deny.so | ||||
| session         optional        pam_limits.so | ||||
							
								
								
									
										6
									
								
								pam/supervise-daemon
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										6
									
								
								pam/supervise-daemon
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,6 @@ | ||||
| #%PAM-1.0 | ||||
|  | ||||
| auth            required        pam_permit.so | ||||
| account         required        pam_permit.so | ||||
| password        required        pam_deny.so | ||||
| session         optional        pam_limits.so | ||||
| @@ -8,12 +8,12 @@ sbindir="$2" | ||||
| binaries=" halt poweroff rc-sstat reboot shutdown" | ||||
| for f in $binaries; do | ||||
| 	if [ -x "${DESTDIR}${rc_libexecdir}/bin/${f}"  ]; then | ||||
| 		ln -snf "${DESTDIR}${rc_libexecdir}/bin/${f}" \ | ||||
| 		ln -snf "${rc_libexecdir}/bin/${f}" \ | ||||
| 			"${DESTDIR}${sbindir}/${f}" | ||||
| 	fi | ||||
| done | ||||
| # sysvinit is active when halt exits | ||||
| if [ -x "${DESTDIR}${rc_libexecdir}/bin/halt"  ]; then | ||||
| 	ln -snf "${DESTDIR}${sbindir}/openrc-init" \ | ||||
| 	ln -snf "${sbindir}/openrc-init" \ | ||||
| 		"${DESTDIR}${sbindir}/init" | ||||
| fi | ||||
|   | ||||
| @@ -48,7 +48,7 @@ do_unmount() | ||||
| 		retry=4 # Effectively TERM, sleep 1, TERM, sleep 1, KILL, sleep 1 | ||||
| 		while ! LC_ALL=C $cmd "$mnt" 2>/dev/null; do | ||||
| 			if command -v fuser >/dev/null 2>&1; then | ||||
| 				pids="$(timeout -k 10 -s KILL "${rc_fuser_timeout:-60}" \ | ||||
| 				pids="$(timeout -s KILL "${rc_fuser_timeout:-60}" \ | ||||
| 					fuser $f_opts "$mnt" 2>/dev/null)" | ||||
| 			fi | ||||
| 			case " $pids " in | ||||
|   | ||||
							
								
								
									
										16
									
								
								sh/runit.sh
									
									
									
									
									
								
							
							
						
						
									
										16
									
								
								sh/runit.sh
									
									
									
									
									
								
							| @@ -20,8 +20,20 @@ runit_start() | ||||
| 	service_link="${RC_SVCDIR}/sv/${service_path##*/}" | ||||
| 	ebegin "Starting ${name:-$RC_SVCNAME}" | ||||
| 	ln -snf "${service_path}" "${service_link}" | ||||
| 	sv start "${service_link}" > /dev/null 2>&1 | ||||
| 	eend $? "Failed to start ${name:-$RC_SVCNAME}" | ||||
| 	local i=0 retval=1 | ||||
| 	# it can take upto 5 seconds for runsv to start | ||||
| 	while [ $i -lt 6 ] ; do | ||||
| 		if sv start "${service_link}" > /dev/null 2>&1; then | ||||
| 			retval=0 | ||||
| 			break | ||||
| 		fi | ||||
| 		sleep 1 && i=$(expr $i + 1) | ||||
| 	done | ||||
| 	if [ $retval -eq 1 ]; then | ||||
| 		# clean up the link else sv will keep on trying | ||||
| 		rm "${service_link}" | ||||
| 	fi | ||||
| 	eend $retval "Failed to start ${name:-$RC_SVCNAME}" | ||||
| } | ||||
|  | ||||
| runit_stop() | ||||
|   | ||||
| @@ -15,6 +15,8 @@ | ||||
|  *    except according to the terms contained in the LICENSE file. | ||||
|  */ | ||||
|  | ||||
| #include <signal.h> | ||||
|  | ||||
| #include "queue.h" | ||||
| #include "librc.h" | ||||
|  | ||||
|   | ||||
| @@ -16,6 +16,7 @@ | ||||
|  */ | ||||
|  | ||||
| #include <fnmatch.h> | ||||
| #include <stdio.h> | ||||
|  | ||||
| #include "queue.h" | ||||
| #include "librc.h" | ||||
|   | ||||
| @@ -22,6 +22,7 @@ | ||||
| #include <time.h> | ||||
| #include <unistd.h> | ||||
| #include <stdio.h> | ||||
| #include <utmp.h> | ||||
| #include <utmpx.h> | ||||
| #include <pwd.h> | ||||
| #include <fcntl.h> | ||||
|   | ||||
| @@ -151,7 +151,7 @@ static char *clean_path(char *path) | ||||
| 	char *ch; | ||||
| 	char *ch2; | ||||
| 	char *str; | ||||
| 	str = xmalloc(strlen(path)); | ||||
| 	str = xmalloc(strlen(path) + 1); | ||||
| 	ch = path; | ||||
| 	ch2 = str; | ||||
| 	while (true) { | ||||
|   | ||||
| @@ -2,7 +2,7 @@ rc_misc_c = files([ | ||||
|   'rc-misc.c', | ||||
|   ]) | ||||
|  | ||||
| rc_plugin_c = ([ | ||||
| rc_plugin_c = files([ | ||||
|   'rc-plugin.c', | ||||
|   ]) | ||||
|  | ||||
| @@ -14,7 +14,7 @@ usage_c = files([ | ||||
|   '_usage.c', | ||||
|   ]) | ||||
|  | ||||
| if get_option('selinux').enabled() | ||||
| if selinux_dep.found() | ||||
|   rc_selinux_c = files([ | ||||
|     'rc-selinux.c', | ||||
|     ]) | ||||
| @@ -26,9 +26,6 @@ rc_wtmp_c = files([ | ||||
|   'rc-wtmp.c', | ||||
|   ]) | ||||
|  | ||||
| rc_bindir = rc_libexecdir / 'bin' | ||||
| rc_sbindir = rc_libexecdir / 'sbin' | ||||
|  | ||||
| executable('rc-status', | ||||
|   ['rc-status.c', rc_misc_c, usage_c, version_h], | ||||
|   c_args : cc_branding_flags, | ||||
| @@ -53,7 +50,7 @@ executable('openrc-run', | ||||
|   rc_selinux_c, version_h], | ||||
|   c_args : [cc_audit_flags, cc_branding_flags, cc_pam_flags, cc_selinux_flags], | ||||
|   link_with: [libeinfo, librc], | ||||
|   dependencies: [dl_dep, libpam, selinux_dep, util_dep], | ||||
|   dependencies: [audit_dep, dl_dep, pam_dep, pam_misc_dep, selinux_dep, util_dep, crypt_dep], | ||||
|   include_directories: [incdir, einfo_incdir, rc_incdir], | ||||
|   install: true, | ||||
|   install_dir: sbindir) | ||||
| @@ -88,7 +85,7 @@ executable('runscript', | ||||
|     rc_selinux_c, version_h], | ||||
|   c_args : [cc_audit_flags, cc_branding_flags, cc_pam_flags, cc_selinux_flags], | ||||
|   link_with: [libeinfo, librc], | ||||
|   dependencies: [dl_dep, libpam, util_dep, selinux_dep], | ||||
|   dependencies: [audit_dep, dl_dep, pam_dep, pam_misc_dep, util_dep, selinux_dep, crypt_dep], | ||||
|   include_directories: [incdir, einfo_incdir, rc_incdir], | ||||
|   install: true, | ||||
|   install_dir: sbindir) | ||||
| @@ -98,7 +95,7 @@ executable('start-stop-daemon', | ||||
| 	rc_selinux_c, usage_c, version_h], | ||||
|   c_args : [cc_audit_flags, cc_branding_flags, cc_pam_flags, cc_selinux_flags], | ||||
|   link_with: [libeinfo, librc], | ||||
|   dependencies: [dl_dep, libpam, util_dep, selinux_dep], | ||||
|   dependencies: [audit_dep, dl_dep, pam_dep, pam_misc_dep, util_dep, selinux_dep, crypt_dep], | ||||
|   include_directories: [incdir, einfo_incdir, rc_incdir], | ||||
|   install: true, | ||||
|   install_dir: sbindir) | ||||
| @@ -108,7 +105,7 @@ executable('supervise-daemon', | ||||
|     usage_c, version_h], | ||||
|   c_args : [cc_branding_flags, cc_pam_flags, cc_selinux_flags], | ||||
|   link_with: [libeinfo, librc], | ||||
|   dependencies: [dl_dep, libpam, util_dep, selinux_dep], | ||||
|   dependencies: [dl_dep, pam_dep, util_dep, selinux_dep], | ||||
|   include_directories: [incdir, einfo_incdir, rc_incdir], | ||||
|   install: true, | ||||
|   install_dir: sbindir) | ||||
| @@ -116,9 +113,10 @@ executable('supervise-daemon', | ||||
| if os == 'Linux' | ||||
|   executable('openrc-init', | ||||
|     ['openrc-init.c', rc_plugin_c, rc_wtmp_c, version_h], | ||||
|   c_args : cc_selinux_flags, | ||||
|     include_directories: [incdir, einfo_incdir, rc_incdir], | ||||
|     link_with: [libeinfo, librc], | ||||
|     dependencies: [dl_dep], | ||||
|     dependencies: [dl_dep, selinux_dep], | ||||
|     install: true, | ||||
|     install_dir: sbindir) | ||||
|  | ||||
| @@ -171,7 +169,7 @@ executable('checkpath', | ||||
|   c_args : [cc_audit_flags, cc_branding_flags, cc_pam_flags, cc_selinux_flags], | ||||
|   include_directories: [incdir, einfo_incdir, rc_incdir], | ||||
|   link_with: [libeinfo, librc], | ||||
|   dependencies: [libpam, selinux_dep], | ||||
|   dependencies: [audit_dep, pam_dep, pam_misc_dep, selinux_dep, crypt_dep], | ||||
|   install: true, | ||||
|   install_dir: rc_bindir) | ||||
|  | ||||
|   | ||||
| @@ -66,7 +66,7 @@ int selinux_util_label(const char *path) | ||||
| 	int retval = 0; | ||||
| 	int enforce; | ||||
| 	struct stat st; | ||||
| 	security_context_t con; | ||||
| 	char *con; | ||||
|  | ||||
| 	enforce = security_getenforce(); | ||||
| 	if (retval < 0) | ||||
|   | ||||
| @@ -20,6 +20,7 @@ | ||||
| #include <stdlib.h> | ||||
| #include <string.h> | ||||
| #include <unistd.h> | ||||
| #include <inttypes.h> | ||||
|  | ||||
| #include "einfo.h" | ||||
| #include "queue.h" | ||||
| @@ -128,12 +129,12 @@ static char *get_uptime(const char *service) | ||||
| 			} | ||||
| 			if (diff_days > 0) | ||||
| 				xasprintf(&uptime, | ||||
| 						"%ld day(s) %02ld:%02ld:%02ld (%s)", | ||||
| 						"%"PRId64" day(s) %02"PRId64":%02"PRId64":%02"PRId64" (%s)", | ||||
| 						diff_days, diff_hours, diff_mins, diff_secs, | ||||
| 						start_count); | ||||
| 			else | ||||
| 				xasprintf(&uptime, | ||||
| 						"%02ld:%02ld:%02ld (%s)", | ||||
| 						"%02"PRId64":%02"PRId64":%02"PRId64" (%s)", | ||||
| 						diff_hours, diff_mins, diff_secs, start_count); | ||||
| 		} | ||||
| 	} | ||||
|   | ||||
| @@ -9,7 +9,7 @@ | ||||
| # This file may not be copied, modified, propagated, or distributed | ||||
| # except according to the terms contained in the LICENSE file. | ||||
|  | ||||
| command=@PKG_PREFIX@/sbin/avahi-dnsconfd | ||||
| command=/sbin/avahi-dnsconfd | ||||
| command_args="$avahi_dnsconfd_args -D" | ||||
| pidfile=/var/run/avahi-dnsconfd.pid | ||||
| name="Avahi DNS Configuration Daemon" | ||||
|   | ||||
| @@ -9,7 +9,7 @@ | ||||
| # This file may not be copied, modified, propagated, or distributed | ||||
| # except according to the terms contained in the LICENSE file. | ||||
|  | ||||
| command=@PKG_PREFIX@/sbin/avahi-daemon | ||||
| command=/sbin/avahi-daemon | ||||
| command_args="$avahid_args -D" | ||||
| pidfile=/var/run/avahi-daemon/pid | ||||
| name="Avahi Service Advertisement Daemon" | ||||
|   | ||||
| @@ -9,7 +9,7 @@ | ||||
| # This file may not be copied, modified, propagated, or distributed | ||||
| # except according to the terms contained in the LICENSE file. | ||||
|  | ||||
| command=@PKG_PREFIX@/bin/dbus-daemon | ||||
| command=/bin/dbus-daemon | ||||
| pidfile=/var/run/dbus/pid | ||||
| command_args="${dbusd_args---system}" | ||||
| name="Message Bus Daemon" | ||||
|   | ||||
| @@ -9,7 +9,7 @@ | ||||
| # This file may not be copied, modified, propagated, or distributed | ||||
| # except according to the terms contained in the LICENSE file. | ||||
|  | ||||
| command=@PKG_PREFIX@/sbin/dnsmasq | ||||
| command=/sbin/dnsmasq | ||||
| command_args=$dnsmasq_args | ||||
| pidfile=/var/run/dnsmasq.pid | ||||
| required_files=/etc/dnsmasq.conf | ||||
|   | ||||
| @@ -9,7 +9,7 @@ | ||||
| # This file may not be copied, modified, propagated, or distributed | ||||
| # except according to the terms contained in the LICENSE file. | ||||
|  | ||||
| command=@PKG_PREFIX@/sbin/hald | ||||
| command=/sbin/hald | ||||
| pidfile=/var/run/hald/hald.pid | ||||
| command_args=$hald_args | ||||
| name="Hardware Abstraction Layer Daemon" | ||||
|   | ||||
| @@ -12,10 +12,10 @@ | ||||
| vpn=${RC_SVCNAME#*.} | ||||
| name="OpenVPN" | ||||
| [ "$vpn" != openvpn ] && name="$name ($vpn)" | ||||
| command=@PKG_PREFIX@/sbin/openvpn | ||||
| command=/sbin/openvpn | ||||
|  | ||||
| pidfile=/var/run/"$RC_SVCNAME".pid | ||||
| : ${openvpn_dir:=@PKG_PREFIX@/etc/openvpn} | ||||
| : ${openvpn_dir:=/etc/openvpn} | ||||
| : ${openvpn_config:=$openvpn_dir/$vpn.conf} | ||||
| command_args="$openvpn_args --daemon --config $openvpn_config" | ||||
| command_args="$command_args --writepid $pidfile" | ||||
|   | ||||
| @@ -9,7 +9,7 @@ | ||||
| # This file may not be copied, modified, propagated, or distributed | ||||
| # except according to the terms contained in the LICENSE file. | ||||
|  | ||||
| command=@PKG_PREFIX@/sbin/polkitd | ||||
| command=/sbin/polkitd | ||||
| pidfile=/var/run/polkitd/polkitd.pid | ||||
| command_args="$polkitd_args" | ||||
| name="PolicyKit Daemon" | ||||
|   | ||||
| @@ -10,4 +10,4 @@ if [ ${os} != Linux ]; then | ||||
| 	install -d "${DESTDIR}/${rc_libexecdir}"/init.d | ||||
| fi | ||||
| install -d "${DESTDIR}/${rc_libexecdir}"/tmp | ||||
| install "${MESON_BUILD_ROOT}/src/common/version" "${DESTDIR}/${rc_libexecdir}" | ||||
| install -m 644 "${MESON_BUILD_ROOT}/src/common/version" "${DESTDIR}/${rc_libexecdir}" | ||||
|   | ||||
		Reference in New Issue
	
	Block a user