sys-apps/systemd: Bump version 248.3

This commit is contained in:
Alexander Miroshnichenko 2021-06-17 15:59:32 +03:00
parent f60acaa537
commit fea1d608b8
Signed by: alex
GPG Key ID: E93720C6C73A77F4
42 changed files with 1130 additions and 1273 deletions

View File

@ -1,35 +1,35 @@
AUX 0001-Handle-missing-gshadow.patch 5731 BLAKE2B 63cdd115ddc6467903d6e96e252bf8227c9aa74ee80bc2464ed2b06ddeaf3bd2ef4ade8cf9ad37d9aa646524f9d3d9f22a825fc6ce0a600e3f338d9e883c5f49 SHA512 6a004a065a60511ffee55bef2a9a6ecb2da44a1582262ec7b94b3f7e2a54a9e28fd6cda2c5dd961b7b208946f0a1ac8f4783035f2a77f1b14df07a3a660e426e AUX gentoo-generator-path-r2.patch 994 BLAKE2B 2bfb42623221291030fa9f7310e9bf747351a26f6ffd842628298787b74d4ec562bacaa9fc5365f7e854f695dab5f74bc06883fefc1f210dce4fd415926817ac SHA512 98054222ea232e120625573b6a532c312eccc02fe657152610b7d056b964bb2165fffae9d17fd986cf547af885d44c26b117fe68df5b24e2607d37f3729d0ada
AUX 0001-binfmt-Don-t-install-dependency-links-at-install-tim.patch 3389 BLAKE2B ad0090e4459f3fb2fb38b53ea61724d9f90be6658791da3468c7f2ae358b240aa7c9eb6dd68fd232a4069f1b3998e1ddf4a8277a63bf1ba517d13cabe7838527 SHA512 fc188fd41a212be29256ea2d61638eb3702450cf78f7e404ede91c8f159f2100d9c998962a412d1ed9877520077871e079e6e34b13cba8c557868d3844f00592 AUX gentoo-journald-audit.patch 1485 BLAKE2B 9cba28ce907330bbc1eafcf04a837987ed68272fcfa9cc34a309ff5d4cc2230f71a6f7fed42c79afb1c96605df141e8e40b2d8290d12ad3c18038269814f2df8 SHA512 d77d4dae9f8a7819c6d4855476f3163ee19f52b20f66a93e25818f0747404462c47e3cafbd82ba85ce1b3d2fdbabdd96a0398b71149b318c540d82403f8ad0ad
AUX 0001-do-not-disable-buffer-in-writing-files.patch 19346 BLAKE2B 6f2c688c979c486800d2d90366bd7c0c041f2e476f5d70644a0a85301fe2ed08bab89ebe047633c6cf327c450862cc9e5f638d8d8b8722f053225a4898b4630b SHA512 1844ef49a57d4bf6cd338b00eb58e71451e096aa76eca30bcbd66a14291f44bb42ccf42fec7630647b568dcb3ba55ff4b528721b6152ca72ebbdf8e45b60cd30 AUX gentoo-pam.patch 974 BLAKE2B 48e292bd37a32709e459c41b04fdf8dc0e51962cb72896b4bdcdf4a8a9dd87031abce6bec2a6ed1578520f61a014de2c0127a5f96e8feec11b120e7e91b09c89 SHA512 69e50d1cec1e2d927365a97aebffe1024f600a8e5779e214fdc6fa35499786382375edb645d4c8c7c1745b96cd1e5cf83b4b9fc4daffdc1977bf7c7a50891db0
AUX 0002-don-t-use-glibc-specific-qsort_r.patch 6888 BLAKE2B 334b4745291dfec160549ac27255b14b41e4bc3f23e4bad3a5cba529d87e576784b2f488ea8ef23f71a5b82d5c018286f1953fafa03e268cc175358cdf5e4ee9 SHA512 202ea30331795d293db49d76fdd44197c66edac8bd125d896e66b0ba211f2f149b134f56fbcfc8d271b419030fb099d5f4c7ea4424b15559c745b7934e48c4ce AUX gentoo-systemctl-disable-sysv-sync-r1.patch 821 BLAKE2B f5ef796725e023bb1ed83b34a3e4d45bb008de9a134892a5321b37b56809c7a44530d18e33c7877177e8b64b2d89dfc2de844bed433db6d5e57831d20fbfb456 SHA512 8d697dbd305f6b95a4ddc47cf9d99a0e954f54e161bd59164917b62a78ff5c23fa2d5be2614569c0a2297595dae59e1ee71bb04da72cbe0c0807e1abd7da974d
AUX 0002-src-login-brightness.c-include-sys-wait.h.patch 1056 BLAKE2B be2870a80a06729ecbf27aa0dd41ded981a57791106d662ce3a82199f9d2a08cd849cb60a3096adf6be2312cfd9893070f1f7d83724f889411610dc27f327003 SHA512 d12a7f94832f027339d48212280e83b7f12ff658222b8af8cc9672b12c58cc10e2e3a4cc9f5acb4ee8f924c74d9a3847b7a9f19caa19342d78848491577f8b9a AUX musl/0002-don-t-use-glibc-specific-qsort_r.patch 6933 BLAKE2B e3c0b4aa79040c27ba4ec505e60c850988f09fcb6aff7ea91d72565991312261762a3bbb98a0fc97218163d10794443a49e40cfb9b96207c2488db607803bfc8 SHA512 1bdd3d0cb520c56f675d973ad4c55d168dd877eaf618fe9053f40de24784eb30629a870ea6db805f7e1bdc9b27245159d056e9b099c10a72f6be76f2c8ddfbe8
AUX 0003-implment-systemd-sysv-install-for-OE.patch 1500 BLAKE2B 3e0f44ff529864b0b62dc61f2acd9a04d33e422ed1f98d136ea425fade9dddd7a75d0298db5ab8cda99884ad2f38b85ddd1d85ccd5a402a7bcd7741767a80876 SHA512 7afb2f868e032f65238ae3a2db34acb7c4213f511db2cf99ef0a3e6fcdbdf6d96e94dde4a7de940bdcabec1db6125dc7187f3f95f081f0812ef9dd67eb036d4e AUX musl/0003-implment-systemd-sysv-install-for-OE.patch 1500 BLAKE2B 3e0f44ff529864b0b62dc61f2acd9a04d33e422ed1f98d136ea425fade9dddd7a75d0298db5ab8cda99884ad2f38b85ddd1d85ccd5a402a7bcd7741767a80876 SHA512 7afb2f868e032f65238ae3a2db34acb7c4213f511db2cf99ef0a3e6fcdbdf6d96e94dde4a7de940bdcabec1db6125dc7187f3f95f081f0812ef9dd67eb036d4e
AUX 0003-missing_type.h-add-__compare_fn_t-and-comparison_fn_.patch 2219 BLAKE2B 169f9c694d5aa3989cb712c6097b3b98e0b8280c644ae449c1d3cb3419802f0520a783d5355335e29bae66c19124ac9cfb9a4db9035b80fb31b79aedfdccaaec SHA512 5b623c90da457a0b218688e8e79199dde47f81e09599eef8f831a88294e0a8afe8396287397088527bbf77ec6da83329c1316106bf9da1675c9678eb5c7007b4 AUX musl/0003-missing_type.h-add-__compare_fn_t-and-comparison_fn_.patch 2303 BLAKE2B 0454a0704aa03bfbc6e1dd6e1b0d6e18da90890d2c07c36084a95dff2aef891c2f03f7a401d3a43225e4e6d47d806c2acc60a4b4b34da5ceb7fbbc5e832fa39b SHA512 92d9404276384408f829940e758c399f4b7ae74c1fcad73655a3a0b620cc59982f0a3eef29431dac553154864568b0cdd4dca03a6843f84a3ad1444410e5e22a
AUX 0003-src-basic-copy.c-include-signal.h.patch 1106 BLAKE2B 38560f0946d0fb98b7a63e46e5b933749a9eab5e46429c4612ec48ed9e93afc89f7ec515d85ddc0ba47b7d806680fb00343f931d1209b97ff5a918f9bff0fb64 SHA512 d98cfc9bb7c7f50efa8389ddf16dd0f92deec154f2ba833813d83f8e91e315652a38afc94d444204fc0debbe43d040567679f27a1f255d6ef70a78e6a7db5a66 AUX musl/0004-add-fallback-parse_printf_format-implementation.patch 14076 BLAKE2B 60b1fb6370c0c76643f828dc7b6955349392f19d1734241b277066c97dabcea8c2a4c526084536c97410e239c28d32bd49533745283bf2563556f9f9f587085c SHA512 0d7899ca2de3f1af8e98d7e558cc445163a365ca90615715d3f8977a9d59fcce3374864be1e0536d3f236980c2444a898f29730355e2db97bc401dbe0eda18d4
AUX 0004-add-fallback-parse_printf_format-implementation.patch 14029 BLAKE2B 672183abb4e5420218d908eacab74c3d11bb96d2373bc25dbc96037f90cb4ce9964ba57b6291b0bba249de2c61d0ad2e3c1c995e51edd210652c50781b70ea0d SHA512 8822dd284b652db879f875297e197d4752fe8d74b9ee0d639c00a4845fdf69f1616b429f83306eca7e99ec5ae2e11005459fe51e8fb09e0968ca0e5b1a6de853 AUX musl/0005-src-basic-missing.h-check-for-missing-strndupa.patch 17572 BLAKE2B 720abd8e9928060b94821723cb3a28f4f8cb971e543abab56d8cf0bb359fefceefcd7f24630ae962a358cd5321889945aaed4097e2918be81b145aa85092218c SHA512 d3c98ec44f098b500478c3dc2944ef46ddc8ab37cac69c29fec71b892f3e975c925d3200b59bd01278cf6a98fe6aa32804e503034405f31ef60dbe5a2d6173d1
AUX 0004-src-shared-cpu-set-util.h-add-__cpu_mask-definition.patch 1966 BLAKE2B c0c5c0c8899d07928a1868c53e7c1aebd2827fd5f7dba5d0c696840150fb6450370a84ad66440fe1326501e78609bbe83bcff48769e8a2cd8dcf83bac66d896d SHA512 89f712b84185e2e7d9eb13d3b12a06dad700ce79b9bc8262fa36427823d9587b1631797ea96f596aa47839258fbefd53c6b55e190ec6b10ac830ea0ad604cc27 AUX musl/0006-Include-netinet-if_ether.h.patch 10537 BLAKE2B bb92fded964e4c8183c219259ded0e64d9118d7142d6d2f46dff4922e9c7d2199300a5524ea772c94dbc3001a9dc54b24c8fb67beb3c14bddd04bdc1020d41df SHA512 95f4c9fab8b0e675249877628e8718dfa1a9bac77782c6bc05dca37bb5e28be0479e5f82d5a4ad77a692cfeb247d0dc2a9017b62415024efe1656da3db72abc9
AUX 0005-src-basic-missing.h-check-for-missing-strndupa.patch 21830 BLAKE2B f411a498745a6e52ae6c56fad37e9e14b4941921058c82f42bc04c5fada7fbe5f5a810f3c8db08a721132757944b3b46bf8a37eea4dc3edc29b0fdad1b4673c6 SHA512 473fb0a9ff0a9088ac9f477b076f9c1d324b111f4685feac5c23a1dfd017542a3736820d460dc2b499336e68ce175de06fd56ab19210b991b31306fa063540b4 AUX musl/0007-don-t-fail-if-GLOB_BRACE-and-GLOB_ALTDIRFUNC-is-not-.patch 4748 BLAKE2B 4b0768cdd4686ca00bfd6290eec54acfaa85b86cb44d43078be54d9756d78ab23973805cf360adc80bbb16e95ffe9e7493811d9b737c944df6ed8c064baa6ec8 SHA512 aa8c724338a876962160417817bc0d4117a3a70397a86fae0ddeea964dbe57cd51f0b27697e9d1ae9baf8c6696e2775ac9e8ab5c2aa8fa186cc765438095e705
AUX 0006-Include-netinet-if_ether.h.patch 10117 BLAKE2B 952e3f57081eab6b9de105395678d895c08f905c798baed85303987714a641a52ea6a1129180bbb7524a0bae1418b7c05695f3767430346287c0117791e65557 SHA512 aeda18aeb55a053b07ddc30cb8fc5e525b9102ae990bae20df4570ed1ecc2614003d044cae2c25d3f64cd30cb3dd04eb9f191104f48ea788d663ae66170c555d AUX musl/0008-add-missing-FTW_-macros-for-musl.patch 1124 BLAKE2B f83824c8fac0cdef9bb55961fbadf0cbcbb2a998abf6a880ae9d4a700dcfdba02d63ce2e13b9b2d2b94e702e1f2be2ec456099085b5b7f4f3f5d8afbfadfde4b SHA512 603e64921677883625e398bb769157620b3758da4ed56cadc820b224f15e47cc32c0b7b81ba908035ff8b2cf7e6801aad3e798df66d2f0c53a97d85f62d8a70a
AUX 0007-don-t-fail-if-GLOB_BRACE-and-GLOB_ALTDIRFUNC-is-not.patch 4760 BLAKE2B 3db806cdc3869111ce3191b792f61438cd479ca14bb05e0a54b6f648747e7dfefb25541bc1b296fe0c1e063d782e6071ce7be0bcb8ba2370f73ef53555a957c1 SHA512 a5c2dc61ddb953f552dfd0036eba38a39ae6b2353fa44fe4c6668b3a81363b3777097dd2557fb3ad34c90d35f765fd2cacd415da5103d9f445733205785301d7 AUX musl/0009-fix-missing-of-__register_atfork-for-non-glibc-build.patch 1460 BLAKE2B f144e9bbea36b31f797435702be4ea3a028014c12afc35d1f4cf414fdd5776060c2d80f5b1e6728d7ad76fbed93a895414c33e51d0373f8736d3e6734cb4b80d SHA512 b42ed4d207a43eef136c6acf05ad37d2b7378969d5782e398d8c133dc5463f97431b3fe3f9ac911852051a914a044d641b38657cd89da9d0696b1e12b251152d
AUX 0008-add-missing-FTW_-macros-for-musl.patch 1591 BLAKE2B d34a7a954636ef32fb7fcc153eba7fe77ec5c562c7a3c5e757f51c12fc2e681c6b4fe369604f17852f79363821eb13b0736c25b420226384fac8f9618e276c58 SHA512 c373cc4de61b5f391c7b7a2e8e537a64ba3d40f41a82fc332721d4b731deb845ea69ca149c31976bb51cf2b108c1dcc0aec501158b4b7c6fa9e3d6f2b4fcf89f AUX musl/0010-Use-uintmax_t-for-handling-rlim_t.patch 4836 BLAKE2B 458de13d2ceac38734636a1300011dec13123969be13a2c0228590cd62ad58a3c230e0b82c44eb4bc3bb1255c29b1e02b3af721f6647c865a7c6c5689090ab25 SHA512 6b9f9466a7a60eb152f8a94a1be1fc5ed4a930320ea1f97251f84cfadf779b990e2bcdb2ae42b8c8f663c5a000bb5a8d4b631415961c22f3afd2ab4821612459
AUX 0010-fix-missing-of-__register_atfork-for-non-glibc-build.patch 1464 BLAKE2B 9fceb261408ae684b63d5b195d03877e32517a52fd8ca98c8f833ff2a590d9b78c30370da4a3c88bbf9e6619886d680f3a145553b228602925e418401dbdab14 SHA512 28d24feeaf5d586bea1aedfa6493b91663cea884beff2742763bfc8eaa1d23449732c779af52415469f32c30aacf11e5086fcd8253201ce765bca70b63c57757 AUX musl/0011-test-sizeof.c-Disable-tests-for-missing-typedefs-in-.patch 1079 BLAKE2B 5aa3c24733dea8b1b4697a296335461a8122b877b4db90263d3d3c2928323636d78e4c8913b90156b67fc95d8032373157bd933a7c1c948ae3beb4f29ba3ad24 SHA512 84167fdc88ea4d7567d4878f0546ee7659a43baae839b4ea06a1d19982cd783c32882023b8b2eb862f66346f2379b6a537f836ec9b14544faad68271bc09e059
AUX 0011-Use-uintmax_t-for-handling-rlim_t.patch 4188 BLAKE2B 27620c96c07d7a51b371a4682041b9c328d7b48dd1683a40a7322e332dd8996fcab1a14c79043988012c0b7fc6efaab7e5466c60942d3a467da7241e79edbd2b SHA512 aa07d2eae98af9155cf030dc9491905ff8a63394115fb63c09c4f807fdedf007718bc59748880ea6611ad4357f8df14c72d2d241fdd71afb4ca470442445a896 AUX musl/0012-don-t-pass-AT_SYMLINK_NOFOLLOW-flag-to-faccessat.patch 4818 BLAKE2B f162adae44cb1ac3765fe47dfd7d83609643dee0cff45993c3923b4889fb2b1a41f4a62b58afcae06ba7def50881d446385104132e381a748574e6f910e70df5 SHA512 9dbb171a4e4828da28224045e3613cce985b4051f76b5f58a4473ee54100f927edc0e1b06d95adf802e982b86847dd1a9adec0b8bb7cde19b203d0b5a1079b6d
AUX 0012-mallinfo-musl.patch 1586 BLAKE2B c84a5b1c33865bd4b8c31abb22d6c97fbdd8b3fd64dbf4a1f84221ae2e5db9acebe6512e4544ba9184a456681182e6e053968ce0a63e75b79c8a6180fee553ef SHA512 655061913d91cb0b7b79acecba2d2baf9853d2e50af41fea768d03a4ca4ba4c3ba6e008718557a8e85e45a5ed4260fa974235c0b2cfcc8794525a563bc94e293 AUX musl/0013-Define-glibc-compatible-basename-for-non-glibc-syste.patch 956 BLAKE2B bdf32c5287cbc3e4d8a1f1ae619d70045c004e3699214d49a4ec14c331e54c027a9f09d4df8e10a2a850469c1724007ff3582646af03e33ca03021382fb7e00c SHA512 4c80e443ad7e5d37a7a4c33f8c5b63bcf3815db1c3992055a8d77626a5babb8a8ef2ec426e95771629a775b997669b3bec507f819f26ce391620406fc907aca9
AUX 0014-test-sizeof.c-Disable-tests-for-missing-typedefs-in-.patch 1083 BLAKE2B 7fc8c3dedc776d28cc213c599670c94d6ffd3ed1fdfb7892dd9cfa0379173fde563e1dd533e238943aadee2f6c0e671d97d7d64102c37790368be8e2ff884acc SHA512 c041b1d2e24288a54058f14d712f9866fa914c44b677c04c0f43c6bd69b28289e55c1d412360f24d2bfc45f7a6d750f1777ce24c8a492b9f91ffe766559901e1 AUX musl/0014-Do-not-disable-buffering-when-writing-to-oom_score_a.patch 1399 BLAKE2B e357a5931df199e54c8219d2dd42bd8cb09649ffe6ecdb1824c8c14e8e898efb5fcead933ceb5709940986ad2d2f02b6c3310e8a77bd7b71375f38db79130ee4 SHA512 50ab9656660565b88f868be14354b4efff4825d9dc40eedc1d4cdd6c681cdb0ab330ed518635742cf307283d43e226b98425cf5afc0810f53936265afa7db721
AUX 0015-don-t-pass-AT_SYMLINK_NOFOLLOW-flag-to-faccessat.patch 4663 BLAKE2B e4ab0514a1df777ec73ff02c00d7dc57b0853f93ff24b8293324b4030c2fe152956f183a5bc355992aef3c57b3c8965ed60fcdaac3cf1b52fbae9c06f5895281 SHA512 5489ff9f108a9f5c1e6acadd5d64762f211c01c137b51e9d52431857b5f1793d9b09018f712112358756383391b7d2cd9f793a5dc3e2dc51b59322e8e82669b9 AUX musl/0015-distinguish-XSI-compliant-strerror_r-from-GNU-specif.patch 2213 BLAKE2B 30274b0cafea279d54ad27b14595fe32790070d16ec33f34fc5bf980a6dc7d8eb304a3e4c023da0f315bf02f06265312175b1b140adc0268be332275f82a20da SHA512 586dcac5d327b61d8c8ba4895524c5d9846b2ad8ff5546c1c99af0c378b6d71f6df25bddd29705f88a13fd6496bb8d4c89b06a59e1c881a3154f3b03b5705b91
AUX 0016-Define-glibc-compatible-basename-for-non-glibc-syste.patch 954 BLAKE2B 72dd716527bb71af4541609601008690d40257a1cce27b59223e389b432f4c79c99ac6c22324543ae7b64dbe7a8bffd36d8df00c8daeeb680a33f23765b9d2e0 SHA512 6c2e0b24fe58c3e25a1597b46fa2a490d122b8a48db07aca820e450ab1b0a9a725f8845d2e81a16e836ed448e17a70229d3c7eca654abd141c3d14417f810469 AUX musl/0016-Hide-__start_BUS_ERROR_MAP-and-__stop_BUS_ERROR_MAP.patch 1324 BLAKE2B 85d965e427d3274b0616669868a73ee627953f045f56413ed1d0febbc8a42bdbec5955a1b995fe2cb0285980eeca6460e9dc9ae4834fc7d64b890b14f46c0192 SHA512 d492b6d0d09fa740eae27f2a1e211fca66ca0ae5443405f6a76ebaf9ee9afe8829aed5cf106adf9f6f3ac89f589d4e205162569744027562227fac98c595ba10
AUX 0017-Do-not-disable-buffering-when-writing-to-oom_score_a.patch 1403 BLAKE2B cbcca0edbaf268c73491c3276ae5627058244ce0ac0d60b8b4f3eae75032d31380962a411d313c49fc437ac2888bb11117ab90e6a3e114069dd5fc6503c8e68f SHA512 08ce2c128d49911437dbfe4a7011caa70894849d72ff2640ba1cd3a858b3cfbed3e89f475ef86aae826cb62095aa427e2843d9b047690447daf73c0b5b072080 AUX musl/0017-missing_type.h-add-__compar_d_fn_t-definition.patch 877 BLAKE2B c5c76d950fef898d67d012b3f80829bf723932b973e9a11473b8688df636814f710c5404587e8a6d0a85667397bae86595a838ef4ad43bc86febb5359ce4668b SHA512 476b7ef7731808511666f579740b54d513f2b3cfd6d62b611aa5bcbe05c2ea9ab44d28a3a1bf43bf06aaf93d10431e552f8e8984a7f381d9c875fc0313ac95cb
AUX 0018-distinguish-XSI-compliant-strerror_r-from-GNU-specif.patch 2151 BLAKE2B 4de41beb0e04a1d6475d16be36bad4ed5664b512da4e880b345326842ddad87f49f14a450ffa3ddcdf1db5fb6f7fcf5c90da0ed4abc278f5529ee8662914b910 SHA512 9904e27aab2dc9fd8932f774ab0d8dac9ab752ed16f177050850dd559e2b12b1871f1758b1095dd654c58f68f2698f09383a40a5f642b388f42e94a0b4b6d2c7 AUX musl/0018-avoid-redefinition-of-prctl_mm_map-structure.patch 840 BLAKE2B 5875a8bb65d6daefb51a849662c8101782d6a83491a535eee61a12b0f2d64f54d852137de909dc72bf2eb8b0fc420d7108be50601431a713420838e6201db894 SHA512 ad98e77b9d38a5f0f064a2a399a6ecac57478462a53b5aff192101c40dfa8ca7ee9be1ff134df64f0da432c02eda08209057237fe8bfe1d169ca1fc7b037b458
AUX 0019-Hide-__start_BUS_ERROR_MAP-and-__stop_BUS_ERROR_MAP.patch 1328 BLAKE2B d61d4b7090f13b126e8f598b94322900cee0aa0dc6d13df4cb6ab2880c316b7bca0d539ffc4f37b6023b77dd5f25d32a6d53c4da268410159fbf335ae2ef0be4 SHA512 94e602d833a53523028308c0d3f131b9413cb5f1ec4099a6e24930f0bd5054e24d89aedbde2305b73532e69f435fd2ce3dd5f1c5ce461b1d39ec4263f66f560d AUX musl/0019-Handle-missing-LOCK_EX.patch 678 BLAKE2B 9a9adb62ed2256675daaa18ace37d42e0a85db472cc057580b20a42c92cb47baba19e136d725ac1894040f68b3a083359b71cd3e6c8c5df3519b2cb0014155be SHA512 e8c7adc8c4167ab2165d28ca9d421b2da421f48d970249448a9c0b6a27a3dc2e087c96bf335a57a6903a615de372d269f45c98e5abc1029c12971f072a3b6ece
AUX 0020-missing_type.h-add-__compar_d_fn_t-definition.patch 881 BLAKE2B ae1b8aeb2ad03a5763358acf1be09978dd1e9640776e101dc66ee8b946d0ee3f6504eb767fbec149edbb09b85d1d2282c8935e995086c298e7a321e42c5c6d53 SHA512 79954531a11d89584fa6b5eaa46b166f4a843d5933873e474eedabbb70e3e495f68c91d706b97d19d4d0e9120aa3632fed2e00c19b52540bf477bd38d837eff2 AUX musl/0020-Fix-incompatible-pointer-type-struct-sockaddr_un.patch 2064 BLAKE2B c75d798ef873097f07fb34b6fbba07f494dd4fceaf797412935cab09f0b382a16477d0fd74153331361c5fb34d3e169d8a69cf16b25683aedbb9be9057a91585 SHA512 81d0db27dd6982f4a140c034c5c099bc5780b8f06672f5d45491701a5b2150dbbacce86197dcb2056cdbe209c98c97ad54567921df4a9fe9bd975f013213b447
AUX 0021-avoid-redefinition-of-prctl_mm_map-structure.patch 836 BLAKE2B 54bb71b3b7e115c51980873a99eea05a1f959ef73f7ffe50ea2cc1be3b304c9a1b4e7779843e351ef388c512135c24146e579639a85db822b11bb5be6bdc89b9 SHA512 cd7e6a5213b88824464e18ffca93195964e1e8fe01c979a68e19c931d47a91a3a29b2982ceffbe98f7068cf7551fe4cd9312453557a9a6a861382939f4fdaa40 AUX musl/0021-test-json.c-define-M_PIl.patch 907 BLAKE2B 68cac8ebee324e84d2ffbec018824904aa3319b6f8fe700aded1532944e63f18d786f18f84e56520517436b17ff2c02bc21058068be7761db9d4039a1bb2c008 SHA512 68582bd212b46a39f37de1f5208993c76a56498142c8519898e82f8cc93d41117748c1d8bcac44563c6e38ff53c49990e95f8ace7bfba5e1b017a34e0469dc7b
AUX 0024-test-json.c-define-M_PIl.patch 911 BLAKE2B bbee75dd158f119cc8bcaf88bd6dd4a159e55e3dfe377d6bc2249223a1a2fb9a4d3157a8b08adf735e9404a3602e03b932e304a5ff234cf06b5b4fbb31ac54e8 SHA512 cad50b33fa962fc692d08f5ae89593ed199c2ea57a09a10cf090af148e134c072bab32e9dd691f04a7a0fadea50afd91f390774a0884df20323b4263a3285b5f AUX musl/0022-do-not-disable-buffer-in-writing-files.patch 17981 BLAKE2B 88d0253c9d342d094c698574f3301c982813dfbccf252b6655979d10f3636d4d26db81e89adff64b3b43ebc8131cb0e89fbae359d591b3a8cca682a02ea5c310 SHA512 a8c9c427bcdc0458e19b912ace35660ad50fbcf292f9f60518b49a6b84a5a8dffef37acf7a428ddd9dfdf0bf738fd9ad7afef64369b6477b0b3a0f5416a9cda6
AUX CVE-2020-13776.patch 3535 BLAKE2B fbbf64bdae740af66fabac3255c671b0ca6aa2acce3e83d08a548e19391b27aecb0563dbec54165963a8cf4da0d1d04190ca5a0fb928a3ecfa8da9d2fb0cee16 SHA512 a180df42b15a13c68d67c66ad781756fe13328829843e73383ec474773655489add04ccc9036d1a2aa10350c6096a7b43d5aec339fd7fb339fb920421da004c6 AUX musl/0025-Handle-__cpu_mask-usage.patch 1966 BLAKE2B 58ef76ff98fc9b9fb41f5480548aa24fbb1b80a46ba51c4d1cea93d8bd66653a5dd6d396cff2ff5aeeffd63e2d46a319424fc2e63434c22e2df8129f27c181c7 SHA512 0f2360dce835711238ef8e8526f0ed4d9b219c9de86a0290731f78f6f2cffefd38439ca9b747dde10d759c28f8c1c3fb2e4b567736ef8e3397cdcd72c86d2e4b
AUX gentoo-Dont-enable-audit-by-default.patch 1027 BLAKE2B 9193a409db4e5c1dec6f6b66ee6e0a4cc1ada49d41ab758c788cf12534fffb67bd7370b8558a6af56572d7f2b73cf47db255fef105e56362c15f0a426f80b256 SHA512 44e512d8bbadbc5714192896a3ba262e460af034846e4e9b9832b4143fff772e2734e655316fd88d1ef386509bd234c195dce2087348f220836b3bf4f26790e0 AUX musl/0026-Handle-missing-gshadow.patch 5437 BLAKE2B f2706d6a3f7ccebb3bead4cba82ac3798028d8d7f7192b8fa71a1fce835be7320df5b97f60bfb7a6d73cec56b8b26222bd3e0a183e4b387dea4d854f5103aa2b SHA512 37ecbde34b0fde1dcd7f271904657ad8924c566098c32182646867ad995dcf977ed0ec3f7c71a731c23b4fa2888827fa64aa8311d460605b4a4d725f0147fc58
AUX gentoo-generator-path-r1.patch 1037 BLAKE2B 5eb80521a6726c9b4693f9b0f56d3e68fca1a49f5f5eb5a1576329d30c93d2fe7c121920099d74962eacf7ed1d3747250f103a57e4be246320a99871521a3b6a SHA512 1b0d1c2f96cb4aa95adfa5940efaeb2bd940110720399358317906d21d08b0caf625474980e101bba001afd626f8ad64367b09b40bec0b2d46b977021c4adfc5 AUX musl/0028-missing_syscall.h-Define-MIPS-ABI-defines-for-musl.patch 986 BLAKE2B 2c3cfe939e19ce544976920a27be986d33b6fa72a303faa1378ffcab87dffb697fc6816f15101eedfec642ff3ac3b8f155bcb16caee734cab817dfef6c7b1ec2 SHA512 19097ebd33bc9cc966ea54aed119ff30c844130cc64b4369e0571f8a78d15630a2e523fa1a51a56f7fb88ec5850fe18e65eb925fdd8e365d816a1dbc471a6886
AUX gentoo-systemctl-disable-sysv-sync.patch 784 BLAKE2B b2a1a931e1fa0c41d5610dba624e3f168a7bd7a54f83eb2e208b9d596645819e4e4d977876d032c5b98d392c846736b7be3e758aa53cf7b724eeda8d02c19ce5 SHA512 043a7bba0fac81a4a5eb1217cdfdd90cbdc7b2f01327d96b6f2cc12f3e8be4976e55e40a1dfbcc94d8ec35230c7e02a10e85e593a6faa355e675e202073991b3
AUX gentoo-systemd-user-pam.patch 443 BLAKE2B fad5c24f35666313efbf1e33640320058022fe17acff869a80104ed87ce0ad7ebaa1498915f8e933985e9c2d66d77172eb21ab480fc4fa857e0e5b985735831a SHA512 0a47368b1b38995a4193492e3add5c716c063366a9bc53dec03b7cb59b524da644033e095344da6e15e01dc84d8f5b335e7510442eeaba26e06918403fed0e5c
AUX nsswitch.conf 734 BLAKE2B 5f5a7821a84f6c8aa31fe9a68c29a1a0f24be578d427a623f14a9ef795e7da481f226efe5511d92932b5edf5638fa719808a0c3a0b8fd340799dd6bcb703a0a1 SHA512 dcbd51dacaaebdff32edb3840cc7b9b47b6521009b8786690e3673a2e78bc60bfd8e591b1048c5d452117c6659b9917ae2864462f5057cc39b704b0130522e60 AUX nsswitch.conf 734 BLAKE2B 5f5a7821a84f6c8aa31fe9a68c29a1a0f24be578d427a623f14a9ef795e7da481f226efe5511d92932b5edf5638fa719808a0c3a0b8fd340799dd6bcb703a0a1 SHA512 dcbd51dacaaebdff32edb3840cc7b9b47b6521009b8786690e3673a2e78bc60bfd8e591b1048c5d452117c6659b9917ae2864462f5057cc39b704b0130522e60
DIST systemd-stable-245.5.tar.gz 9020836 BLAKE2B 7753eecceffa86c9208c3e71df2037b58b445f9090b73c6ff499b4170b94488a1fd1cabcd17cbb98506a692875a3eef07a40a54d23e09c331a01319f8d03d13d SHA512 47de4a59980643002f325c499eeb4dd76fa9f1d1267686e7564f103690487bf85974590d7cb3e3641409e5bfba567fe2a66efa80320e7e8adc48af4461e2e172 DIST systemd-stable-245.5.tar.gz 9020836 BLAKE2B 7753eecceffa86c9208c3e71df2037b58b445f9090b73c6ff499b4170b94488a1fd1cabcd17cbb98506a692875a3eef07a40a54d23e09c331a01319f8d03d13d SHA512 47de4a59980643002f325c499eeb4dd76fa9f1d1267686e7564f103690487bf85974590d7cb3e3641409e5bfba567fe2a66efa80320e7e8adc48af4461e2e172
DIST systemd-stable-248.3.tar.gz 10320940 BLAKE2B 725494e0197dd182de55e4967088f4b4b709e6b2242723368b6cd95606582e01a57322b1f18fa194149055140a90993696734ad3c004843bfaceb72cd04a3a84 SHA512 8e7ff0d5e63cc933e4dc23f7e0bef9707fde90396605eb8822d34de90d7abe8fd37e5739e33b657868218aa7281147cc944c096c007324c3e6fb54d833a83485
EBUILD systemd-245.5.ebuild 17289 BLAKE2B b80f6831c25360b663fbfd75d20ea39ccddf8d44ef04253256d8addc824cca86dd9854108d048fb4ea38457bf546c0ced2cc43e1ff1699ed43624420f50870b2 SHA512 bb5d27b1259084d1089aa4a9de830693a3993d5d981ba877202b270fe0442be575866489672b3ec61c23cd1695a903e96bb31ef2f76c5a53d71b02a64e079c93 EBUILD systemd-245.5.ebuild 17289 BLAKE2B b80f6831c25360b663fbfd75d20ea39ccddf8d44ef04253256d8addc824cca86dd9854108d048fb4ea38457bf546c0ced2cc43e1ff1699ed43624420f50870b2 SHA512 bb5d27b1259084d1089aa4a9de830693a3993d5d981ba877202b270fe0442be575866489672b3ec61c23cd1695a903e96bb31ef2f76c5a53d71b02a64e079c93
EBUILD systemd-248.3.ebuild 17541 BLAKE2B acd093a6656dea62a2dd53b6f5517096cf2197bbd087783c0c4d6bacb21202f2d53e9f744cd4eabb72f8772e62c5d783122172e7c485ecc4d32338bd58611ea4 SHA512 3b2ca7f09a5c53c5044d77e9a0193cd664b8f637449361ecdeeaa2e72f9c3003f7fd343f05e969afdd634a62ab603abbd81675f9ad141afad85a58bec5a91ec9
MISC metadata.xml 2373 BLAKE2B fac7a9db4c217998f84bcbb5bc490eee748a35f9d991962d5aa21c6ec562d494af06b67fe35879ee2b245445d22ea7eadc4db6305215f393c4565b86665b3130 SHA512 e2d999684255f6c6509af7dca1b9e1411eac9a4cde6f30d9631c5b9d2bbe749a40f3d08c067d2cad5eb1cdd8ad823c3afb6844cc5e3c1d455fbd8cd20d87a696 MISC metadata.xml 2373 BLAKE2B fac7a9db4c217998f84bcbb5bc490eee748a35f9d991962d5aa21c6ec562d494af06b67fe35879ee2b245445d22ea7eadc4db6305215f393c4565b86665b3130 SHA512 e2d999684255f6c6509af7dca1b9e1411eac9a4cde6f30d9631c5b9d2bbe749a40f3d08c067d2cad5eb1cdd8ad823c3afb6844cc5e3c1d455fbd8cd20d87a696

View File

@ -1,81 +0,0 @@
From 564830719be2017c4953589d50f21a9e856a4ecc Mon Sep 17 00:00:00 2001
From: Chen Qi <Qi.Chen@windriver.com>
Date: Thu, 21 Feb 2019 16:23:24 +0800
Subject: [PATCH] binfmt: Don't install dependency links at install time for
the binfmt services
use [Install] blocks so that they get created when the service is enabled
like a traditional service.
The [Install] blocks were rejected upstream as they don't have a way to
"enable" it on install without static symlinks which can't be disabled,
only masked. We however can do that in a postinst.
Upstream-Status: Denied
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
[rebased for systemd 243]
Signed-off-by: Scott Murray <scott.murray@konsulko.com>
---
units/meson.build | 6 ++----
units/proc-sys-fs-binfmt_misc.automount | 3 +++
units/systemd-binfmt.service.in | 4 ++++
3 files changed, 9 insertions(+), 4 deletions(-)
diff --git a/units/meson.build b/units/meson.build
index ea91f0cc9ea7..25186f88dfeb 100644
--- a/units/meson.build
+++ b/units/meson.build
@@ -52,8 +52,7 @@ units = [
['poweroff.target', '',
'runlevel0.target'],
['printer.target', ''],
- ['proc-sys-fs-binfmt_misc.automount', 'ENABLE_BINFMT',
- 'sysinit.target.wants/'],
+ ['proc-sys-fs-binfmt_misc.automount', 'ENABLE_BINFMT'],
['proc-sys-fs-binfmt_misc.mount', 'ENABLE_BINFMT'],
['reboot.target', '',
'runlevel6.target ctrl-alt-del.target'],
@@ -161,8 +160,7 @@ in_units = [
['rc-local.service', 'HAVE_SYSV_COMPAT'],
['rescue.service', ''],
['systemd-backlight@.service', 'ENABLE_BACKLIGHT'],
- ['systemd-binfmt.service', 'ENABLE_BINFMT',
- 'sysinit.target.wants/'],
+ ['systemd-binfmt.service', 'ENABLE_BINFMT'],
['systemd-bless-boot.service', 'ENABLE_EFI HAVE_BLKID'],
['systemd-boot-check-no-failures.service', ''],
['systemd-coredump@.service', 'ENABLE_COREDUMP'],
diff --git a/units/proc-sys-fs-binfmt_misc.automount b/units/proc-sys-fs-binfmt_misc.automount
index 30a6bc991844..4231f3b70fe9 100644
--- a/units/proc-sys-fs-binfmt_misc.automount
+++ b/units/proc-sys-fs-binfmt_misc.automount
@@ -18,3 +18,6 @@ ConditionPathIsReadWrite=/proc/sys/
[Automount]
Where=/proc/sys/fs/binfmt_misc
+
+[Install]
+WantedBy=sysinit.target
diff --git a/units/systemd-binfmt.service.in b/units/systemd-binfmt.service.in
index e54e95e11d5d..372a598614d3 100644
--- a/units/systemd-binfmt.service.in
+++ b/units/systemd-binfmt.service.in
@@ -14,6 +14,7 @@ Documentation=https://www.kernel.org/doc/html/latest/admin-guide/binfmt-misc.htm
Documentation=https://www.freedesktop.org/wiki/Software/systemd/APIFileSystems
DefaultDependencies=no
Conflicts=shutdown.target
+Wants=proc-sys-fs-binfmt_misc.automount
After=proc-sys-fs-binfmt_misc.automount
After=proc-sys-fs-binfmt_misc.mount
Before=sysinit.target shutdown.target
@@ -30,3 +31,6 @@ RemainAfterExit=yes
ExecStart=@rootlibexecdir@/systemd-binfmt
ExecStop=@rootlibexecdir@/systemd-binfmt --unregister
TimeoutSec=90s
+
+[Install]
+WantedBy=sysinit.target

View File

@ -1,29 +0,0 @@
From 106922335ec502bcb4451c54a89be49f88fa54de Mon Sep 17 00:00:00 2001
From: Scott Murray <scott.murray@konsulko.com>
Date: Fri, 13 Sep 2019 19:26:27 -0400
Subject: [PATCH] Include sys/wait.h
Fixes:
src/login/logind-brightness.c:158:85: error: 'WEXITED' undeclared (first use in this function); did you mean 'WIFEXITED'?
158 | r = sd_event_add_child(w->manager->event, &w->child_event_source, w->child, WEXITED, on_brightness_writer_exit, w);
| ^~~~~~~
Upstream-Status: Pending
Signed-off-by: Scott Murray <scott.murray@konsulko.com>
---
src/login/logind-brightness.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/src/login/logind-brightness.c b/src/login/logind-brightness.c
index 3f4b65e1fdf1..5af7e3d5ce3f 100644
--- a/src/login/logind-brightness.c
+++ b/src/login/logind-brightness.c
@@ -1,5 +1,6 @@
/* SPDX-License-Identifier: LGPL-2.1+ */
+#include <sys/wait.h>
#include "bus-util.h"
#include "device-util.h"
#include "hash-funcs.h"

View File

@ -1,31 +0,0 @@
From 082d2eb2a65525890a913723764e67a36ee75384 Mon Sep 17 00:00:00 2001
From: Scott Murray <scott.murray@konsulko.com>
Date: Fri, 13 Sep 2019 19:26:27 -0400
Subject: [PATCH] Include signal.h
Fixes several signal set related errors:
src/basic/copy.c:92:19: error: implicit declaration of function 'sigemptyset' [-Werror=implicit-function-declaration]
src/basic/copy.c:93:19: error: implicit declaration of function 'sigaddset' [-Werror=implicit-function-declaration]
src/basic/copy.c:93:34: error: 'SIGINT' undeclared (first use in this function)
src/basic/copy.c:95:13: error: implicit declaration of function 'sigtimedwait' [-Werror=implicit-function-declaration]
Upstream-Status: Pending
Signed-off-by: Scott Murray <scott.murray@konsulko.com>
---
src/basic/copy.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/src/basic/copy.c b/src/basic/copy.c
index 9028868f696d..5168586fa522 100644
--- a/src/basic/copy.c
+++ b/src/basic/copy.c
@@ -8,6 +8,7 @@
#include <sys/sendfile.h>
#include <sys/xattr.h>
#include <unistd.h>
+#include <signal.h>
#include "alloc-util.h"
#include "btrfs-util.h"

View File

@ -1,228 +0,0 @@
diff -ur systemd-stable-245.5/src/basic/socket-util.h systemd-stable-245.5.new/src/basic/socket-util.h
--- systemd-stable-245.5/src/basic/socket-util.h 2020-04-17 12:37:12.000000000 +0000
+++ systemd-stable-245.5.new/src/basic/socket-util.h 2020-06-30 11:39:12.196587133 +0000
@@ -2,6 +2,7 @@
#pragma once
#include <inttypes.h>
+#include <netinet/if_ether.h>
#include <linux/netlink.h>
#include <linux/if_ether.h>
#include <linux/if_infiniband.h>
diff -ur systemd-stable-245.5/src/libsystemd/sd-netlink/netlink-types.c systemd-stable-245.5.new/src/libsystemd/sd-netlink/netlink-types.c
--- systemd-stable-245.5/src/libsystemd/sd-netlink/netlink-types.c 2020-04-17 12:37:12.000000000 +0000
+++ systemd-stable-245.5.new/src/libsystemd/sd-netlink/netlink-types.c 2020-06-30 11:38:29.976587133 +0000
@@ -3,6 +3,7 @@
#include <netinet/in.h>
#include <stdint.h>
#include <sys/socket.h>
+#include <netinet/if_ether.h>
#include <linux/can/vxcan.h>
#include <linux/netlink.h>
#include <linux/rtnetlink.h>
diff -ur systemd-stable-245.5/src/libsystemd-network/sd-dhcp6-client.c systemd-stable-245.5.new/src/libsystemd-network/sd-dhcp6-client.c
--- systemd-stable-245.5/src/libsystemd-network/sd-dhcp6-client.c 2020-04-17 12:37:12.000000000 +0000
+++ systemd-stable-245.5.new/src/libsystemd-network/sd-dhcp6-client.c 2020-06-30 11:38:29.976587133 +0000
@@ -5,7 +5,6 @@
#include <errno.h>
#include <sys/ioctl.h>
-#include <linux/if_arp.h>
#include <linux/if_infiniband.h>
#include "sd-dhcp6-client.h"
diff -ur systemd-stable-245.5/src/machine/machine-dbus.c systemd-stable-245.5.new/src/machine/machine-dbus.c
--- systemd-stable-245.5/src/machine/machine-dbus.c 2020-04-17 12:37:12.000000000 +0000
+++ systemd-stable-245.5.new/src/machine/machine-dbus.c 2020-06-30 11:38:29.976587133 +0000
@@ -3,6 +3,7 @@
#include <errno.h>
#include <sys/mount.h>
#include <sys/wait.h>
+#include <netinet/if_ether.h>
/* When we include libgen.h because we need dirname() we immediately
* undefine basename() since libgen.h defines it as a macro to the POSIX
diff -ur systemd-stable-245.5/src/network/netdev/bond.c systemd-stable-245.5.new/src/network/netdev/bond.c
--- systemd-stable-245.5/src/network/netdev/bond.c 2020-04-17 12:37:12.000000000 +0000
+++ systemd-stable-245.5.new/src/network/netdev/bond.c 2020-06-30 11:38:29.976587133 +0000
@@ -1,5 +1,6 @@
/* SPDX-License-Identifier: LGPL-2.1+ */
+#include <netinet/if_ether.h>
#include "alloc-util.h"
#include "bond.h"
#include "conf-parser.h"
diff -ur systemd-stable-245.5/src/network/netdev/bridge.c systemd-stable-245.5.new/src/network/netdev/bridge.c
--- systemd-stable-245.5/src/network/netdev/bridge.c 2020-04-17 12:37:12.000000000 +0000
+++ systemd-stable-245.5.new/src/network/netdev/bridge.c 2020-06-30 11:38:29.976587133 +0000
@@ -1,5 +1,6 @@
/* SPDX-License-Identifier: LGPL-2.1+ */
+#include <netinet/if_ether.h>
#include <net/if.h>
#include "bridge.h"
diff -ur systemd-stable-245.5/src/network/netdev/macsec.c systemd-stable-245.5.new/src/network/netdev/macsec.c
--- systemd-stable-245.5/src/network/netdev/macsec.c 2020-04-17 12:37:12.000000000 +0000
+++ systemd-stable-245.5.new/src/network/netdev/macsec.c 2020-06-30 11:38:29.976587133 +0000
@@ -1,5 +1,6 @@
/* SPDX-License-Identifier: LGPL-2.1+ */
+#include <netinet/if_ether.h>
#include <netinet/in.h>
#include <linux/if_ether.h>
#include <linux/if_macsec.h>
diff -ur systemd-stable-245.5/src/network/netdev/netdev-gperf.gperf systemd-stable-245.5.new/src/network/netdev/netdev-gperf.gperf
--- systemd-stable-245.5/src/network/netdev/netdev-gperf.gperf 2020-04-17 12:37:12.000000000 +0000
+++ systemd-stable-245.5.new/src/network/netdev/netdev-gperf.gperf 2020-06-30 11:38:29.976587133 +0000
@@ -2,6 +2,7 @@
#if __GNUC__ >= 7
_Pragma("GCC diagnostic ignored \"-Wimplicit-fallthrough\"")
#endif
+#include <netinet/if_ether.h>
#include <stddef.h>
#include "bond.h"
#include "bridge.h"
diff -ur systemd-stable-245.5/src/network/netdev/netdev.c systemd-stable-245.5.new/src/network/netdev/netdev.c
--- systemd-stable-245.5/src/network/netdev/netdev.c 2020-04-17 12:37:12.000000000 +0000
+++ systemd-stable-245.5.new/src/network/netdev/netdev.c 2020-06-30 11:38:29.976587133 +0000
@@ -1,5 +1,6 @@
/* SPDX-License-Identifier: LGPL-2.1+ */
+#include <netinet/if_ether.h>
#include <net/if.h>
#include <netinet/in.h>
diff -ur systemd-stable-245.5/src/network/networkd-brvlan.c systemd-stable-245.5.new/src/network/networkd-brvlan.c
--- systemd-stable-245.5/src/network/networkd-brvlan.c 2020-04-17 12:37:12.000000000 +0000
+++ systemd-stable-245.5.new/src/network/networkd-brvlan.c 2020-06-30 11:38:29.976587133 +0000
@@ -4,6 +4,7 @@
***/
#include <netinet/in.h>
+#include <netinet/if_ether.h>
#include <linux/if_bridge.h>
#include <stdbool.h>
diff -ur systemd-stable-245.5/src/network/networkd-dhcp-common.c systemd-stable-245.5.new/src/network/networkd-dhcp-common.c
--- systemd-stable-245.5/src/network/networkd-dhcp-common.c 2020-04-17 12:37:12.000000000 +0000
+++ systemd-stable-245.5.new/src/network/networkd-dhcp-common.c 2020-06-30 11:38:29.986587133 +0000
@@ -4,6 +4,7 @@
#include "escape.h"
#include "in-addr-util.h"
#include "networkd-dhcp-common.h"
+#include <netinet/if_ether.h>
#include "networkd-network.h"
#include "parse-util.h"
#include "string-table.h"
diff -ur systemd-stable-245.5/src/network/networkd-dhcp4.c systemd-stable-245.5.new/src/network/networkd-dhcp4.c
--- systemd-stable-245.5/src/network/networkd-dhcp4.c 2020-04-17 12:37:12.000000000 +0000
+++ systemd-stable-245.5.new/src/network/networkd-dhcp4.c 2020-06-30 11:38:29.986587133 +0000
@@ -1,9 +1,9 @@
/* SPDX-License-Identifier: LGPL-2.1+ */
+#include <netinet/if_ether.h>
#include <netinet/in.h>
#include <netinet/ip.h>
#include <linux/if.h>
-#include <linux/if_arp.h>
#include "alloc-util.h"
#include "dhcp-client-internal.h"
diff -ur systemd-stable-245.5/src/network/networkd-dhcp6.c systemd-stable-245.5.new/src/network/networkd-dhcp6.c
--- systemd-stable-245.5/src/network/networkd-dhcp6.c 2020-04-17 12:37:12.000000000 +0000
+++ systemd-stable-245.5.new/src/network/networkd-dhcp6.c 2020-06-30 11:38:29.986587133 +0000
@@ -3,9 +3,9 @@
Copyright © 2014 Intel Corporation. All rights reserved.
***/
+#include <netinet/if_ether.h>
#include <netinet/in.h>
#include <linux/if.h>
-#include <linux/if_arp.h>
#include "sd-radv.h"
#include "sd-dhcp6-client.h"
diff -ur systemd-stable-245.5/src/network/networkd-link.c systemd-stable-245.5.new/src/network/networkd-link.c
--- systemd-stable-245.5/src/network/networkd-link.c 2020-04-17 12:37:12.000000000 +0000
+++ systemd-stable-245.5.new/src/network/networkd-link.c 2020-06-30 11:38:29.986587133 +0000
@@ -1,8 +1,8 @@
/* SPDX-License-Identifier: LGPL-2.1+ */
+#include <netinet/if_ether.h>
#include <netinet/in.h>
#include <linux/if.h>
-#include <linux/if_arp.h>
#include <unistd.h>
#include "alloc-util.h"
diff -ur systemd-stable-245.5/src/network/networkd-network.c systemd-stable-245.5.new/src/network/networkd-network.c
--- systemd-stable-245.5/src/network/networkd-network.c 2020-04-17 12:37:12.000000000 +0000
+++ systemd-stable-245.5.new/src/network/networkd-network.c 2020-06-30 11:38:29.986587133 +0000
@@ -1,5 +1,6 @@
/* SPDX-License-Identifier: LGPL-2.1+ */
+#include <netinet/if_ether.h>
#include <net/if.h>
#include <netinet/in.h>
#include <linux/netdevice.h>
diff -ur systemd-stable-245.5/src/network/test-network-tables.c systemd-stable-245.5.new/src/network/test-network-tables.c
--- systemd-stable-245.5/src/network/test-network-tables.c 2020-04-17 12:37:12.000000000 +0000
+++ systemd-stable-245.5.new/src/network/test-network-tables.c 2020-06-30 11:38:29.986587133 +0000
@@ -1,3 +1,4 @@
+#include <netinet/if_ether.h>
#include "bond.h"
#include "dhcp6-internal.h"
#include "dhcp6-protocol.h"
diff -ur systemd-stable-245.5/src/shared/ethtool-util.c systemd-stable-245.5.new/src/shared/ethtool-util.c
--- systemd-stable-245.5/src/shared/ethtool-util.c 2020-04-17 12:37:12.000000000 +0000
+++ systemd-stable-245.5.new/src/shared/ethtool-util.c 2020-06-30 11:38:29.986587133 +0000
@@ -1,5 +1,6 @@
/* SPDX-License-Identifier: LGPL-2.1+ */
+#include <netinet/if_ether.h>
#include <net/if.h>
#include <sys/ioctl.h>
#include <linux/ethtool.h>
diff -ur systemd-stable-245.5/src/shared/ethtool-util.h systemd-stable-245.5.new/src/shared/ethtool-util.h
--- systemd-stable-245.5/src/shared/ethtool-util.h 2020-04-17 12:37:12.000000000 +0000
+++ systemd-stable-245.5.new/src/shared/ethtool-util.h 2020-06-30 11:38:29.986587133 +0000
@@ -3,6 +3,7 @@
#include <macro.h>
#include <net/ethernet.h>
+#include <netinet/if_ether.h>
#include <linux/ethtool.h>
#include "conf-parser.h"
diff -ur systemd-stable-245.5/src/systemd/sd-netlink.h systemd-stable-245.5.new/src/systemd/sd-netlink.h
--- systemd-stable-245.5/src/systemd/sd-netlink.h 2020-04-17 12:37:12.000000000 +0000
+++ systemd-stable-245.5.new/src/systemd/sd-netlink.h 2020-06-30 11:34:24.046587133 +0000
@@ -18,6 +18,7 @@
***/
#include <inttypes.h>
+#include <netinet/if_ether.h>
#include <net/ethernet.h>
#include <netinet/in.h>
#include <linux/neighbour.h>
diff -ur systemd-stable-245.5/src/udev/net/link-config.c systemd-stable-245.5.new/src/udev/net/link-config.c
--- systemd-stable-245.5/src/udev/net/link-config.c 2020-04-17 12:37:12.000000000 +0000
+++ systemd-stable-245.5.new/src/udev/net/link-config.c 2020-06-30 11:38:29.986587133 +0000
@@ -1,5 +1,6 @@
/* SPDX-License-Identifier: LGPL-2.1+ */
+#include <netinet/if_ether.h>
#include <linux/netdevice.h>
#include <netinet/ether.h>
diff -ur systemd-stable-245.5/src/udev/udev-builtin-net_setup_link.c systemd-stable-245.5.new/src/udev/udev-builtin-net_setup_link.c
--- systemd-stable-245.5/src/udev/udev-builtin-net_setup_link.c 2020-04-17 12:37:12.000000000 +0000
+++ systemd-stable-245.5.new/src/udev/udev-builtin-net_setup_link.c 2020-06-30 11:38:29.986587133 +0000
@@ -1,5 +1,6 @@
/* SPDX-License-Identifier: LGPL-2.1+ */
+#include <netinet/if_ether.h>
#include "device-util.h"
#include "alloc-util.h"
#include "link-config.h"

View File

@ -1,50 +0,0 @@
diff -ur systemd-stable-245.5/src/basic/missing_type.h systemd-stable-245.5.new/src/basic/missing_type.h
--- systemd-stable-245.5/src/basic/missing_type.h 2020-04-17 12:37:12.000000000 +0000
+++ systemd-stable-245.5.new/src/basic/missing_type.h 2020-06-30 12:13:34.326587133 +0000
@@ -10,3 +10,23 @@
#if !HAVE_CHAR16_T
#define char16_t uint16_t
#endif
+
+#ifndef FTW_ACTIONRETVAL
+#define FTW_ACTIONRETVAL 16
+#endif
+
+#ifndef FTW_CONTINUE
+#define FTW_CONTINUE 0
+#endif
+
+#ifndef FTW_STOP
+#define FTW_STOP 1
+#endif
+
+#ifndef FTW_SKIP_SUBTREE
+#define FTW_SKIP_SUBTREE 2
+#endif
+
+#ifndef FTW_SKIP_SIBLINGS
+#define FTW_SKIP_SIBLINGS 3
+#endif
Only in systemd-stable-245.5.new/src/basic: missing_type.h.orig
diff -ur systemd-stable-245.5/src/core/kmod-setup.c systemd-stable-245.5.new/src/core/kmod-setup.c
--- systemd-stable-245.5/src/core/kmod-setup.c 2020-04-17 12:37:12.000000000 +0000
+++ systemd-stable-245.5.new/src/core/kmod-setup.c 2020-06-30 12:16:43.286587133 +0000
@@ -9,6 +9,7 @@
#include "fileio.h"
#include "kmod-setup.h"
#include "macro.h"
+#include "missing_type.h"
#include "string-util.h"
#if HAVE_KMOD
diff -ur systemd-stable-245.5/src/core/mount-setup.c systemd-stable-245.5.new/src/core/mount-setup.c
--- systemd-stable-245.5/src/core/mount-setup.c 2020-04-17 12:37:12.000000000 +0000
+++ systemd-stable-245.5.new/src/core/mount-setup.c 2020-06-30 12:15:46.596587133 +0000
@@ -21,6 +21,7 @@
#include "label.h"
#include "log.h"
#include "macro.h"
+#include "missing_type.h"
#include "mkdir.h"
#include "mount-setup.h"
#include "mountpoint-util.h"

View File

@ -1,38 +0,0 @@
diff -ur systemd-stable-245.5/src/basic/selinux-util.c systemd-stable-245.5.new/src/basic/selinux-util.c
--- systemd-stable-245.5/src/basic/selinux-util.c 2020-04-17 12:37:12.000000000 +0000
+++ systemd-stable-245.5.new/src/basic/selinux-util.c 2020-06-30 13:33:03.366587133 +0000
@@ -60,7 +60,6 @@
#if HAVE_SELINUX
usec_t before_timestamp, after_timestamp;
- struct mallinfo before_mallinfo, after_mallinfo;
if (label_hnd)
return 0;
@@ -68,7 +67,6 @@
if (!mac_selinux_use())
return 0;
- before_mallinfo = mallinfo();
before_timestamp = now(CLOCK_MONOTONIC);
label_hnd = selabel_open(SELABEL_CTX_FILE, NULL, 0);
@@ -77,16 +75,11 @@
r = security_getenforce() == 1 ? -errno : 0;
} else {
char timespan[FORMAT_TIMESPAN_MAX];
- int l;
after_timestamp = now(CLOCK_MONOTONIC);
- after_mallinfo = mallinfo();
- l = after_mallinfo.uordblks > before_mallinfo.uordblks ? after_mallinfo.uordblks - before_mallinfo.uordblks : 0;
-
- log_debug("Successfully loaded SELinux database in %s, size on heap is %iK.",
- format_timespan(timespan, sizeof(timespan), after_timestamp - before_timestamp, 0),
- (l+1023)/1024);
+ log_debug("Successfully loaded SELinux database in %s",
+ format_timespan(timespan, sizeof(timespan), after_timestamp - before_timestamp, 0));
}
#endif

View File

@ -1,96 +0,0 @@
From 156a5fd297b61bce31630d7a52c15614bf784843 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= <zbyszek@in.waw.pl>
Date: Sun, 31 May 2020 18:21:09 +0200
Subject: [PATCH 1/1] basic/user-util: always use base 10 for user/group
numbers
We would parse numbers with base prefixes as user identifiers. For example,
"0x2b3bfa0" would be interpreted as UID==45334432 and "01750" would be
interpreted as UID==1000. This parsing was used also in cases where either a
user/group name or number may be specified. This means that names like
0x2b3bfa0 would be ambiguous: they are a valid user name according to our
documented relaxed rules, but they would also be parsed as numeric uids.
This behaviour is definitely not expected by users, since tools generally only
accept decimal numbers (e.g. id, getent passwd), while other tools only accept
user names and thus will interpret such strings as user names without even
attempting to convert them to numbers (su, ssh). So let's follow suit and only
accept numbers in decimal notation. Effectively this means that we will reject
such strings as a username/uid/groupname/gid where strict mode is used, and try
to look up a user/group with such a name in relaxed mode.
Since the function changed is fairly low-level and fairly widely used, this
affects multiple tools: loginctl show-user/enable-linger/disable-linger foo',
the third argument in sysusers.d, fourth and fifth arguments in tmpfiles.d,
etc.
Fixes #15985.
---
src/basic/user-util.c | 2 +-
src/test/test-user-util.c | 10 ++++++++++
2 files changed, 11 insertions(+), 1 deletion(-)
--- end of commit 156a5fd297b61bce31630d7a52c15614bf784843 ---
Add definition of safe_atou32_full() from commit b934ac3d6e7dcad114776ef30ee9098693e7ab7e
CVE: CVE-2020-13776
Upstream-Status: Backport [https://github.com/systemd/systemd.git]
Signed-off-by: Joe Slater <joe.slater@windriver.com>
--- git.orig/src/basic/user-util.c
+++ git/src/basic/user-util.c
@@ -49,7 +49,7 @@ int parse_uid(const char *s, uid_t *ret)
assert(s);
assert_cc(sizeof(uid_t) == sizeof(uint32_t));
- r = safe_atou32(s, &uid);
+ r = safe_atou32_full(s, 10, &uid);
if (r < 0)
return r;
--- git.orig/src/test/test-user-util.c
+++ git/src/test/test-user-util.c
@@ -48,9 +48,19 @@ static void test_parse_uid(void) {
r = parse_uid("65535", &uid);
assert_se(r == -ENXIO);
+ assert_se(uid == 100);
+
+ r = parse_uid("0x1234", &uid);
+ assert_se(r == -EINVAL);
+ assert_se(uid == 100);
+
+ r = parse_uid("01234", &uid);
+ assert_se(r == 0);
+ assert_se(uid == 1234);
r = parse_uid("asdsdas", &uid);
assert_se(r == -EINVAL);
+ assert_se(uid == 1234);
}
static void test_uid_ptr(void) {
--- git.orig/src/basic/parse-util.h
+++ git/src/basic/parse-util.h
@@ -45,9 +45,13 @@ static inline int safe_atoux16(const cha
int safe_atoi16(const char *s, int16_t *ret);
-static inline int safe_atou32(const char *s, uint32_t *ret_u) {
+static inline int safe_atou32_full(const char *s, unsigned base, uint32_t *ret_u) {
assert_cc(sizeof(uint32_t) == sizeof(unsigned));
- return safe_atou(s, (unsigned*) ret_u);
+ return safe_atou_full(s, base, (unsigned*) ret_u);
+}
+
+static inline int safe_atou32(const char *s, uint32_t *ret_u) {
+ return safe_atou32_full(s, 0, (unsigned*) ret_u);
}
static inline int safe_atoi32(const char *s, int32_t *ret_i) {

View File

@ -1,30 +0,0 @@
From: Martin Pitt <martin.pitt@ubuntu.com>
Date: Sun, 28 Dec 2014 12:49:35 +0100
Subject: Don't enable audit by default
It causes flooding of dmesg and syslog, suppressing actually important
messages.
Don't enable it for now, until a better solution is found:
http://lists.freedesktop.org/archives/systemd-devel/2014-December/026591.html
Bug-Debian: https://bugs.debian.org/773528
---
src/journal/journald-audit.c | 5 -----
1 file changed, 5 deletions(-)
diff --git a/src/journal/journald-audit.c b/src/journal/journald-audit.c
index 69742fa..25ef743 100644
--- a/src/journal/journald-audit.c
+++ b/src/journal/journald-audit.c
@@ -542,10 +542,5 @@ int server_open_audit(Server *s) {
if (r < 0)
return log_error_errno(r, "Failed to add audit fd to event loop: %m");
- /* We are listening now, try to enable audit */
- r = enable_audit(s->audit_fd, true);
- if (r < 0)
- log_warning_errno(r, "Failed to issue audit enable call: %m");
-
return 0;
}

View File

@ -1,27 +0,0 @@
From 3c7918deafa34313b935851171279d8fdb5cfadb Mon Sep 17 00:00:00 2001
From: Mike Gilbert <floppym@gentoo.org>
Date: Tue, 25 Dec 2018 22:52:50 -0500
Subject: [PATCH] path-lookup: look for generators in
{,/usr}/lib/systemd/system-generators
Bug: https://bugs.gentoo.org/625402
---
src/shared/path-lookup.c | 2 ++
1 file changed, 2 insertions(+)
diff --git a/src/shared/path-lookup.c b/src/shared/path-lookup.c
index 442fde7b2d..6814164504 100644
--- a/src/shared/path-lookup.c
+++ b/src/shared/path-lookup.c
@@ -888,6 +888,8 @@ char **generator_binary_paths(UnitFileScope scope) {
return strv_new("/run/systemd/system-generators",
"/etc/systemd/system-generators",
"/usr/local/lib/systemd/system-generators",
+ "/usr/lib/systemd/system-generators",
+ "/lib/systemd/system-generators",
SYSTEM_GENERATOR_PATH);
case UNIT_FILE_GLOBAL:
--
2.20.1

View File

@ -0,0 +1,26 @@
From 91182cc273d2dd8325d856fd683d2d8e038abd91 Mon Sep 17 00:00:00 2001
From: Mike Gilbert <floppym@gentoo.org>
Date: Tue, 25 Dec 2018 22:52:50 -0500
Subject: [PATCH] path-lookup: look for generators in
/usr/lib/systemd/system-generators
Bug: https://bugs.gentoo.org/625402
---
src/basic/path-lookup.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/src/basic/path-lookup.c b/src/basic/path-lookup.c
index 52968dee34..0cb10b1116 100644
--- a/src/basic/path-lookup.c
+++ b/src/basic/path-lookup.c
@@ -798,6 +798,7 @@ char **generator_binary_paths(UnitFileScope scope) {
add = strv_new("/run/systemd/system-generators",
"/etc/systemd/system-generators",
"/usr/local/lib/systemd/system-generators",
+ "/usr/lib/systemd/system-generators",
SYSTEM_GENERATOR_DIR);
break;
--
2.26.1

View File

@ -0,0 +1,40 @@
From 593db1c78011ddce551051ce17eda6feac079b3d Mon Sep 17 00:00:00 2001
From: Mike Gilbert <floppym@gentoo.org>
Date: Fri, 21 Aug 2020 13:16:17 -0400
Subject: [PATCH] journald: do not change the kernel audit setting by default
Bug: https://bugs.gentoo.org/736910
---
man/journald.conf.xml | 2 +-
src/journal/journald-server.c | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/man/journald.conf.xml b/man/journald.conf.xml
index bfd359a903..7e93d4050e 100644
--- a/man/journald.conf.xml
+++ b/man/journald.conf.xml
@@ -411,7 +411,7 @@
<command>systemd-journald</command> collects generated audit records, it just controls whether it
tells the kernel to generate them. This means if another tool turns on auditing even if
<command>systemd-journald</command> left it off, it will still collect the generated
- messages. Defaults to on.</para></listitem>
+ messages.</para></listitem>
</varlistentry>
<varlistentry>
diff --git a/src/journal/journald-server.c b/src/journal/journald-server.c
index 5865bf9809..163be685a8 100644
--- a/src/journal/journald-server.c
+++ b/src/journal/journald-server.c
@@ -2208,7 +2208,7 @@ int server_init(Server *s, const char *namespace) {
.compress.threshold_bytes = (uint64_t) -1,
.seal = true,
- .set_audit = true,
+ .set_audit = -1,
.watchdog_usec = USEC_INFINITY,
--
2.28.0

View File

@ -0,0 +1,33 @@
From b744751e2ced66c2ec191e8bd490cb9bdffc630a Mon Sep 17 00:00:00 2001
From: Mike Gilbert <floppym@gentoo.org>
Date: Tue, 3 Nov 2020 10:42:51 -0500
Subject: [PATCH] pam: include system-auth for systemd --user
---
src/login/systemd-user.m4 | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/src/login/systemd-user.m4 b/src/login/systemd-user.m4
index f6313f79fe..bcf84b4c64 100644
--- a/src/login/systemd-user.m4
+++ b/src/login/systemd-user.m4
@@ -5,7 +5,7 @@
m4_ifdef(`ENABLE_HOMED',
-account sufficient pam_systemd_home.so
)m4_dnl
-account sufficient pam_unix.so
+account include system-auth
account required pam_permit.so
m4_ifdef(`HAVE_SELINUX',
@@ -13,6 +13,7 @@ session required pam_selinux.so close
session required pam_selinux.so nottys open
)m4_dnl
session required pam_loginuid.so
+session include system-auth
session optional pam_keyinit.so force revoke
m4_ifdef(`ENABLE_HOMED',
-session optional pam_systemd_home.so
--
2.29.0

View File

@ -0,0 +1,25 @@
From d9059d2ef1b0d6034267cc8ff44871d0f82f840f Mon Sep 17 00:00:00 2001
From: Mike Gilbert <floppym@gentoo.org>
Date: Sun, 8 Nov 2020 12:34:11 -0500
Subject: [PATCH] systemctl: disable synchronizaion of sysv init scripts
---
src/systemctl/systemctl-sysv-compat.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/systemctl/systemctl-sysv-compat.c b/src/systemctl/systemctl-sysv-compat.c
index 2dca9e480f..5dcf13ba17 100644
--- a/src/systemctl/systemctl-sysv-compat.c
+++ b/src/systemctl/systemctl-sysv-compat.c
@@ -111,7 +111,7 @@ int parse_shutdown_time_spec(const char *t, usec_t *ret) {
int enable_sysv_units(const char *verb, char **args) {
int r = 0;
-#if HAVE_SYSV_COMPAT
+#if 0
_cleanup_(lookup_paths_free) LookupPaths paths = {};
unsigned f = 0;
--
2.29.0

View File

@ -1,25 +0,0 @@
From 7ccd5724afc6fa83ec6cd93dbaf4faf3671c88fc Mon Sep 17 00:00:00 2001
From: Mike Gilbert <floppym@gentoo.org>
Date: Mon, 27 Apr 2020 10:22:03 -0400
Subject: [PATCH] systemctl: disable synchronizaion of sysv init scripts
---
src/systemctl/systemctl.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/systemctl/systemctl.c b/src/systemctl/systemctl.c
index d319d5d375..bb8419800c 100644
--- a/src/systemctl/systemctl.c
+++ b/src/systemctl/systemctl.c
@@ -6622,7 +6622,7 @@ static int import_environment(int argc, char *argv[], void *userdata) {
static int enable_sysv_units(const char *verb, char **args) {
int r = 0;
-#if HAVE_SYSV_COMPAT
+#if 0
_cleanup_(lookup_paths_free) LookupPaths paths = {};
unsigned f = 0;
--
2.26.2

View File

@ -1,16 +0,0 @@
--- a/src/login/systemd-user.m4
+++ b/src/login/systemd-user.m4
@@ -2,11 +2,7 @@
#
# Used by systemd --user instances.
-account required pam_unix.so
-m4_ifdef(`HAVE_SELINUX',
-session required pam_selinux.so close
-session required pam_selinux.so nottys open
-)m4_dnl
-session required pam_loginuid.so
+account include system-auth
+session include system-auth
session optional pam_keyinit.so force revoke
session optional pam_systemd.so

View File

@ -1,4 +1,4 @@
From 3eb12a6ba0bce149717eaabeb1505d379b3d705a Mon Sep 17 00:00:00 2001 From 159c53612444ec1df492bae528a5a88a275b93bf Mon Sep 17 00:00:00 2001
From: Chen Qi <Qi.Chen@windriver.com> From: Chen Qi <Qi.Chen@windriver.com>
Date: Mon, 25 Feb 2019 13:41:41 +0800 Date: Mon, 25 Feb 2019 13:41:41 +0800
Subject: [PATCH] don't use glibc-specific qsort_r Subject: [PATCH] don't use glibc-specific qsort_r
@ -10,6 +10,8 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Chen Qi <Qi.Chen@windriver.com> Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
[Rebased for v242] [Rebased for v242]
Signed-off-by: Andrej Valek <andrej.valek@siemens.com> Signed-off-by: Andrej Valek <andrej.valek@siemens.com>
[Rebased for v247]
Signed-off-by: Luca Boccassi <luca.boccassi@microsoft.com>
--- ---
src/basic/sort-util.h | 14 ------------ src/basic/sort-util.h | 14 ------------
@ -18,14 +20,13 @@ Signed-off-by: Andrej Valek <andrej.valek@siemens.com>
3 files changed, 38 insertions(+), 31 deletions(-) 3 files changed, 38 insertions(+), 31 deletions(-)
diff --git a/src/basic/sort-util.h b/src/basic/sort-util.h diff --git a/src/basic/sort-util.h b/src/basic/sort-util.h
index e029f8646eb0..27d68b341cf3 100644 index 49586a4a24..d92a5ab0ed 100644
--- a/src/basic/sort-util.h --- a/src/basic/sort-util.h
+++ b/src/basic/sort-util.h +++ b/src/basic/sort-util.h
@@ -54,17 +54,3 @@ static inline void qsort_safe(void *base, size_t nmemb, size_t size, __compar_fn @@ -55,18 +55,4 @@ static inline void _qsort_safe(void *base, size_t nmemb, size_t size, __compar_f
int (*_func_)(const typeof(p[0])*, const typeof(p[0])*) = func; \ _qsort_safe((p), (n), sizeof((p)[0]), (__compar_fn_t) _func_); \
qsort_safe((p), (n), sizeof((p)[0]), (__compar_fn_t) _func_); \
}) })
-
-static inline void qsort_r_safe(void *base, size_t nmemb, size_t size, __compar_d_fn_t compar, void *userdata) { -static inline void qsort_r_safe(void *base, size_t nmemb, size_t size, __compar_d_fn_t compar, void *userdata) {
- if (nmemb <= 1) - if (nmemb <= 1)
- return; - return;
@ -39,11 +40,13 @@ index e029f8646eb0..27d68b341cf3 100644
- int (*_func_)(const typeof(p[0])*, const typeof(p[0])*, typeof(userdata)) = func; \ - int (*_func_)(const typeof(p[0])*, const typeof(p[0])*, typeof(userdata)) = func; \
- qsort_r_safe((p), (n), sizeof((p)[0]), (__compar_d_fn_t) _func_, userdata); \ - qsort_r_safe((p), (n), sizeof((p)[0]), (__compar_d_fn_t) _func_, userdata); \
- }) - })
-
int cmp_int(const int *a, const int *b);
diff --git a/src/libsystemd/sd-hwdb/hwdb-util.c b/src/libsystemd/sd-hwdb/hwdb-util.c diff --git a/src/libsystemd/sd-hwdb/hwdb-util.c b/src/libsystemd/sd-hwdb/hwdb-util.c
index d790e8fd0b19..42e0fd7c9b3c 100644 index fd45ff0f54..ac4b63c49b 100644
--- a/src/libsystemd/sd-hwdb/hwdb-util.c --- a/src/libsystemd/sd-hwdb/hwdb-util.c
+++ b/src/libsystemd/sd-hwdb/hwdb-util.c +++ b/src/libsystemd/sd-hwdb/hwdb-util.c
@@ -128,9 +128,13 @@ static void trie_free(struct trie *trie) { @@ -126,9 +126,13 @@ static struct trie* trie_free(struct trie *trie) {
DEFINE_TRIVIAL_CLEANUP_FUNC(struct trie*, trie_free); DEFINE_TRIVIAL_CLEANUP_FUNC(struct trie*, trie_free);
@ -60,7 +63,7 @@ index d790e8fd0b19..42e0fd7c9b3c 100644
} }
static int trie_node_add_value(struct trie *trie, struct trie_node *node, static int trie_node_add_value(struct trie *trie, struct trie_node *node,
@@ -158,7 +162,10 @@ static int trie_node_add_value(struct trie *trie, struct trie_node *node, @@ -156,7 +160,10 @@ static int trie_node_add_value(struct trie *trie, struct trie_node *node,
.value_off = v, .value_off = v,
}; };
@ -72,7 +75,7 @@ index d790e8fd0b19..42e0fd7c9b3c 100644
if (val) { if (val) {
/* At this point we have 2 identical properties on the same match-string. /* At this point we have 2 identical properties on the same match-string.
* Since we process files in order, we just replace the previous value. */ * Since we process files in order, we just replace the previous value. */
@@ -184,7 +191,9 @@ static int trie_node_add_value(struct trie *trie, struct trie_node *node, @@ -182,7 +189,9 @@ static int trie_node_add_value(struct trie *trie, struct trie_node *node,
.line_number = line_number, .line_number = line_number,
}; };
node->values_count++; node->values_count++;
@ -84,10 +87,10 @@ index d790e8fd0b19..42e0fd7c9b3c 100644
} }
diff --git a/src/shared/format-table.c b/src/shared/format-table.c diff --git a/src/shared/format-table.c b/src/shared/format-table.c
index 425013046491..33c1c5a12d43 100644 index dccb796b26..c3ab8ac296 100644
--- a/src/shared/format-table.c --- a/src/shared/format-table.c
+++ b/src/shared/format-table.c +++ b/src/shared/format-table.c
@@ -1164,31 +1164,33 @@ static int cell_data_compare(TableData *a, size_t index_a, TableData *b, size_t @@ -1290,30 +1290,32 @@ static int cell_data_compare(TableData *a, size_t index_a, TableData *b, size_t
return CMP(index_a, index_b); return CMP(index_a, index_b);
} }
@ -95,7 +98,6 @@ index 425013046491..33c1c5a12d43 100644
+static Table *user_table; +static Table *user_table;
+static int table_data_compare(const void *x, const void *y) { +static int table_data_compare(const void *x, const void *y) {
+ const size_t *a = x, *b=y; + const size_t *a = x, *b=y;
size_t i;
int r; int r;
- assert(t); - assert(t);
@ -115,8 +117,8 @@ index 425013046491..33c1c5a12d43 100644
return 1; return 1;
/* Order other lines by the sorting map */ /* Order other lines by the sorting map */
- for (i = 0; i < t->n_sort_map; i++) { - for (size_t i = 0; i < t->n_sort_map; i++) {
+ for (i = 0; i < user_table->n_sort_map; i++) { + for (size_t i = 0; i < user_table->n_sort_map; i++) {
TableData *d, *dd; TableData *d, *dd;
- d = t->data[*a + t->sort_map[i]]; - d = t->data[*a + t->sort_map[i]];
@ -131,8 +133,8 @@ index 425013046491..33c1c5a12d43 100644
} }
/* Order identical lines by the order there were originally added in */ /* Order identical lines by the order there were originally added in */
@@ -1690,7 +1692,12 @@ int table_print(Table *t, FILE *f) { @@ -1952,7 +1954,12 @@ int table_print(Table *t, FILE *f) {
for (i = 0; i < n_rows; i++) for (size_t i = 0; i < n_rows; i++)
sorted[i] = i * t->n_columns; sorted[i] = i * t->n_columns;
- typesafe_qsort_r(sorted, n_rows, table_data_compare, t); - typesafe_qsort_r(sorted, n_rows, table_data_compare, t);
@ -145,8 +147,8 @@ index 425013046491..33c1c5a12d43 100644
} }
if (t->display_map) if (t->display_map)
@@ -2236,7 +2243,12 @@ int table_to_json(Table *t, JsonVariant **ret) { @@ -2580,7 +2587,12 @@ int table_to_json(Table *t, JsonVariant **ret) {
for (i = 0; i < n_rows; i++) for (size_t i = 0; i < n_rows; i++)
sorted[i] = i * t->n_columns; sorted[i] = i * t->n_columns;
- typesafe_qsort_r(sorted, n_rows, table_data_compare, t); - typesafe_qsort_r(sorted, n_rows, table_data_compare, t);

View File

@ -1,4 +1,4 @@
From 233de872b9b033ec842c2135152d2e006ac44c16 Mon Sep 17 00:00:00 2001 From 4afb8adc83348bf75964fc10af7902e04dd62637 Mon Sep 17 00:00:00 2001
From: Chen Qi <Qi.Chen@windriver.com> From: Chen Qi <Qi.Chen@windriver.com>
Date: Mon, 25 Feb 2019 13:55:12 +0800 Date: Mon, 25 Feb 2019 13:55:12 +0800
Subject: [PATCH] missing_type.h: add __compare_fn_t and comparison_fn_t Subject: [PATCH] missing_type.h: add __compare_fn_t and comparison_fn_t
@ -15,14 +15,14 @@ Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Andrej Valek <andrej.valek@siemens.com> Signed-off-by: Andrej Valek <andrej.valek@siemens.com>
--- ---
src/basic/missing_type.h | 9 +++++++++ src/basic/missing_type.h | 9 +++++++++
src/basic/sort-util.h | 1 + src/basic/sort-util.h | 1 +
src/core/kmod-setup.c | 1 + src/core/kmod-setup.c | 1 +
src/journal/catalog.c | 1 + src/libsystemd/sd-journal/catalog.c | 1 +
4 files changed, 12 insertions(+) 4 files changed, 12 insertions(+)
diff --git a/src/basic/missing_type.h b/src/basic/missing_type.h diff --git a/src/basic/missing_type.h b/src/basic/missing_type.h
index bf8a6caa1b46..c487e65e7bde 100644 index f6233090a9..aeaf6ad5ec 100644
--- a/src/basic/missing_type.h --- a/src/basic/missing_type.h
+++ b/src/basic/missing_type.h +++ b/src/basic/missing_type.h
@@ -10,3 +10,12 @@ @@ -10,3 +10,12 @@
@ -39,7 +39,7 @@ index bf8a6caa1b46..c487e65e7bde 100644
+typedef int (*__compar_fn_t)(const void *, const void *); +typedef int (*__compar_fn_t)(const void *, const void *);
+#endif +#endif
diff --git a/src/basic/sort-util.h b/src/basic/sort-util.h diff --git a/src/basic/sort-util.h b/src/basic/sort-util.h
index 27d68b341cf3..307ea4ac0e8e 100644 index d92a5ab0ed..a63867c716 100644
--- a/src/basic/sort-util.h --- a/src/basic/sort-util.h
+++ b/src/basic/sort-util.h +++ b/src/basic/sort-util.h
@@ -4,6 +4,7 @@ @@ -4,6 +4,7 @@
@ -51,7 +51,7 @@ index 27d68b341cf3..307ea4ac0e8e 100644
void *xbsearch_r(const void *key, const void *base, size_t nmemb, size_t size, void *xbsearch_r(const void *key, const void *base, size_t nmemb, size_t size,
__compar_d_fn_t compar, void *arg); __compar_d_fn_t compar, void *arg);
diff --git a/src/core/kmod-setup.c b/src/core/kmod-setup.c diff --git a/src/core/kmod-setup.c b/src/core/kmod-setup.c
index 128674327362..09ccd613e32c 100644 index 8a7f82812a..a56f12f47f 100644
--- a/src/core/kmod-setup.c --- a/src/core/kmod-setup.c
+++ b/src/core/kmod-setup.c +++ b/src/core/kmod-setup.c
@@ -10,6 +10,7 @@ @@ -10,6 +10,7 @@
@ -62,10 +62,10 @@ index 128674327362..09ccd613e32c 100644
#if HAVE_KMOD #if HAVE_KMOD
#include "module-util.h" #include "module-util.h"
diff --git a/src/journal/catalog.c b/src/journal/catalog.c diff --git a/src/libsystemd/sd-journal/catalog.c b/src/libsystemd/sd-journal/catalog.c
index 70b2c8b46c4e..d574a64586f1 100644 index aea3241d18..75e6c56a28 100644
--- a/src/journal/catalog.c --- a/src/libsystemd/sd-journal/catalog.c
+++ b/src/journal/catalog.c +++ b/src/libsystemd/sd-journal/catalog.c
@@ -28,6 +28,7 @@ @@ -28,6 +28,7 @@
#include "string-util.h" #include "string-util.h"
#include "strv.h" #include "strv.h"

View File

@ -1,7 +1,7 @@
From 8af168cefca01f8f2da336f1c82620c284dc74f2 Mon Sep 17 00:00:00 2001 From 6c18e5f9373da3e3b38f2c5727e2aefe07fcbbd9 Mon Sep 17 00:00:00 2001
From: Chen Qi <Qi.Chen@windriver.com> From: Alexander Kanavin <alex.kanavin@gmail.com>
Date: Mon, 25 Feb 2019 14:04:21 +0800 Date: Sat, 22 May 2021 20:26:24 +0200
Subject: [PATCH] add fallback parse_printf_format implementation Subject: [PATCH] [PATCH] add fallback parse_printf_format implementation
Upstream-Status: Inappropriate [musl specific] Upstream-Status: Inappropriate [musl specific]
@ -10,23 +10,22 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Chen Qi <Qi.Chen@windriver.com> Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
[rebased for systemd 243] [rebased for systemd 243]
Signed-off-by: Scott Murray <scott.murray@konsulko.com> Signed-off-by: Scott Murray <scott.murray@konsulko.com>
--- ---
meson.build | 1 + meson.build | 1 +
src/basic/meson.build | 5 + src/basic/meson.build | 5 +
src/basic/parse-printf-format.c | 273 ++++++++++++++++++++++++++++++++ src/basic/parse-printf-format.c | 273 +++++++++++++++++++++++
src/basic/parse-printf-format.h | 57 +++++++ src/basic/parse-printf-format.h | 57 +++++
src/basic/stdio-util.h | 2 +- src/basic/stdio-util.h | 2 +-
src/journal/journal-send.c | 2 +- src/libsystemd/sd-journal/journal-send.c | 2 +-
6 files changed, 338 insertions(+), 2 deletions(-) 6 files changed, 338 insertions(+), 2 deletions(-)
create mode 100644 src/basic/parse-printf-format.c create mode 100644 src/basic/parse-printf-format.c
create mode 100644 src/basic/parse-printf-format.h create mode 100644 src/basic/parse-printf-format.h
diff --git a/meson.build b/meson.build diff --git a/meson.build b/meson.build
index fc216d22da24..a25996803d64 100644 index 27186d63a3..2abb7b3188 100644
--- a/meson.build --- a/meson.build
+++ b/meson.build +++ b/meson.build
@@ -640,6 +640,7 @@ endif @@ -675,6 +675,7 @@ endif
foreach header : ['crypt.h', foreach header : ['crypt.h',
'linux/memfd.h', 'linux/memfd.h',
'linux/vm_sockets.h', 'linux/vm_sockets.h',
@ -35,24 +34,24 @@ index fc216d22da24..a25996803d64 100644
'valgrind/memcheck.h', 'valgrind/memcheck.h',
'valgrind/valgrind.h', 'valgrind/valgrind.h',
diff --git a/src/basic/meson.build b/src/basic/meson.build diff --git a/src/basic/meson.build b/src/basic/meson.build
index ccb22e159505..25c77ea6bc0e 100644 index 60ef801a25..aba2172edd 100644
--- a/src/basic/meson.build --- a/src/basic/meson.build
+++ b/src/basic/meson.build +++ b/src/basic/meson.build
@@ -313,6 +313,11 @@ foreach item : [['af', af_list_txt, 'af', ''], @@ -341,6 +341,11 @@ endforeach
endforeach
basic_sources += generated_gperf_headers basic_sources += generated_gperf_headers
+
+if conf.get('HAVE_PRINTF_H') != 1 +if conf.get('HAVE_PRINTF_H') != 1
+ basic_sources += [files('parse-printf-format.c')] + basic_sources += [files('parse-printf-format.c')]
+endif +endif
+ +
basic_gcrypt_sources = files( +
'gcrypt-util.c', ############################################################
'gcrypt-util.h')
arch_list = [
diff --git a/src/basic/parse-printf-format.c b/src/basic/parse-printf-format.c diff --git a/src/basic/parse-printf-format.c b/src/basic/parse-printf-format.c
new file mode 100644 new file mode 100644
index 000000000000..49437e544540 index 0000000000..49437e5445
--- /dev/null --- /dev/null
+++ b/src/basic/parse-printf-format.c +++ b/src/basic/parse-printf-format.c
@@ -0,0 +1,273 @@ @@ -0,0 +1,273 @@
@ -331,7 +330,7 @@ index 000000000000..49437e544540
+} +}
diff --git a/src/basic/parse-printf-format.h b/src/basic/parse-printf-format.h diff --git a/src/basic/parse-printf-format.h b/src/basic/parse-printf-format.h
new file mode 100644 new file mode 100644
index 000000000000..47be7522d7fa index 0000000000..47be7522d7
--- /dev/null --- /dev/null
+++ b/src/basic/parse-printf-format.h +++ b/src/basic/parse-printf-format.h
@@ -0,0 +1,57 @@ @@ -0,0 +1,57 @@
@ -393,11 +392,11 @@ index 000000000000..47be7522d7fa
+ +
+#endif /* HAVE_PRINTF_H */ +#endif /* HAVE_PRINTF_H */
diff --git a/src/basic/stdio-util.h b/src/basic/stdio-util.h diff --git a/src/basic/stdio-util.h b/src/basic/stdio-util.h
index c3b9448d4f4f..2937aa13b178 100644 index 6dc1e72312..cea76b36cf 100644
--- a/src/basic/stdio-util.h --- a/src/basic/stdio-util.h
+++ b/src/basic/stdio-util.h +++ b/src/basic/stdio-util.h
@@ -1,13 +1,13 @@ @@ -1,13 +1,13 @@
/* SPDX-License-Identifier: LGPL-2.1+ */ /* SPDX-License-Identifier: LGPL-2.1-or-later */
#pragma once #pragma once
-#include <printf.h> -#include <printf.h>
@ -411,10 +410,10 @@ index c3b9448d4f4f..2937aa13b178 100644
#define snprintf_ok(buf, len, fmt, ...) \ #define snprintf_ok(buf, len, fmt, ...) \
((size_t) snprintf(buf, len, fmt, __VA_ARGS__) < (len)) ((size_t) snprintf(buf, len, fmt, __VA_ARGS__) < (len))
diff --git a/src/journal/journal-send.c b/src/journal/journal-send.c diff --git a/src/libsystemd/sd-journal/journal-send.c b/src/libsystemd/sd-journal/journal-send.c
index 912ecef73cce..43ed756bda53 100644 index fd3fd7ef9c..e8e6ad555b 100644
--- a/src/journal/journal-send.c --- a/src/libsystemd/sd-journal/journal-send.c
+++ b/src/journal/journal-send.c +++ b/src/libsystemd/sd-journal/journal-send.c
@@ -2,7 +2,6 @@ @@ -2,7 +2,6 @@
#include <errno.h> #include <errno.h>
@ -423,7 +422,7 @@ index 912ecef73cce..43ed756bda53 100644
#include <stddef.h> #include <stddef.h>
#include <sys/un.h> #include <sys/un.h>
#include <unistd.h> #include <unistd.h>
@@ -20,6 +19,7 @@ @@ -21,6 +20,7 @@
#include "stdio-util.h" #include "stdio-util.h"
#include "string-util.h" #include "string-util.h"
#include "tmpfile-util.h" #include "tmpfile-util.h"
@ -431,3 +430,6 @@ index 912ecef73cce..43ed756bda53 100644
#define SNDBUF_SIZE (8*1024*1024) #define SNDBUF_SIZE (8*1024*1024)
--
2.24.0

View File

@ -1,4 +1,4 @@
From 85dcaad8f38521ec3dc580794072b601900eed84 Mon Sep 17 00:00:00 2001 From 6b0732ac7164914ce16e231e35980b849bdfc4c8 Mon Sep 17 00:00:00 2001
From: Chen Qi <Qi.Chen@windriver.com> From: Chen Qi <Qi.Chen@windriver.com>
Date: Mon, 25 Feb 2019 14:18:21 +0800 Date: Mon, 25 Feb 2019 14:18:21 +0800
Subject: [PATCH] src/basic/missing.h: check for missing strndupa Subject: [PATCH] src/basic/missing.h: check for missing strndupa
@ -15,6 +15,8 @@ Signed-off-by: Andrej Valek <andrej.valek@siemens.com>
Signed-off-by: Scott Murray <scott.murray@konsulko.com> Signed-off-by: Scott Murray <scott.murray@konsulko.com>
Signed-off-by: Alex Kiernan <alex.kiernan@gmail.com> Signed-off-by: Alex Kiernan <alex.kiernan@gmail.com>
[rebased for systemd 244] [rebased for systemd 244]
[Rebased for v247]
Signed-off-by: Luca Boccassi <luca.boccassi@microsoft.com>
--- ---
meson.build | 1 + meson.build | 1 +
@ -24,7 +26,9 @@ Signed-off-by: Alex Kiernan <alex.kiernan@gmail.com>
src/basic/log.c | 1 + src/basic/log.c | 1 +
src/basic/missing_stdlib.h | 12 ++++++++++++ src/basic/missing_stdlib.h | 12 ++++++++++++
src/basic/mkdir.c | 1 + src/basic/mkdir.c | 1 +
src/basic/mountpoint-util.c | 1 +
src/basic/parse-util.c | 1 + src/basic/parse-util.c | 1 +
src/basic/path-lookup.c | 1 +
src/basic/proc-cmdline.c | 1 + src/basic/proc-cmdline.c | 1 +
src/basic/procfs-util.c | 1 + src/basic/procfs-util.c | 1 +
src/basic/selinux-util.c | 1 + src/basic/selinux-util.c | 1 +
@ -39,12 +43,12 @@ Signed-off-by: Alex Kiernan <alex.kiernan@gmail.com>
src/coredump/coredump-vacuum.c | 1 + src/coredump/coredump-vacuum.c | 1 +
src/journal-remote/journal-remote-main.c | 1 + src/journal-remote/journal-remote-main.c | 1 +
src/journal/journalctl.c | 1 + src/journal/journalctl.c | 1 +
src/journal/sd-journal.c | 1 +
src/libsystemd/sd-bus/bus-message.c | 1 + src/libsystemd/sd-bus/bus-message.c | 1 +
src/libsystemd/sd-bus/bus-objects.c | 1 + src/libsystemd/sd-bus/bus-objects.c | 1 +
src/libsystemd/sd-bus/bus-socket.c | 1 + src/libsystemd/sd-bus/bus-socket.c | 1 +
src/libsystemd/sd-bus/sd-bus.c | 1 + src/libsystemd/sd-bus/sd-bus.c | 1 +
src/libsystemd/sd-bus/test-bus-benchmark.c | 1 + src/libsystemd/sd-bus/test-bus-benchmark.c | 1 +
src/libsystemd/sd-journal/sd-journal.c | 1 +
src/locale/keymap-util.c | 1 + src/locale/keymap-util.c | 1 +
src/login/pam_systemd.c | 1 + src/login/pam_systemd.c | 1 +
src/network/generator/network-generator.c | 1 + src/network/generator/network-generator.c | 1 +
@ -52,6 +56,7 @@ Signed-off-by: Alex Kiernan <alex.kiernan@gmail.com>
src/nss-mymachines/nss-mymachines.c | 1 + src/nss-mymachines/nss-mymachines.c | 1 +
src/portable/portable.c | 1 + src/portable/portable.c | 1 +
src/resolve/resolvectl.c | 1 + src/resolve/resolvectl.c | 1 +
src/shared/bus-get-properties.c | 1 +
src/shared/bus-unit-procs.c | 1 + src/shared/bus-unit-procs.c | 1 +
src/shared/bus-unit-util.c | 1 + src/shared/bus-unit-util.c | 1 +
src/shared/bus-util.c | 1 + src/shared/bus-util.c | 1 +
@ -59,68 +64,57 @@ Signed-off-by: Alex Kiernan <alex.kiernan@gmail.com>
src/shared/journal-importer.c | 1 + src/shared/journal-importer.c | 1 +
src/shared/logs-show.c | 1 + src/shared/logs-show.c | 1 +
src/shared/pager.c | 1 + src/shared/pager.c | 1 +
src/shared/path-lookup.c | 1 +
src/shared/uid-range.c | 1 + src/shared/uid-range.c | 1 +
src/socket-proxy/socket-proxyd.c | 1 + src/socket-proxy/socket-proxyd.c | 1 +
src/test/test-hexdecoct.c | 1 + src/test/test-hexdecoct.c | 1 +
src/udev/udev-builtin-path_id.c | 1 + src/udev/udev-builtin-path_id.c | 1 +
src/udev/udev-event.c | 1 + src/udev/udev-event.c | 1 +
src/udev/udev-rules.c | 1 + src/udev/udev-rules.c | 1 +
49 files changed, 60 insertions(+) 51 files changed, 62 insertions(+)
diff --git a/meson.build b/meson.build
index a25996803d64..72b305b5ab58 100644
--- a/meson.build --- a/meson.build
+++ b/meson.build +++ b/meson.build
@@ -529,6 +529,7 @@ foreach ident : [ @@ -550,6 +550,7 @@ foreach ident : [
#include <unistd.h> ['execveat', '''#include <unistd.h>'''],
#include <signal.h> ['close_range', '''#include <unistd.h>'''],
#include <sys/wait.h>'''], ['epoll_pwait2', '''#include <sys/epoll.h>'''],
+ ['strndupa' , '''#include <string.h>'''], + ['strndupa' , '''#include <string.h>'''],
] ]
have = cc.has_function(ident[0], prefix : ident[1], args : '-D_GNU_SOURCE') have = cc.has_function(ident[0], prefix : ident[1], args : '-D_GNU_SOURCE')
diff --git a/src/backlight/backlight.c b/src/backlight/backlight.c
index 048441429025..01d74ea0ed4e 100644
--- a/src/backlight/backlight.c --- a/src/backlight/backlight.c
+++ b/src/backlight/backlight.c +++ b/src/backlight/backlight.c
@@ -17,6 +17,7 @@ @@ -19,6 +19,7 @@
#include "string-util.h" #include "string-util.h"
#include "strv.h" #include "strv.h"
#include "util.h" #include "util.h"
+#include "missing_stdlib.h" +#include "missing_stdlib.h"
static int find_pci_or_platform_parent(sd_device *device, sd_device **ret) { static int help(void) {
const char *subsystem, *sysname, *value; _cleanup_free_ char *link = NULL;
diff --git a/src/basic/cgroup-util.c b/src/basic/cgroup-util.c
index 54fc6ecf8b20..a5141f4cbedd 100644
--- a/src/basic/cgroup-util.c --- a/src/basic/cgroup-util.c
+++ b/src/basic/cgroup-util.c +++ b/src/basic/cgroup-util.c
@@ -37,6 +37,7 @@ @@ -38,6 +38,7 @@
#include "strv.h"
#include "unit-name.h" #include "unit-name.h"
#include "user-util.h" #include "user-util.h"
#include "xattr-util.h"
+#include "missing_stdlib.h" +#include "missing_stdlib.h"
static int cg_enumerate_items(const char *controller, const char *path, FILE **_f, const char *item) { static int cg_enumerate_items(const char *controller, const char *path, FILE **_f, const char *item) {
_cleanup_free_ char *fs = NULL; _cleanup_free_ char *fs = NULL;
diff --git a/src/basic/env-util.c b/src/basic/env-util.c
index b8dc98915f81..5049b37594bc 100644
--- a/src/basic/env-util.c --- a/src/basic/env-util.c
+++ b/src/basic/env-util.c +++ b/src/basic/env-util.c
@@ -15,6 +15,7 @@ @@ -18,6 +18,7 @@
#include "string-util.h" #include "string-util.h"
#include "strv.h" #include "strv.h"
#include "utf8.h" #include "utf8.h"
+#include "missing_stdlib.h" +#include "missing_stdlib.h"
#define VALID_CHARS_ENV_NAME \ /* We follow bash for the character set. Different shells have different rules. */
DIGITS LETTERS \ #define VALID_BASH_ENV_NAME_CHARS \
diff --git a/src/basic/log.c b/src/basic/log.c
index 17557e1844b2..6cec4d324aab 100644
--- a/src/basic/log.c --- a/src/basic/log.c
+++ b/src/basic/log.c +++ b/src/basic/log.c
@@ -34,6 +34,7 @@ @@ -36,6 +36,7 @@
#include "terminal-util.h" #include "terminal-util.h"
#include "time-util.h" #include "time-util.h"
#include "utf8.h" #include "utf8.h"
@ -128,8 +122,6 @@ index 17557e1844b2..6cec4d324aab 100644
#define SNDBUF_SIZE (8*1024*1024) #define SNDBUF_SIZE (8*1024*1024)
diff --git a/src/basic/missing_stdlib.h b/src/basic/missing_stdlib.h
index 188a8d44066a..1e16ec287aad 100644
--- a/src/basic/missing_stdlib.h --- a/src/basic/missing_stdlib.h
+++ b/src/basic/missing_stdlib.h +++ b/src/basic/missing_stdlib.h
@@ -11,3 +11,15 @@ @@ -11,3 +11,15 @@
@ -148,32 +140,46 @@ index 188a8d44066a..1e16ec287aad 100644
+ (char *)memcpy(__new, __old, __len); \ + (char *)memcpy(__new, __old, __len); \
+ }) + })
+#endif +#endif
diff --git a/src/basic/mkdir.c b/src/basic/mkdir.c
index fa682d4c438e..37902551490a 100644
--- a/src/basic/mkdir.c --- a/src/basic/mkdir.c
+++ b/src/basic/mkdir.c +++ b/src/basic/mkdir.c
@@ -13,6 +13,7 @@ @@ -14,6 +14,7 @@
#include "stat-util.h" #include "stat-util.h"
#include "stdio-util.h" #include "stdio-util.h"
#include "user-util.h" #include "user-util.h"
+#include "missing_stdlib.h" +#include "missing_stdlib.h"
int mkdir_safe_internal(const char *path, mode_t mode, uid_t uid, gid_t gid, MkdirFlags flags, mkdir_func_t _mkdir) { int mkdir_safe_internal(
struct stat st; const char *path,
diff --git a/src/basic/parse-util.c b/src/basic/parse-util.c --- a/src/basic/mountpoint-util.c
index e0094b0f370a..00da6518124b 100644 +++ b/src/basic/mountpoint-util.c
@@ -12,6 +12,7 @@
#include "missing_stat.h"
#include "missing_syscall.h"
#include "mkdir.h"
+#include "missing_stdlib.h"
#include "mountpoint-util.h"
#include "parse-util.h"
#include "path-util.h"
--- a/src/basic/parse-util.c --- a/src/basic/parse-util.c
+++ b/src/basic/parse-util.c +++ b/src/basic/parse-util.c
@@ -18,6 +18,7 @@ @@ -19,6 +19,7 @@
#include "process-util.h"
#include "stat-util.h" #include "stat-util.h"
#include "string-util.h" #include "string-util.h"
#include "strv.h"
+#include "missing_stdlib.h" +#include "missing_stdlib.h"
int parse_boolean(const char *v) { int parse_boolean(const char *v) {
if (!v) if (!v)
diff --git a/src/basic/proc-cmdline.c b/src/basic/proc-cmdline.c --- a/src/basic/path-lookup.c
index 1af58717c686..c1020f4611d4 100644 +++ b/src/basic/path-lookup.c
@@ -15,6 +15,7 @@
#include "strv.h"
#include "tmpfile-util.h"
#include "user-util.h"
+#include "missing_stdlib.h"
int xdg_user_runtime_dir(char **ret, const char *suffix) {
const char *e;
--- a/src/basic/proc-cmdline.c --- a/src/basic/proc-cmdline.c
+++ b/src/basic/proc-cmdline.c +++ b/src/basic/proc-cmdline.c
@@ -15,6 +15,7 @@ @@ -15,6 +15,7 @@
@ -184,8 +190,6 @@ index 1af58717c686..c1020f4611d4 100644
int proc_cmdline(char **ret) { int proc_cmdline(char **ret) {
const char *e; const char *e;
diff --git a/src/basic/procfs-util.c b/src/basic/procfs-util.c
index 7aaf95bfced2..da7e836f143e 100644
--- a/src/basic/procfs-util.c --- a/src/basic/procfs-util.c
+++ b/src/basic/procfs-util.c +++ b/src/basic/procfs-util.c
@@ -11,6 +11,7 @@ @@ -11,6 +11,7 @@
@ -196,23 +200,19 @@ index 7aaf95bfced2..da7e836f143e 100644
int procfs_tasks_get_limit(uint64_t *ret) { int procfs_tasks_get_limit(uint64_t *ret) {
_cleanup_free_ char *value = NULL; _cleanup_free_ char *value = NULL;
diff --git a/src/basic/selinux-util.c b/src/basic/selinux-util.c
index 1095cb426cce..806ef4bd97a9 100644
--- a/src/basic/selinux-util.c --- a/src/basic/selinux-util.c
+++ b/src/basic/selinux-util.c +++ b/src/basic/selinux-util.c
@@ -26,6 +26,7 @@ @@ -27,6 +27,7 @@
#include "selinux-util.h" #include "selinux-util.h"
#include "stdio-util.h" #include "stdio-util.h"
#include "time-util.h" #include "time-util.h"
+#include "missing_stdlib.h" +#include "missing_stdlib.h"
#if HAVE_SELINUX #if HAVE_SELINUX
DEFINE_TRIVIAL_CLEANUP_FUNC(context_t, context_free); DEFINE_TRIVIAL_CLEANUP_FUNC_FULL(context_t, context_free, NULL);
diff --git a/src/basic/time-util.c b/src/basic/time-util.c
index 105584e2e72f..eb0bed47dac3 100644
--- a/src/basic/time-util.c --- a/src/basic/time-util.c
+++ b/src/basic/time-util.c +++ b/src/basic/time-util.c
@@ -26,6 +26,7 @@ @@ -27,6 +27,7 @@
#include "string-util.h" #include "string-util.h"
#include "strv.h" #include "strv.h"
#include "time-util.h" #include "time-util.h"
@ -220,8 +220,6 @@ index 105584e2e72f..eb0bed47dac3 100644
static clockid_t map_clock_id(clockid_t c) { static clockid_t map_clock_id(clockid_t c) {
diff --git a/src/boot/bless-boot.c b/src/boot/bless-boot.c
index b96e1f927fff..cba979baca3e 100644
--- a/src/boot/bless-boot.c --- a/src/boot/bless-boot.c
+++ b/src/boot/bless-boot.c +++ b/src/boot/bless-boot.c
@@ -18,6 +18,7 @@ @@ -18,6 +18,7 @@
@ -232,20 +230,16 @@ index b96e1f927fff..cba979baca3e 100644
static char **arg_path = NULL; static char **arg_path = NULL;
diff --git a/src/core/dbus-cgroup.c b/src/core/dbus-cgroup.c
index 27dc9e43c3e2..b1a83023600b 100644
--- a/src/core/dbus-cgroup.c --- a/src/core/dbus-cgroup.c
+++ b/src/core/dbus-cgroup.c +++ b/src/core/dbus-cgroup.c
@@ -15,6 +15,7 @@ @@ -17,6 +17,7 @@
#include "fileio.h"
#include "limits-util.h" #include "limits-util.h"
#include "path-util.h" #include "path-util.h"
#include "percent-util.h"
+#include "missing_stdlib.h" +#include "missing_stdlib.h"
BUS_DEFINE_PROPERTY_GET(bus_property_get_tasks_max, "t", TasksMax, tasks_max_resolve); BUS_DEFINE_PROPERTY_GET(bus_property_get_tasks_max, "t", TasksMax, tasks_max_resolve);
diff --git a/src/core/dbus-execute.c b/src/core/dbus-execute.c
index d8ba3e5d9241..729e13fda64c 100644
--- a/src/core/dbus-execute.c --- a/src/core/dbus-execute.c
+++ b/src/core/dbus-execute.c +++ b/src/core/dbus-execute.c
@@ -41,6 +41,7 @@ @@ -41,6 +41,7 @@
@ -256,11 +250,9 @@ index d8ba3e5d9241..729e13fda64c 100644
BUS_DEFINE_PROPERTY_GET_ENUM(bus_property_get_exec_output, exec_output, ExecOutput); BUS_DEFINE_PROPERTY_GET_ENUM(bus_property_get_exec_output, exec_output, ExecOutput);
static BUS_DEFINE_PROPERTY_GET_ENUM(property_get_exec_input, exec_input, ExecInput); static BUS_DEFINE_PROPERTY_GET_ENUM(property_get_exec_input, exec_input, ExecInput);
diff --git a/src/core/dbus-util.c b/src/core/dbus-util.c
index 7862beaacb6d..3b1ea53a5f0d 100644
--- a/src/core/dbus-util.c --- a/src/core/dbus-util.c
+++ b/src/core/dbus-util.c +++ b/src/core/dbus-util.c
@@ -7,6 +7,7 @@ @@ -9,6 +9,7 @@
#include "unit-printf.h" #include "unit-printf.h"
#include "user-util.h" #include "user-util.h"
#include "unit.h" #include "unit.h"
@ -268,20 +260,16 @@ index 7862beaacb6d..3b1ea53a5f0d 100644
int bus_property_get_triggered_unit( int bus_property_get_triggered_unit(
sd_bus *bus, sd_bus *bus,
diff --git a/src/core/execute.c b/src/core/execute.c
index 89dbf6fbd2c1..9762dc57443c 100644
--- a/src/core/execute.c --- a/src/core/execute.c
+++ b/src/core/execute.c +++ b/src/core/execute.c
@@ -88,6 +88,7 @@ @@ -96,6 +96,7 @@
#include "unit.h" #include "unit-serialize.h"
#include "user-util.h" #include "user-util.h"
#include "utmp-wtmp.h" #include "utmp-wtmp.h"
+#include "missing_stdlib.h" +#include "missing_stdlib.h"
#define IDLE_TIMEOUT_USEC (5*USEC_PER_SEC) #define IDLE_TIMEOUT_USEC (5*USEC_PER_SEC)
#define IDLE_TIMEOUT2_USEC (1*USEC_PER_SEC) #define IDLE_TIMEOUT2_USEC (1*USEC_PER_SEC)
diff --git a/src/core/kmod-setup.c b/src/core/kmod-setup.c
index 09ccd613e32c..f4e64fa283e9 100644
--- a/src/core/kmod-setup.c --- a/src/core/kmod-setup.c
+++ b/src/core/kmod-setup.c +++ b/src/core/kmod-setup.c
@@ -11,6 +11,7 @@ @@ -11,6 +11,7 @@
@ -292,8 +280,6 @@ index 09ccd613e32c..f4e64fa283e9 100644
#if HAVE_KMOD #if HAVE_KMOD
#include "module-util.h" #include "module-util.h"
diff --git a/src/core/service.c b/src/core/service.c
index 17f27a4abce3..e5dcc532d0ce 100644
--- a/src/core/service.c --- a/src/core/service.c
+++ b/src/core/service.c +++ b/src/core/service.c
@@ -41,6 +41,7 @@ @@ -41,6 +41,7 @@
@ -304,8 +290,6 @@ index 17f27a4abce3..e5dcc532d0ce 100644
static const UnitActiveState state_translation_table[_SERVICE_STATE_MAX] = { static const UnitActiveState state_translation_table[_SERVICE_STATE_MAX] = {
[SERVICE_DEAD] = UNIT_INACTIVE, [SERVICE_DEAD] = UNIT_INACTIVE,
diff --git a/src/coredump/coredump-vacuum.c b/src/coredump/coredump-vacuum.c
index 35885dfb47c4..bb9f0660a6a0 100644
--- a/src/coredump/coredump-vacuum.c --- a/src/coredump/coredump-vacuum.c
+++ b/src/coredump/coredump-vacuum.c +++ b/src/coredump/coredump-vacuum.c
@@ -16,6 +16,7 @@ @@ -16,6 +16,7 @@
@ -316,11 +300,9 @@ index 35885dfb47c4..bb9f0660a6a0 100644
#define DEFAULT_MAX_USE_LOWER (uint64_t) (1ULL*1024ULL*1024ULL) /* 1 MiB */ #define DEFAULT_MAX_USE_LOWER (uint64_t) (1ULL*1024ULL*1024ULL) /* 1 MiB */
#define DEFAULT_MAX_USE_UPPER (uint64_t) (4ULL*1024ULL*1024ULL*1024ULL) /* 4 GiB */ #define DEFAULT_MAX_USE_UPPER (uint64_t) (4ULL*1024ULL*1024ULL*1024ULL) /* 4 GiB */
diff --git a/src/journal-remote/journal-remote-main.c b/src/journal-remote/journal-remote-main.c
index 88e42d3a984b..0f08376e5399 100644
--- a/src/journal-remote/journal-remote-main.c --- a/src/journal-remote/journal-remote-main.c
+++ b/src/journal-remote/journal-remote-main.c +++ b/src/journal-remote/journal-remote-main.c
@@ -22,6 +22,7 @@ @@ -24,6 +24,7 @@
#include "stat-util.h" #include "stat-util.h"
#include "string-table.h" #include "string-table.h"
#include "strv.h" #include "strv.h"
@ -328,11 +310,9 @@ index 88e42d3a984b..0f08376e5399 100644
#define PRIV_KEY_FILE CERTIFICATE_ROOT "/private/journal-remote.pem" #define PRIV_KEY_FILE CERTIFICATE_ROOT "/private/journal-remote.pem"
#define CERT_FILE CERTIFICATE_ROOT "/certs/journal-remote.pem" #define CERT_FILE CERTIFICATE_ROOT "/certs/journal-remote.pem"
diff --git a/src/journal/journalctl.c b/src/journal/journalctl.c
index e5feec83bce6..c3aec1e219d7 100644
--- a/src/journal/journalctl.c --- a/src/journal/journalctl.c
+++ b/src/journal/journalctl.c +++ b/src/journal/journalctl.c
@@ -69,6 +69,7 @@ @@ -72,6 +72,7 @@
#include "unit-name.h" #include "unit-name.h"
#include "user-util.h" #include "user-util.h"
#include "varlink.h" #include "varlink.h"
@ -340,23 +320,9 @@ index e5feec83bce6..c3aec1e219d7 100644
#define DEFAULT_FSS_INTERVAL_USEC (15*USEC_PER_MINUTE) #define DEFAULT_FSS_INTERVAL_USEC (15*USEC_PER_MINUTE)
#define PROCESS_INOTIFY_INTERVAL 1024 /* Every 1,024 messages processed */ #define PROCESS_INOTIFY_INTERVAL 1024 /* Every 1,024 messages processed */
diff --git a/src/journal/sd-journal.c b/src/journal/sd-journal.c
index 3fa98dfda237..e655d77e714a 100644
--- a/src/journal/sd-journal.c
+++ b/src/journal/sd-journal.c
@@ -40,6 +40,7 @@
#include "string-util.h"
#include "strv.h"
#include "syslog-util.h"
+#include "missing_stdlib.h"
#define JOURNAL_FILES_MAX 7168
diff --git a/src/libsystemd/sd-bus/bus-message.c b/src/libsystemd/sd-bus/bus-message.c
index 73127dfe0253..cc8635dea591 100644
--- a/src/libsystemd/sd-bus/bus-message.c --- a/src/libsystemd/sd-bus/bus-message.c
+++ b/src/libsystemd/sd-bus/bus-message.c +++ b/src/libsystemd/sd-bus/bus-message.c
@@ -21,6 +21,7 @@ @@ -20,6 +20,7 @@
#include "strv.h" #include "strv.h"
#include "time-util.h" #include "time-util.h"
#include "utf8.h" #include "utf8.h"
@ -364,11 +330,9 @@ index 73127dfe0253..cc8635dea591 100644
static int message_append_basic(sd_bus_message *m, char type, const void *p, const void **stored); static int message_append_basic(sd_bus_message *m, char type, const void *p, const void **stored);
diff --git a/src/libsystemd/sd-bus/bus-objects.c b/src/libsystemd/sd-bus/bus-objects.c
index 6d140348ec4c..9126b8801bc5 100644
--- a/src/libsystemd/sd-bus/bus-objects.c --- a/src/libsystemd/sd-bus/bus-objects.c
+++ b/src/libsystemd/sd-bus/bus-objects.c +++ b/src/libsystemd/sd-bus/bus-objects.c
@@ -13,6 +13,7 @@ @@ -12,6 +12,7 @@
#include "set.h" #include "set.h"
#include "string-util.h" #include "string-util.h"
#include "strv.h" #include "strv.h"
@ -376,8 +340,6 @@ index 6d140348ec4c..9126b8801bc5 100644
static int node_vtable_get_userdata( static int node_vtable_get_userdata(
sd_bus *bus, sd_bus *bus,
diff --git a/src/libsystemd/sd-bus/bus-socket.c b/src/libsystemd/sd-bus/bus-socket.c
index 18d30d010a20..be2ab703f8ed 100644
--- a/src/libsystemd/sd-bus/bus-socket.c --- a/src/libsystemd/sd-bus/bus-socket.c
+++ b/src/libsystemd/sd-bus/bus-socket.c +++ b/src/libsystemd/sd-bus/bus-socket.c
@@ -28,6 +28,7 @@ @@ -28,6 +28,7 @@
@ -388,35 +350,39 @@ index 18d30d010a20..be2ab703f8ed 100644
#define SNDBUF_SIZE (8*1024*1024) #define SNDBUF_SIZE (8*1024*1024)
diff --git a/src/libsystemd/sd-bus/sd-bus.c b/src/libsystemd/sd-bus/sd-bus.c
index 7ad03680f48d..b9d2181e4910 100644
--- a/src/libsystemd/sd-bus/sd-bus.c --- a/src/libsystemd/sd-bus/sd-bus.c
+++ b/src/libsystemd/sd-bus/sd-bus.c +++ b/src/libsystemd/sd-bus/sd-bus.c
@@ -41,6 +41,7 @@ @@ -41,6 +41,7 @@
#include "process-util.h"
#include "string-util.h" #include "string-util.h"
#include "strv.h" #include "strv.h"
#include "user-util.h"
+#include "missing_stdlib.h" +#include "missing_stdlib.h"
#define log_debug_bus_message(m) \ #define log_debug_bus_message(m) \
do { \ do { \
diff --git a/src/libsystemd/sd-bus/test-bus-benchmark.c b/src/libsystemd/sd-bus/test-bus-benchmark.c
index 8de0a859ee94..58044b6ba908 100644
--- a/src/libsystemd/sd-bus/test-bus-benchmark.c --- a/src/libsystemd/sd-bus/test-bus-benchmark.c
+++ b/src/libsystemd/sd-bus/test-bus-benchmark.c +++ b/src/libsystemd/sd-bus/test-bus-benchmark.c
@@ -14,6 +14,7 @@ @@ -14,6 +14,7 @@
#include "missing_resource.h" #include "string-util.h"
#include "time-util.h" #include "time-util.h"
#include "util.h" #include "util.h"
+#include "missing_stdlib.h" +#include "missing_stdlib.h"
#define MAX_SIZE (2*1024*1024) #define MAX_SIZE (2*1024*1024)
diff --git a/src/locale/keymap-util.c b/src/locale/keymap-util.c --- a/src/libsystemd/sd-journal/sd-journal.c
index 30669a9359e5..6544b3722099 100644 +++ b/src/libsystemd/sd-journal/sd-journal.c
@@ -40,6 +40,7 @@
#include "string-util.h"
#include "strv.h"
#include "syslog-util.h"
+#include "missing_stdlib.h"
#define JOURNAL_FILES_MAX 7168
--- a/src/locale/keymap-util.c --- a/src/locale/keymap-util.c
+++ b/src/locale/keymap-util.c +++ b/src/locale/keymap-util.c
@@ -21,6 +21,7 @@ @@ -24,6 +24,7 @@
#include "string-util.h" #include "string-util.h"
#include "strv.h" #include "strv.h"
#include "tmpfile-util.h" #include "tmpfile-util.h"
@ -424,8 +390,6 @@ index 30669a9359e5..6544b3722099 100644
static bool startswith_comma(const char *s, const char *prefix) { static bool startswith_comma(const char *s, const char *prefix) {
s = startswith(s, prefix); s = startswith(s, prefix);
diff --git a/src/login/pam_systemd.c b/src/login/pam_systemd.c
index 84bea21ab7be..49720c7f742e 100644
--- a/src/login/pam_systemd.c --- a/src/login/pam_systemd.c
+++ b/src/login/pam_systemd.c +++ b/src/login/pam_systemd.c
@@ -31,6 +31,7 @@ @@ -31,6 +31,7 @@
@ -436,8 +400,6 @@ index 84bea21ab7be..49720c7f742e 100644
#include "pam-util.h" #include "pam-util.h"
#include "parse-util.h" #include "parse-util.h"
#include "path-util.h" #include "path-util.h"
diff --git a/src/network/generator/network-generator.c b/src/network/generator/network-generator.c
index bed1e42697c4..e4847c2beea2 100644
--- a/src/network/generator/network-generator.c --- a/src/network/generator/network-generator.c
+++ b/src/network/generator/network-generator.c +++ b/src/network/generator/network-generator.c
@@ -13,6 +13,7 @@ @@ -13,6 +13,7 @@
@ -448,8 +410,6 @@ index bed1e42697c4..e4847c2beea2 100644
/* /*
# .network # .network
diff --git a/src/nspawn/nspawn-settings.c b/src/nspawn/nspawn-settings.c
index 5fb5b49bbcc3..785ccc2da307 100644
--- a/src/nspawn/nspawn-settings.c --- a/src/nspawn/nspawn-settings.c
+++ b/src/nspawn/nspawn-settings.c +++ b/src/nspawn/nspawn-settings.c
@@ -16,6 +16,7 @@ @@ -16,6 +16,7 @@
@ -460,23 +420,19 @@ index 5fb5b49bbcc3..785ccc2da307 100644
Settings *settings_new(void) { Settings *settings_new(void) {
Settings *s; Settings *s;
diff --git a/src/nss-mymachines/nss-mymachines.c b/src/nss-mymachines/nss-mymachines.c
index 364356da5622..47d4ea44e40f 100644
--- a/src/nss-mymachines/nss-mymachines.c --- a/src/nss-mymachines/nss-mymachines.c
+++ b/src/nss-mymachines/nss-mymachines.c +++ b/src/nss-mymachines/nss-mymachines.c
@@ -19,6 +19,7 @@ @@ -21,6 +21,7 @@
#include "nss-util.h"
#include "signal-util.h" #include "signal-util.h"
#include "string-util.h" #include "string-util.h"
#include "user-util.h"
+#include "missing_stdlib.h" +#include "missing_stdlib.h"
NSS_GETHOSTBYNAME_PROTOTYPES(mymachines); static void setup_logging(void) {
NSS_GETPW_PROTOTYPES(mymachines); /* We need a dummy function because log_parse_environment is a macro. */
diff --git a/src/portable/portable.c b/src/portable/portable.c
index e18826ab2685..d9f4b81d8937 100644
--- a/src/portable/portable.c --- a/src/portable/portable.c
+++ b/src/portable/portable.c +++ b/src/portable/portable.c
@@ -31,6 +31,7 @@ @@ -32,6 +32,7 @@
#include "strv.h" #include "strv.h"
#include "tmpfile-util.h" #include "tmpfile-util.h"
#include "user-util.h" #include "user-util.h"
@ -484,20 +440,26 @@ index e18826ab2685..d9f4b81d8937 100644
static const char profile_dirs[] = CONF_PATHS_NULSTR("systemd/portable/profile"); static const char profile_dirs[] = CONF_PATHS_NULSTR("systemd/portable/profile");
diff --git a/src/resolve/resolvectl.c b/src/resolve/resolvectl.c
index f20e8c44b8bc..9f6c4e8f49a7 100644
--- a/src/resolve/resolvectl.c --- a/src/resolve/resolvectl.c
+++ b/src/resolve/resolvectl.c +++ b/src/resolve/resolvectl.c
@@ -33,6 +33,7 @@ @@ -41,6 +41,7 @@
#include "strv.h"
#include "terminal-util.h" #include "terminal-util.h"
#include "utf8.h"
#include "verbs.h" #include "verbs.h"
+#include "missing_stdlib.h" +#include "missing_stdlib.h"
static int arg_family = AF_UNSPEC; static int arg_family = AF_UNSPEC;
static int arg_ifindex = 0; static int arg_ifindex = 0;
diff --git a/src/shared/bus-unit-procs.c b/src/shared/bus-unit-procs.c --- a/src/shared/bus-get-properties.c
index b21fe393265f..af2640005c1d 100644 +++ b/src/shared/bus-get-properties.c
@@ -4,6 +4,7 @@
#include "rlimit-util.h"
#include "stdio-util.h"
#include "string-util.h"
+#include "missing_stdlib.h"
int bus_property_get_bool(
sd_bus *bus,
--- a/src/shared/bus-unit-procs.c --- a/src/shared/bus-unit-procs.c
+++ b/src/shared/bus-unit-procs.c +++ b/src/shared/bus-unit-procs.c
@@ -10,6 +10,7 @@ @@ -10,6 +10,7 @@
@ -508,11 +470,9 @@ index b21fe393265f..af2640005c1d 100644
struct CGroupInfo { struct CGroupInfo {
char *cgroup_path; char *cgroup_path;
diff --git a/src/shared/bus-unit-util.c b/src/shared/bus-unit-util.c
index 28d85944a8a7..4743a84a417e 100644
--- a/src/shared/bus-unit-util.c --- a/src/shared/bus-unit-util.c
+++ b/src/shared/bus-unit-util.c +++ b/src/shared/bus-unit-util.c
@@ -34,6 +34,7 @@ @@ -45,6 +45,7 @@
#include "unit-def.h" #include "unit-def.h"
#include "user-util.h" #include "user-util.h"
#include "utf8.h" #include "utf8.h"
@ -520,23 +480,19 @@ index 28d85944a8a7..4743a84a417e 100644
int bus_parse_unit_info(sd_bus_message *message, UnitInfo *u) { int bus_parse_unit_info(sd_bus_message *message, UnitInfo *u) {
assert(message); assert(message);
diff --git a/src/shared/bus-util.c b/src/shared/bus-util.c
index 8e6a6e2ce2de..0cbf4b1997df 100644
--- a/src/shared/bus-util.c --- a/src/shared/bus-util.c
+++ b/src/shared/bus-util.c +++ b/src/shared/bus-util.c
@@ -30,6 +30,7 @@ @@ -21,6 +21,7 @@
#include "path-util.h"
#include "socket-util.h"
#include "stdio-util.h" #include "stdio-util.h"
#include "strv.h"
#include "user-util.h"
+#include "missing_stdlib.h" +#include "missing_stdlib.h"
static int name_owner_change_callback(sd_bus_message *m, void *userdata, sd_bus_error *ret_error) { static int name_owner_change_callback(sd_bus_message *m, void *userdata, sd_bus_error *ret_error) {
sd_event *e = userdata; sd_event *e = userdata;
diff --git a/src/shared/dns-domain.c b/src/shared/dns-domain.c
index b812665315f6..8e68f7f8fc6c 100644
--- a/src/shared/dns-domain.c --- a/src/shared/dns-domain.c
+++ b/src/shared/dns-domain.c +++ b/src/shared/dns-domain.c
@@ -23,6 +23,7 @@ @@ -17,6 +17,7 @@
#include "string-util.h" #include "string-util.h"
#include "strv.h" #include "strv.h"
#include "utf8.h" #include "utf8.h"
@ -544,8 +500,6 @@ index b812665315f6..8e68f7f8fc6c 100644
int dns_label_unescape(const char **name, char *dest, size_t sz, DNSLabelFlags flags) { int dns_label_unescape(const char **name, char *dest, size_t sz, DNSLabelFlags flags) {
const char *n; const char *n;
diff --git a/src/shared/journal-importer.c b/src/shared/journal-importer.c
index 7c4fc7021dec..3fbaf5a63969 100644
--- a/src/shared/journal-importer.c --- a/src/shared/journal-importer.c
+++ b/src/shared/journal-importer.c +++ b/src/shared/journal-importer.c
@@ -14,6 +14,7 @@ @@ -14,6 +14,7 @@
@ -556,23 +510,19 @@ index 7c4fc7021dec..3fbaf5a63969 100644
enum { enum {
IMPORTER_STATE_LINE = 0, /* waiting to read, or reading line */ IMPORTER_STATE_LINE = 0, /* waiting to read, or reading line */
diff --git a/src/shared/logs-show.c b/src/shared/logs-show.c
index 2bfd0b60c26b..6a1bb3a0760f 100644
--- a/src/shared/logs-show.c --- a/src/shared/logs-show.c
+++ b/src/shared/logs-show.c +++ b/src/shared/logs-show.c
@@ -39,6 +39,7 @@ @@ -41,6 +41,7 @@
#include "time-util.h"
#include "utf8.h" #include "utf8.h"
#include "util.h" #include "util.h"
#include "web-util.h"
+#include "missing_stdlib.h" +#include "missing_stdlib.h"
/* up to three lines (each up to 100 characters) or 300 characters, whichever is less */ /* up to three lines (each up to 100 characters) or 300 characters, whichever is less */
#define PRINT_LINE_THRESHOLD 3 #define PRINT_LINE_THRESHOLD 3
diff --git a/src/shared/pager.c b/src/shared/pager.c
index 1fe9db179176..67954b5cab93 100644
--- a/src/shared/pager.c --- a/src/shared/pager.c
+++ b/src/shared/pager.c +++ b/src/shared/pager.c
@@ -23,6 +23,7 @@ @@ -26,6 +26,7 @@
#include "strv.h" #include "strv.h"
#include "terminal-util.h" #include "terminal-util.h"
#include "util.h" #include "util.h"
@ -580,20 +530,6 @@ index 1fe9db179176..67954b5cab93 100644
static pid_t pager_pid = 0; static pid_t pager_pid = 0;
diff --git a/src/shared/path-lookup.c b/src/shared/path-lookup.c
index 5b1620974536..0e7cd1c2af12 100644
--- a/src/shared/path-lookup.c
+++ b/src/shared/path-lookup.c
@@ -19,6 +19,7 @@
#include "tmpfile-util.h"
#include "user-util.h"
#include "util.h"
+#include "missing_stdlib.h"
int xdg_user_runtime_dir(char **ret, const char *suffix) {
const char *e;
diff --git a/src/shared/uid-range.c b/src/shared/uid-range.c
index 7cb7d8a477e9..8e7d7f9e7ca6 100644
--- a/src/shared/uid-range.c --- a/src/shared/uid-range.c
+++ b/src/shared/uid-range.c +++ b/src/shared/uid-range.c
@@ -9,6 +9,7 @@ @@ -9,6 +9,7 @@
@ -604,8 +540,6 @@ index 7cb7d8a477e9..8e7d7f9e7ca6 100644
static bool uid_range_intersect(UidRange *range, uid_t start, uid_t nr) { static bool uid_range_intersect(UidRange *range, uid_t start, uid_t nr) {
assert(range); assert(range);
diff --git a/src/socket-proxy/socket-proxyd.c b/src/socket-proxy/socket-proxyd.c
index 2ee6fc2f0a6a..4a9934f9c14d 100644
--- a/src/socket-proxy/socket-proxyd.c --- a/src/socket-proxy/socket-proxyd.c
+++ b/src/socket-proxy/socket-proxyd.c +++ b/src/socket-proxy/socket-proxyd.c
@@ -26,6 +26,7 @@ @@ -26,6 +26,7 @@
@ -616,8 +550,6 @@ index 2ee6fc2f0a6a..4a9934f9c14d 100644
#define BUFFER_SIZE (256 * 1024) #define BUFFER_SIZE (256 * 1024)
diff --git a/src/test/test-hexdecoct.c b/src/test/test-hexdecoct.c
index 52217429b154..70708dedf318 100644
--- a/src/test/test-hexdecoct.c --- a/src/test/test-hexdecoct.c
+++ b/src/test/test-hexdecoct.c +++ b/src/test/test-hexdecoct.c
@@ -6,6 +6,7 @@ @@ -6,6 +6,7 @@
@ -628,23 +560,19 @@ index 52217429b154..70708dedf318 100644
static void test_hexchar(void) { static void test_hexchar(void) {
assert_se(hexchar(0xa) == 'a'); assert_se(hexchar(0xa) == 'a');
diff --git a/src/udev/udev-builtin-path_id.c b/src/udev/udev-builtin-path_id.c
index ca38f5608791..9d8cf4d2807b 100644
--- a/src/udev/udev-builtin-path_id.c --- a/src/udev/udev-builtin-path_id.c
+++ b/src/udev/udev-builtin-path_id.c +++ b/src/udev/udev-builtin-path_id.c
@@ -22,6 +22,7 @@ @@ -22,6 +22,7 @@
#include "strv.h"
#include "sysexits.h" #include "sysexits.h"
#include "udev-builtin.h" #include "udev-builtin.h"
#include "udev-util.h"
+#include "missing_stdlib.h" +#include "missing_stdlib.h"
_printf_(2,3) _printf_(2,3)
static void path_prepend(char **path, const char *fmt, ...) { static void path_prepend(char **path, const char *fmt, ...) {
diff --git a/src/udev/udev-event.c b/src/udev/udev-event.c
index eb51139e519c..977cc16e9d7c 100644
--- a/src/udev/udev-event.c --- a/src/udev/udev-event.c
+++ b/src/udev/udev-event.c +++ b/src/udev/udev-event.c
@@ -34,6 +34,7 @@ @@ -33,6 +33,7 @@
#include "udev-util.h" #include "udev-util.h"
#include "udev-watch.h" #include "udev-watch.h"
#include "user-util.h" #include "user-util.h"
@ -652,11 +580,9 @@ index eb51139e519c..977cc16e9d7c 100644
typedef struct Spawn { typedef struct Spawn {
sd_device *device; sd_device *device;
diff --git a/src/udev/udev-rules.c b/src/udev/udev-rules.c
index b9b350d1ef7a..2c114cc77572 100644
--- a/src/udev/udev-rules.c --- a/src/udev/udev-rules.c
+++ b/src/udev/udev-rules.c +++ b/src/udev/udev-rules.c
@@ -30,6 +30,7 @@ @@ -31,6 +31,7 @@
#include "udev-rules.h" #include "udev-rules.h"
#include "user-util.h" #include "user-util.h"
#include "virt.h" #include "virt.h"
@ -664,3 +590,13 @@ index b9b350d1ef7a..2c114cc77572 100644
#define RULES_DIRS (const char* const*) CONF_PATHS_STRV("udev/rules.d") #define RULES_DIRS (const char* const*) CONF_PATHS_STRV("udev/rules.d")
--- a/src/basic/percent-util.c
+++ b/src/basic/percent-util.c
@@ -3,6 +3,7 @@
#include "percent-util.h"
#include "string-util.h"
#include "parse-util.h"
+#include "missing_stdlib.h"
static int parse_parts_value_whole(const char *p, const char *symbol) {
const char *pc, *n;

View File

@ -0,0 +1,326 @@
From 2069f0b0d5ab8f869aeba635a347e0b11d362b30 Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Thu, 26 Oct 2017 22:10:42 -0700
Subject: [PATCH] Include netinet/if_ether.h
Fixes
/path/to/systemd/recipe-sysroot/usr/include/netinet/if_ether.h:101:8: error: redefinition of 'struct ethhdr'
struct ethhdr {
^~~~~~
and related arphdr, arpreq, and arpreq_old errors
/path/to/systemd/recipe-sysroot/usr/include/net/if_arp.h:22:8: error: redefinition of 'struct arphdr'
struct arphdr {
^~~~~~
The latter requires removing some includes of net/if_arp.h to avoid
conflicting with netinet/if_ether.h.
Upstream-Status: Inappropriate [musl specific]
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
[rebased for systemd 243]
Signed-off-by: Scott Murray <scott.murray@konsulko.com>
Upstream-Status: Inappropriate [musl specific]
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
[rebased for systemd 243]
Signed-off-by: Scott Murray <scott.murray@konsulko.com>
[rebased for systemd 247]
Signed-off-by: Luca Boccassi <luca.boccassi@microsoft.com>
---
src/libsystemd-network/sd-dhcp6-client.c | 1 -
src/libsystemd/sd-netlink/netlink-types.c | 1 +
src/machine/machine-dbus.c | 1 +
src/network/netdev/bond.c | 1 +
src/network/netdev/bridge.c | 1 +
src/network/netdev/macsec.c | 1 +
src/network/netdev/netdev-gperf.gperf | 1 +
src/network/netdev/netdev.c | 1 +
src/network/networkd-brvlan.c | 1 +
src/network/networkd-dhcp-common.c | 4 +++-
src/network/networkd-dhcp-server.c | 4 ++--
src/network/networkd-dhcp4.c | 2 +-
src/network/networkd-dhcp6.c | 2 +-
src/network/networkd-link.c | 2 +-
src/network/networkd-network.c | 1 +
src/network/networkd-route.c | 5 ++++-
src/network/test-network-tables.c | 1 +
src/shared/ethtool-util.c | 1 +
src/shared/ethtool-util.h | 1 +
src/udev/net/link-config.c | 1 +
src/udev/udev-builtin-net_setup_link.c | 1 +
21 files changed, 26 insertions(+), 8 deletions(-)
diff --git a/src/libsystemd-network/sd-dhcp6-client.c b/src/libsystemd-network/sd-dhcp6-client.c
index 410bfda10e..e70ed8be92 100644
--- a/src/libsystemd-network/sd-dhcp6-client.c
+++ b/src/libsystemd-network/sd-dhcp6-client.c
@@ -5,7 +5,6 @@
#include <errno.h>
#include <sys/ioctl.h>
-#include <linux/if_arp.h>
#include <linux/if_infiniband.h>
#include "sd-dhcp6-client.h"
diff --git a/src/libsystemd/sd-netlink/netlink-types.c b/src/libsystemd/sd-netlink/netlink-types.c
index ed7b9a8cd1..112c0b09e4 100644
--- a/src/libsystemd/sd-netlink/netlink-types.c
+++ b/src/libsystemd/sd-netlink/netlink-types.c
@@ -3,6 +3,7 @@
#include <netinet/in.h>
#include <stdint.h>
#include <sys/socket.h>
+#include <netinet/if_ether.h>
#include <linux/can/vxcan.h>
#include <linux/netlink.h>
#include <linux/rtnetlink.h>
diff --git a/src/machine/machine-dbus.c b/src/machine/machine-dbus.c
index e7c4ed3c7c..3a1e4f9072 100644
--- a/src/machine/machine-dbus.c
+++ b/src/machine/machine-dbus.c
@@ -3,6 +3,7 @@
#include <errno.h>
#include <sys/mount.h>
#include <sys/wait.h>
+#include <netinet/if_ether.h>
/* When we include libgen.h because we need dirname() we immediately
* undefine basename() since libgen.h defines it as a macro to the POSIX
diff --git a/src/network/netdev/bond.c b/src/network/netdev/bond.c
index cf7ca88d6f..34ab468191 100644
--- a/src/network/netdev/bond.c
+++ b/src/network/netdev/bond.c
@@ -1,5 +1,6 @@
/* SPDX-License-Identifier: LGPL-2.1-or-later */
+#include <netinet/if_ether.h>
#include "alloc-util.h"
#include "bond.h"
#include "bond-util.h"
diff --git a/src/network/netdev/bridge.c b/src/network/netdev/bridge.c
index 38432f1578..79ccfe578e 100644
--- a/src/network/netdev/bridge.c
+++ b/src/network/netdev/bridge.c
@@ -1,5 +1,6 @@
/* SPDX-License-Identifier: LGPL-2.1-or-later */
+#include <netinet/if_ether.h>
#include <net/if.h>
#include "bridge.h"
diff --git a/src/network/netdev/macsec.c b/src/network/netdev/macsec.c
index 77c5f8c4e7..04be1b4ab2 100644
--- a/src/network/netdev/macsec.c
+++ b/src/network/netdev/macsec.c
@@ -1,5 +1,6 @@
/* SPDX-License-Identifier: LGPL-2.1-or-later */
+#include <netinet/if_ether.h>
#include <netinet/in.h>
#include <linux/if_ether.h>
#include <linux/if_macsec.h>
diff --git a/src/network/netdev/netdev-gperf.gperf b/src/network/netdev/netdev-gperf.gperf
index 8abe044890..3c54c58928 100644
--- a/src/network/netdev/netdev-gperf.gperf
+++ b/src/network/netdev/netdev-gperf.gperf
@@ -3,6 +3,7 @@
#if __GNUC__ >= 7
_Pragma("GCC diagnostic ignored \"-Wimplicit-fallthrough\"")
#endif
+#include <netinet/if_ether.h>
#include <stddef.h>
#include "bareudp.h"
#include "batadv.h"
diff --git a/src/network/netdev/netdev.c b/src/network/netdev/netdev.c
index b31f0fa81a..c80e1ff537 100644
--- a/src/network/netdev/netdev.c
+++ b/src/network/netdev/netdev.c
@@ -1,5 +1,6 @@
/* SPDX-License-Identifier: LGPL-2.1-or-later */
+#include <netinet/if_ether.h>
#include <net/if.h>
#include <netinet/in.h>
#include <unistd.h>
diff --git a/src/network/networkd-brvlan.c b/src/network/networkd-brvlan.c
index 2847b336c9..4d6af8c642 100644
--- a/src/network/networkd-brvlan.c
+++ b/src/network/networkd-brvlan.c
@@ -4,6 +4,7 @@
***/
#include <netinet/in.h>
+#include <netinet/if_ether.h>
#include <linux/if_bridge.h>
#include <stdbool.h>
diff --git a/src/network/networkd-dhcp-common.c b/src/network/networkd-dhcp-common.c
index 00d055cf8d..65821c1d31 100644
--- a/src/network/networkd-dhcp-common.c
+++ b/src/network/networkd-dhcp-common.c
@@ -1,7 +1,8 @@
/* SPDX-License-Identifier: LGPL-2.1-or-later */
#include <netinet/in.h>
-#include <linux/if_arp.h>
+#include <net/if_arp.h>
+#include <net/if.h>
#include "bus-error.h"
#include "dhcp-internal.h"
@@ -11,6 +12,7 @@
#include "networkd-dhcp-common.h"
#include "networkd-link.h"
#include "networkd-manager.h"
+#include <netinet/if_ether.h>
#include "networkd-network.h"
#include "parse-util.h"
#include "socket-util.h"
diff --git a/src/network/networkd-dhcp-server.c b/src/network/networkd-dhcp-server.c
index 5cdf432c27..93cffb9863 100644
--- a/src/network/networkd-dhcp-server.c
+++ b/src/network/networkd-dhcp-server.c
@@ -1,8 +1,8 @@
/* SPDX-License-Identifier: LGPL-2.1-or-later */
#include <netinet/in.h>
-#include <linux/if_arp.h>
-#include <linux/if.h>
+#include <net/if_arp.h>
+#include <net/if.h>
#include "sd-dhcp-server.h"
diff --git a/src/network/networkd-dhcp4.c b/src/network/networkd-dhcp4.c
index 23dc3a45db..7ae6c2467a 100644
--- a/src/network/networkd-dhcp4.c
+++ b/src/network/networkd-dhcp4.c
@@ -1,9 +1,9 @@
/* SPDX-License-Identifier: LGPL-2.1-or-later */
+#include <netinet/if_ether.h>
#include <netinet/in.h>
#include <netinet/ip.h>
#include <linux/if.h>
-#include <linux/if_arp.h>
#include "escape.h"
#include "alloc-util.h"
diff --git a/src/network/networkd-dhcp6.c b/src/network/networkd-dhcp6.c
index aa077d6219..4f6ce22059 100644
--- a/src/network/networkd-dhcp6.c
+++ b/src/network/networkd-dhcp6.c
@@ -3,9 +3,9 @@
Copyright © 2014 Intel Corporation. All rights reserved.
***/
+#include <netinet/if_ether.h>
#include <netinet/in.h>
#include <linux/if.h>
-#include <linux/if_arp.h>
#include "sd-dhcp6-client.h"
diff --git a/src/network/networkd-link.c b/src/network/networkd-link.c
index 8219d95b0d..c92230453b 100644
--- a/src/network/networkd-link.c
+++ b/src/network/networkd-link.c
@@ -1,8 +1,8 @@
/* SPDX-License-Identifier: LGPL-2.1-or-later */
+#include <netinet/if_ether.h>
#include <netinet/in.h>
#include <linux/if.h>
-#include <linux/if_arp.h>
#include <linux/if_link.h>
#include <unistd.h>
diff --git a/src/network/networkd-network.c b/src/network/networkd-network.c
index e5ffd35b6f..871ebb32c6 100644
--- a/src/network/networkd-network.c
+++ b/src/network/networkd-network.c
@@ -1,5 +1,6 @@
/* SPDX-License-Identifier: LGPL-2.1-or-later */
+#include <netinet/if_ether.h>
#include <net/if.h>
#include <netinet/in.h>
#include <linux/netdevice.h>
diff --git a/src/network/networkd-route.c b/src/network/networkd-route.c
index a74541a6c9..a10549b336 100644
--- a/src/network/networkd-route.c
+++ b/src/network/networkd-route.c
@@ -1,7 +1,10 @@
/* SPDX-License-Identifier: LGPL-2.1-or-later */
#include <linux/icmpv6.h>
-#include <linux/ipv6_route.h>
+/* linux/ipv6_route.h conflicts with netinet/in.h so define manually */
+#ifndef IP6_RT_PRIO_USER
+#define IP6_RT_PRIO_USER 1024
+#endif
#include "alloc-util.h"
#include "netlink-util.h"
diff --git a/src/network/test-network-tables.c b/src/network/test-network-tables.c
index ce34449554..0b5dc01182 100644
--- a/src/network/test-network-tables.c
+++ b/src/network/test-network-tables.c
@@ -1,5 +1,6 @@
/* SPDX-License-Identifier: LGPL-2.1-or-later */
+#include <netinet/if_ether.h>
#include "bond.h"
#include "dhcp6-internal.h"
#include "dhcp6-protocol.h"
diff --git a/src/shared/ethtool-util.c b/src/shared/ethtool-util.c
index 654d36a83a..f4ed42d543 100644
--- a/src/shared/ethtool-util.c
+++ b/src/shared/ethtool-util.c
@@ -1,5 +1,6 @@
/* SPDX-License-Identifier: LGPL-2.1-or-later */
+#include <netinet/if_ether.h>
#include <net/if.h>
#include <sys/ioctl.h>
#include <linux/ethtool.h>
diff --git a/src/shared/ethtool-util.h b/src/shared/ethtool-util.h
index 11e2906681..a171df0737 100644
--- a/src/shared/ethtool-util.h
+++ b/src/shared/ethtool-util.h
@@ -3,6 +3,7 @@
#include <macro.h>
#include <net/ethernet.h>
+#include <netinet/if_ether.h>
#include <linux/ethtool.h>
#include "conf-parser.h"
diff --git a/src/udev/net/link-config.c b/src/udev/net/link-config.c
index 31e5d0cd67..f25f821364 100644
--- a/src/udev/net/link-config.c
+++ b/src/udev/net/link-config.c
@@ -1,5 +1,6 @@
/* SPDX-License-Identifier: LGPL-2.1-or-later */
+#include <netinet/if_ether.h>
#include <linux/netdevice.h>
#include <netinet/ether.h>
#include <unistd.h>
diff --git a/src/udev/udev-builtin-net_setup_link.c b/src/udev/udev-builtin-net_setup_link.c
index 87e1fb133e..13876029d0 100644
--- a/src/udev/udev-builtin-net_setup_link.c
+++ b/src/udev/udev-builtin-net_setup_link.c
@@ -1,5 +1,6 @@
/* SPDX-License-Identifier: LGPL-2.1-or-later */
+#include <netinet/if_ether.h>
#include "alloc-util.h"
#include "device-util.h"
#include "errno-util.h"

View File

@ -1,4 +1,4 @@
From 77f98727f1d19a8fb327b55c92f1a9ee7b859e9f Mon Sep 17 00:00:00 2001 From bca73ff2fbff2dc311040a87a4f536f89af07ad6 Mon Sep 17 00:00:00 2001
From: Chen Qi <Qi.Chen@windriver.com> From: Chen Qi <Qi.Chen@windriver.com>
Date: Mon, 25 Feb 2019 14:56:21 +0800 Date: Mon, 25 Feb 2019 14:56:21 +0800
Subject: [PATCH] don't fail if GLOB_BRACE and GLOB_ALTDIRFUNC is not defined Subject: [PATCH] don't fail if GLOB_BRACE and GLOB_ALTDIRFUNC is not defined
@ -24,7 +24,7 @@ Signed-off-by: Scott Murray <scott.murray@konsulko.com>
3 files changed, 38 insertions(+) 3 files changed, 38 insertions(+)
diff --git a/src/basic/glob-util.c b/src/basic/glob-util.c diff --git a/src/basic/glob-util.c b/src/basic/glob-util.c
index e3aa6c2e152b..38070b79c83a 100644 index bc0278e57f..c973f82e54 100644
--- a/src/basic/glob-util.c --- a/src/basic/glob-util.c
+++ b/src/basic/glob-util.c +++ b/src/basic/glob-util.c
@@ -12,6 +12,12 @@ @@ -12,6 +12,12 @@
@ -64,7 +64,7 @@ index e3aa6c2e152b..38070b79c83a 100644
return -ENOENT; return -ENOENT;
if (k == GLOB_NOSPACE) if (k == GLOB_NOSPACE)
diff --git a/src/test/test-glob-util.c b/src/test/test-glob-util.c diff --git a/src/test/test-glob-util.c b/src/test/test-glob-util.c
index 667d15335fbf..76a84443aacf 100644 index df6444c433..79a692046e 100644
--- a/src/test/test-glob-util.c --- a/src/test/test-glob-util.c
+++ b/src/test/test-glob-util.c +++ b/src/test/test-glob-util.c
@@ -12,6 +12,12 @@ @@ -12,6 +12,12 @@
@ -115,10 +115,10 @@ index 667d15335fbf..76a84443aacf 100644
(void) rm_rf(template, REMOVE_ROOT|REMOVE_PHYSICAL); (void) rm_rf(template, REMOVE_ROOT|REMOVE_PHYSICAL);
diff --git a/src/tmpfiles/tmpfiles.c b/src/tmpfiles/tmpfiles.c diff --git a/src/tmpfiles/tmpfiles.c b/src/tmpfiles/tmpfiles.c
index 193ed0bc781b..2f94fd2efd8f 100644 index 6b73d1e6d5..26b3b74275 100644
--- a/src/tmpfiles/tmpfiles.c --- a/src/tmpfiles/tmpfiles.c
+++ b/src/tmpfiles/tmpfiles.c +++ b/src/tmpfiles/tmpfiles.c
@@ -58,6 +58,12 @@ @@ -66,6 +66,12 @@
#include "umask-util.h" #include "umask-util.h"
#include "user-util.h" #include "user-util.h"
@ -131,7 +131,7 @@ index 193ed0bc781b..2f94fd2efd8f 100644
/* This reads all files listed in /etc/tmpfiles.d/?*.conf and creates /* This reads all files listed in /etc/tmpfiles.d/?*.conf and creates
* them in the file system. This is intended to be used to create * them in the file system. This is intended to be used to create
* properly owned directories beneath /tmp, /var/tmp, /run, which are * properly owned directories beneath /tmp, /var/tmp, /run, which are
@@ -1850,7 +1856,9 @@ finish: @@ -1947,7 +1953,9 @@ finish:
static int glob_item(Item *i, action_t action) { static int glob_item(Item *i, action_t action) {
_cleanup_globfree_ glob_t g = { _cleanup_globfree_ glob_t g = {
@ -141,7 +141,7 @@ index 193ed0bc781b..2f94fd2efd8f 100644
}; };
int r = 0, k; int r = 0, k;
char **fn; char **fn;
@@ -1870,7 +1878,9 @@ static int glob_item(Item *i, action_t action) { @@ -1967,7 +1975,9 @@ static int glob_item(Item *i, action_t action) {
static int glob_item_recursively(Item *i, fdaction_t action) { static int glob_item_recursively(Item *i, fdaction_t action) {
_cleanup_globfree_ glob_t g = { _cleanup_globfree_ glob_t g = {

View File

@ -0,0 +1,45 @@
From e0d1912f0246c97e5e7b4177691363d2d077e11d Mon Sep 17 00:00:00 2001
From: Chen Qi <Qi.Chen@windriver.com>
Date: Mon, 25 Feb 2019 15:00:06 +0800
Subject: [PATCH] add missing FTW_ macros for musl
This is to avoid build failures like below for musl.
locale-util.c:296:24: error: 'FTW_STOP' undeclared
Upstream-Status: Inappropriate [musl specific]
Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
---
src/basic/missing_type.h | 20 ++++++++++++++++++++
1 file changed, 20 insertions(+)
diff --git a/src/basic/missing_type.h b/src/basic/missing_type.h
index aeaf6ad5ec..3df1084ef2 100644
--- a/src/basic/missing_type.h
+++ b/src/basic/missing_type.h
@@ -19,3 +19,23 @@ typedef int (*comparison_fn_t)(const void *, const void *);
#define __COMPAR_FN_T
typedef int (*__compar_fn_t)(const void *, const void *);
#endif
+
+#ifndef FTW_ACTIONRETVAL
+#define FTW_ACTIONRETVAL 16
+#endif
+
+#ifndef FTW_CONTINUE
+#define FTW_CONTINUE 0
+#endif
+
+#ifndef FTW_STOP
+#define FTW_STOP 1
+#endif
+
+#ifndef FTW_SKIP_SUBTREE
+#define FTW_SKIP_SUBTREE 2
+#endif
+
+#ifndef FTW_SKIP_SIBLINGS
+#define FTW_SKIP_SIBLINGS 3
+#endif

View File

@ -1,4 +1,4 @@
From eed7427db98cc01db7e9b3479655d68b044bc85b Mon Sep 17 00:00:00 2001 From bb41fe773881a8f1d9615d388320b9c6fc47bfe5 Mon Sep 17 00:00:00 2001
From: Chen Qi <Qi.Chen@windriver.com> From: Chen Qi <Qi.Chen@windriver.com>
Date: Mon, 25 Feb 2019 15:03:47 +0800 Date: Mon, 25 Feb 2019 15:03:47 +0800
Subject: [PATCH] fix missing of __register_atfork for non-glibc builds Subject: [PATCH] fix missing of __register_atfork for non-glibc builds
@ -12,7 +12,7 @@ Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
1 file changed, 7 insertions(+) 1 file changed, 7 insertions(+)
diff --git a/src/basic/process-util.c b/src/basic/process-util.c diff --git a/src/basic/process-util.c b/src/basic/process-util.c
index 5de366f830e8..644f53aee005 100644 index 7d4301eadb..caa9dfe3a3 100644
--- a/src/basic/process-util.c --- a/src/basic/process-util.c
+++ b/src/basic/process-util.c +++ b/src/basic/process-util.c
@@ -18,6 +18,9 @@ @@ -18,6 +18,9 @@
@ -25,7 +25,7 @@ index 5de366f830e8..644f53aee005 100644
#include "alloc-util.h" #include "alloc-util.h"
#include "architecture.h" #include "architecture.h"
@@ -1116,11 +1119,15 @@ void reset_cached_pid(void) { @@ -1121,11 +1124,15 @@ void reset_cached_pid(void) {
cached_pid = CACHED_PID_UNSET; cached_pid = CACHED_PID_UNSET;
} }

View File

@ -1,4 +1,4 @@
From 4aa91347ae975051dbe4dd2f98a1f4f459f2604f Mon Sep 17 00:00:00 2001 From dc40487e0ac26e3ca317429b9c3e8f01772de60a Mon Sep 17 00:00:00 2001
From: Chen Qi <Qi.Chen@windriver.com> From: Chen Qi <Qi.Chen@windriver.com>
Date: Mon, 25 Feb 2019 15:12:41 +0800 Date: Mon, 25 Feb 2019 15:12:41 +0800
Subject: [PATCH] Use uintmax_t for handling rlim_t Subject: [PATCH] Use uintmax_t for handling rlim_t
@ -28,7 +28,7 @@ Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
3 files changed, 8 insertions(+), 14 deletions(-) 3 files changed, 8 insertions(+), 14 deletions(-)
diff --git a/src/basic/format-util.h b/src/basic/format-util.h diff --git a/src/basic/format-util.h b/src/basic/format-util.h
index c47fa76ea8ff..14a78d9f5fd0 100644 index b7e18768e3..3195ab205d 100644
--- a/src/basic/format-util.h --- a/src/basic/format-util.h
+++ b/src/basic/format-util.h +++ b/src/basic/format-util.h
@@ -32,13 +32,7 @@ assert_cc(sizeof(gid_t) == sizeof(uint32_t)); @@ -32,13 +32,7 @@ assert_cc(sizeof(gid_t) == sizeof(uint32_t));
@ -47,10 +47,19 @@ index c47fa76ea8ff..14a78d9f5fd0 100644
#if SIZEOF_DEV_T == 8 #if SIZEOF_DEV_T == 8
# define DEV_FMT "%" PRIu64 # define DEV_FMT "%" PRIu64
diff --git a/src/basic/rlimit-util.c b/src/basic/rlimit-util.c diff --git a/src/basic/rlimit-util.c b/src/basic/rlimit-util.c
index 2dc13eabc30d..0633cc67f417 100644 index 23d108d5df..b037734ee3 100644
--- a/src/basic/rlimit-util.c --- a/src/basic/rlimit-util.c
+++ b/src/basic/rlimit-util.c +++ b/src/basic/rlimit-util.c
@@ -306,13 +306,13 @@ int rlimit_format(const struct rlimit *rl, char **ret) { @@ -43,7 +43,7 @@ int setrlimit_closest(int resource, const struct rlimit *rlim) {
fixed.rlim_max == highest.rlim_max)
return 0;
- log_debug("Failed at setting rlimit " RLIM_FMT " for resource RLIMIT_%s. Will attempt setting value " RLIM_FMT " instead.", rlim->rlim_max, rlimit_to_string(resource), fixed.rlim_max);
+ log_debug("Failed at setting rlimit " RLIM_FMT " for resource RLIMIT_%s. Will attempt setting value " RLIM_FMT " instead.", (uintmax_t)rlim->rlim_max, rlimit_to_string(resource), (uintmax_t)fixed.rlim_max);
if (setrlimit(resource, &fixed) < 0)
return -errno;
@@ -308,13 +308,13 @@ int rlimit_format(const struct rlimit *rl, char **ret) {
if (rl->rlim_cur >= RLIM_INFINITY && rl->rlim_max >= RLIM_INFINITY) if (rl->rlim_cur >= RLIM_INFINITY && rl->rlim_max >= RLIM_INFINITY)
s = strdup("infinity"); s = strdup("infinity");
else if (rl->rlim_cur >= RLIM_INFINITY) else if (rl->rlim_cur >= RLIM_INFINITY)
@ -68,7 +77,7 @@ index 2dc13eabc30d..0633cc67f417 100644
if (!s) if (!s)
return -ENOMEM; return -ENOMEM;
@@ -403,7 +403,7 @@ int rlimit_nofile_safe(void) { @@ -405,7 +405,7 @@ int rlimit_nofile_safe(void) {
rl.rlim_cur = FD_SETSIZE; rl.rlim_cur = FD_SETSIZE;
if (setrlimit(RLIMIT_NOFILE, &rl) < 0) if (setrlimit(RLIMIT_NOFILE, &rl) < 0)
@ -78,11 +87,11 @@ index 2dc13eabc30d..0633cc67f417 100644
return 1; return 1;
} }
diff --git a/src/core/execute.c b/src/core/execute.c diff --git a/src/core/execute.c b/src/core/execute.c
index 9762dc57443c..4a3421bb3ee6 100644 index f82fc294c0..4696d055a8 100644
--- a/src/core/execute.c --- a/src/core/execute.c
+++ b/src/core/execute.c +++ b/src/core/execute.c
@@ -4567,9 +4567,9 @@ void exec_context_dump(const ExecContext *c, FILE* f, const char *prefix) { @@ -5370,9 +5370,9 @@ void exec_context_dump(const ExecContext *c, FILE* f, const char *prefix) {
for (i = 0; i < RLIM_NLIMITS; i++) for (unsigned i = 0; i < RLIM_NLIMITS; i++)
if (c->rlimit[i]) { if (c->rlimit[i]) {
fprintf(f, "%sLimit%s: " RLIM_FMT "\n", fprintf(f, "%sLimit%s: " RLIM_FMT "\n",
- prefix, rlimit_to_string(i), c->rlimit[i]->rlim_max); - prefix, rlimit_to_string(i), c->rlimit[i]->rlim_max);

View File

@ -1,4 +1,4 @@
From 62fac5e3ff0fccd329cdc49605258b6d0e573a3e Mon Sep 17 00:00:00 2001 From f8be7b283309e4332eedc088774daac637afef7b Mon Sep 17 00:00:00 2001
From: Chen Qi <Qi.Chen@windriver.com> From: Chen Qi <Qi.Chen@windriver.com>
Date: Wed, 28 Feb 2018 21:25:22 -0800 Date: Wed, 28 Feb 2018 21:25:22 -0800
Subject: [PATCH] test-sizeof.c: Disable tests for missing typedefs in musl Subject: [PATCH] test-sizeof.c: Disable tests for missing typedefs in musl
@ -13,10 +13,10 @@ Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
1 file changed, 4 insertions(+) 1 file changed, 4 insertions(+)
diff --git a/src/test/test-sizeof.c b/src/test/test-sizeof.c diff --git a/src/test/test-sizeof.c b/src/test/test-sizeof.c
index 1020e0cb3153..c65062d2562c 100644 index 3c9dc180fa..e1a59d408c 100644
--- a/src/test/test-sizeof.c --- a/src/test/test-sizeof.c
+++ b/src/test/test-sizeof.c +++ b/src/test/test-sizeof.c
@@ -44,8 +44,10 @@ int main(void) { @@ -55,8 +55,10 @@ int main(void) {
info(unsigned); info(unsigned);
info(long unsigned); info(long unsigned);
info(long long unsigned); info(long long unsigned);
@ -27,7 +27,7 @@ index 1020e0cb3153..c65062d2562c 100644
info(float); info(float);
info(double); info(double);
@@ -63,7 +65,9 @@ int main(void) { @@ -74,7 +76,9 @@ int main(void) {
info(ssize_t); info(ssize_t);
info(time_t); info(time_t);
info(usec_t); info(usec_t);

View File

@ -1,4 +1,4 @@
From e6f871078d8d6f076c84f908fa57af15417ab87d Mon Sep 17 00:00:00 2001 From 06915b70735caa66987af758ebdc4207757ae758 Mon Sep 17 00:00:00 2001
From: Andre McCurdy <armccurdy@gmail.com> From: Andre McCurdy <armccurdy@gmail.com>
Date: Tue, 10 Oct 2017 14:33:30 -0700 Date: Tue, 10 Oct 2017 14:33:30 -0700
Subject: [PATCH] don't pass AT_SYMLINK_NOFOLLOW flag to faccessat() Subject: [PATCH] don't pass AT_SYMLINK_NOFOLLOW flag to faccessat()
@ -27,19 +27,20 @@ Upstream-Status: Inappropriate [musl specific]
Signed-off-by: Andre McCurdy <armccurdy@gmail.com> Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
--- ---
src/basic/fs-util.h | 22 +++++++++++++++++++++- src/basic/fs-util.h | 23 +++++++++++++++++++++--
src/shared/base-filesystem.c | 6 +++--- src/shared/base-filesystem.c | 6 +++---
2 files changed, 24 insertions(+), 4 deletions(-) 2 files changed, 24 insertions(+), 5 deletions(-)
diff --git a/src/basic/fs-util.h b/src/basic/fs-util.h diff --git a/src/basic/fs-util.h b/src/basic/fs-util.h
index 78d68be9fd85..c5dc84d41868 100644 index 027037f7a7..16eb379caf 100644
--- a/src/basic/fs-util.h --- a/src/basic/fs-util.h
+++ b/src/basic/fs-util.h +++ b/src/basic/fs-util.h
@@ -40,7 +40,27 @@ int fchmod_opath(int fd, mode_t m); @@ -44,8 +44,27 @@ int futimens_opath(int fd, const struct timespec ts[2]);
int fd_warn_permissions(const char *path, int fd); int fd_warn_permissions(const char *path, int fd);
int stat_warn_permissions(const char *path, const struct stat *st);
-#define laccess(path, mode) faccessat(AT_FDCWD, (path), (mode), AT_SYMLINK_NOFOLLOW) -#define laccess(path, mode) \
- (faccessat(AT_FDCWD, (path), (mode), AT_SYMLINK_NOFOLLOW) < 0 ? -errno : 0)
+/* +/*
+ Avoid using AT_SYMLINK_NOFOLLOW flag. It doesn't seem like the right thing to + Avoid using AT_SYMLINK_NOFOLLOW flag. It doesn't seem like the right thing to
+ do and it's not portable (not supported by musl). See: + do and it's not portable (not supported by musl). See:
@ -65,7 +66,7 @@ index 78d68be9fd85..c5dc84d41868 100644
int touch_file(const char *path, bool parents, usec_t stamp, uid_t uid, gid_t gid, mode_t mode); int touch_file(const char *path, bool parents, usec_t stamp, uid_t uid, gid_t gid, mode_t mode);
int touch(const char *path); int touch(const char *path);
diff --git a/src/shared/base-filesystem.c b/src/shared/base-filesystem.c diff --git a/src/shared/base-filesystem.c b/src/shared/base-filesystem.c
index 657407da2d37..fbd5782d84fc 100644 index 1d05409086..1ed06c31ab 100644
--- a/src/shared/base-filesystem.c --- a/src/shared/base-filesystem.c
+++ b/src/shared/base-filesystem.c +++ b/src/shared/base-filesystem.c
@@ -54,7 +54,7 @@ int base_filesystem_create(const char *root, uid_t uid, gid_t gid) { @@ -54,7 +54,7 @@ int base_filesystem_create(const char *root, uid_t uid, gid_t gid) {

View File

@ -1,4 +1,4 @@
From ec335ef3bb903a7eaf054103cc51411e71e6448c Mon Sep 17 00:00:00 2001 From 0c44af262cfa07c57db4b32de1f7610af47797f4 Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com> From: Khem Raj <raj.khem@gmail.com>
Date: Sun, 27 May 2018 08:36:44 -0700 Date: Sun, 27 May 2018 08:36:44 -0700
Subject: [PATCH] Define glibc compatible basename() for non-glibc systems Subject: [PATCH] Define glibc compatible basename() for non-glibc systems
@ -15,7 +15,7 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
1 file changed, 5 insertions(+) 1 file changed, 5 insertions(+)
diff --git a/src/machine/machine-dbus.c b/src/machine/machine-dbus.c diff --git a/src/machine/machine-dbus.c b/src/machine/machine-dbus.c
index 760ccb445cd0..0df20f3864b3 100644 index 3a1e4f9072..ab87b9882c 100644
--- a/src/machine/machine-dbus.c --- a/src/machine/machine-dbus.c
+++ b/src/machine/machine-dbus.c +++ b/src/machine/machine-dbus.c
@@ -11,6 +11,11 @@ @@ -11,6 +11,11 @@
@ -29,4 +29,4 @@ index 760ccb445cd0..0df20f3864b3 100644
+ +
#include "alloc-util.h" #include "alloc-util.h"
#include "bus-common-errors.h" #include "bus-common-errors.h"
#include "bus-internal.h" #include "bus-get-properties.h"

View File

@ -1,4 +1,4 @@
From bb28a9c870bb47dcdb1ccebaa8e3a5a86730a244 Mon Sep 17 00:00:00 2001 From 0f4b60e34a806055c678eb97a7ec7e21291bcf48 Mon Sep 17 00:00:00 2001
From: Chen Qi <Qi.Chen@windriver.com> From: Chen Qi <Qi.Chen@windriver.com>
Date: Wed, 4 Jul 2018 15:00:44 +0800 Date: Wed, 4 Jul 2018 15:00:44 +0800
Subject: [PATCH] Do not disable buffering when writing to oom_score_adj Subject: [PATCH] Do not disable buffering when writing to oom_score_adj
@ -25,10 +25,10 @@ Signed-off-by: Scott Murray <scott.murray@konsulko.com>
1 file changed, 1 insertion(+), 1 deletion(-) 1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/basic/process-util.c b/src/basic/process-util.c diff --git a/src/basic/process-util.c b/src/basic/process-util.c
index 644f53aee005..acaf13591396 100644 index caa9dfe3a3..6101f43db5 100644
--- a/src/basic/process-util.c --- a/src/basic/process-util.c
+++ b/src/basic/process-util.c +++ b/src/basic/process-util.c
@@ -1500,7 +1500,7 @@ int set_oom_score_adjust(int value) { @@ -1523,7 +1523,7 @@ int set_oom_score_adjust(int value) {
sprintf(t, "%i", value); sprintf(t, "%i", value);
return write_string_file("/proc/self/oom_score_adj", t, return write_string_file("/proc/self/oom_score_adj", t,

View File

@ -1,4 +1,4 @@
From 4938705454cf46cfe8deac8ce457d5d2432cbead Mon Sep 17 00:00:00 2001 From c30ab62d18ce88187f5eb6c236e0977c9337f68d Mon Sep 17 00:00:00 2001
From: Chen Qi <Qi.Chen@windriver.com> From: Chen Qi <Qi.Chen@windriver.com>
Date: Tue, 10 Jul 2018 15:40:17 +0800 Date: Tue, 10 Jul 2018 15:40:17 +0800
Subject: [PATCH] distinguish XSI-compliant strerror_r from GNU-specifi Subject: [PATCH] distinguish XSI-compliant strerror_r from GNU-specifi
@ -20,32 +20,15 @@ Upstream-Status: Inappropriate [musl specific]
Signed-off-by: Chen Qi <Qi.Chen@windriver.com> Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
--- ---
src/journal/journal-send.c | 5 +++++ src/libsystemd/sd-bus/bus-error.c | 5 +++++
src/libsystemd/sd-bus/bus-error.c | 5 +++++ src/libsystemd/sd-journal/journal-send.c | 5 +++++
2 files changed, 10 insertions(+) 2 files changed, 10 insertions(+)
diff --git a/src/journal/journal-send.c b/src/journal/journal-send.c
index 43ed756bda53..227ea64dbb48 100644
--- a/src/journal/journal-send.c
+++ b/src/journal/journal-send.c
@@ -336,7 +336,12 @@ static int fill_iovec_perror_and_send(const char *message, int skip, struct iove
char* j;
errno = 0;
+#ifndef __GLIBC__
+ strerror_r(_saved_errno_, buffer + 8 + k, n - 8 - k);
+ j = buffer + 8 + k;
+#else
j = strerror_r(_saved_errno_, buffer + 8 + k, n - 8 - k);
+#endif
if (errno == 0) {
char error[STRLEN("ERRNO=") + DECIMAL_STR_MAX(int) + 1];
diff --git a/src/libsystemd/sd-bus/bus-error.c b/src/libsystemd/sd-bus/bus-error.c diff --git a/src/libsystemd/sd-bus/bus-error.c b/src/libsystemd/sd-bus/bus-error.c
index f760f0fdd21c..28a5159c4480 100644 index 8da2024a50..9605a9b869 100644
--- a/src/libsystemd/sd-bus/bus-error.c --- a/src/libsystemd/sd-bus/bus-error.c
+++ b/src/libsystemd/sd-bus/bus-error.c +++ b/src/libsystemd/sd-bus/bus-error.c
@@ -379,7 +379,12 @@ static void bus_error_strerror(sd_bus_error *e, int error) { @@ -392,7 +392,12 @@ static void bus_error_strerror(sd_bus_error *e, int error) {
return; return;
errno = 0; errno = 0;
@ -58,3 +41,20 @@ index f760f0fdd21c..28a5159c4480 100644
if (errno == ERANGE || strlen(x) >= k - 1) { if (errno == ERANGE || strlen(x) >= k - 1) {
free(m); free(m);
k *= 2; k *= 2;
diff --git a/src/libsystemd/sd-journal/journal-send.c b/src/libsystemd/sd-journal/journal-send.c
index e8e6ad555b..8ca5271d02 100644
--- a/src/libsystemd/sd-journal/journal-send.c
+++ b/src/libsystemd/sd-journal/journal-send.c
@@ -348,7 +348,12 @@ static int fill_iovec_perror_and_send(const char *message, int skip, struct iove
char* j;
errno = 0;
+#ifndef __GLIBC__
+ strerror_r(_saved_errno_, buffer + 8 + k, n - 8 - k);
+ j = buffer + 8 + k;
+#else
j = strerror_r(_saved_errno_, buffer + 8 + k, n - 8 - k);
+#endif
if (errno == 0) {
char error[STRLEN("ERRNO=") + DECIMAL_STR_MAX(int) + 1];

View File

@ -1,4 +1,4 @@
From 1c4c73a7cc0fb59eb68ab70699f7f51af5c163b2 Mon Sep 17 00:00:00 2001 From fa86e5578256dddb296fd30128929ea7c4b792a4 Mon Sep 17 00:00:00 2001
From: Chen Qi <Qi.Chen@windriver.com> From: Chen Qi <Qi.Chen@windriver.com>
Date: Mon, 25 Feb 2019 15:18:00 +0800 Date: Mon, 25 Feb 2019 15:18:00 +0800
Subject: [PATCH] Hide __start_BUS_ERROR_MAP and __stop_BUS_ERROR_MAP Subject: [PATCH] Hide __start_BUS_ERROR_MAP and __stop_BUS_ERROR_MAP
@ -17,10 +17,10 @@ Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
1 file changed, 2 insertions(+), 2 deletions(-) 1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/src/libsystemd/sd-bus/bus-error.c b/src/libsystemd/sd-bus/bus-error.c diff --git a/src/libsystemd/sd-bus/bus-error.c b/src/libsystemd/sd-bus/bus-error.c
index 28a5159c4480..962a4de10c56 100644 index 9605a9b869..38b6cf90c3 100644
--- a/src/libsystemd/sd-bus/bus-error.c --- a/src/libsystemd/sd-bus/bus-error.c
+++ b/src/libsystemd/sd-bus/bus-error.c +++ b/src/libsystemd/sd-bus/bus-error.c
@@ -54,8 +54,8 @@ BUS_ERROR_MAP_ELF_REGISTER const sd_bus_error_map bus_standard_errors[] = { @@ -55,8 +55,8 @@ BUS_ERROR_MAP_ELF_REGISTER const sd_bus_error_map bus_standard_errors[] = {
}; };
/* GCC maps this magically to the beginning and end of the BUS_ERROR_MAP section */ /* GCC maps this magically to the beginning and end of the BUS_ERROR_MAP section */

View File

@ -1,4 +1,4 @@
From 8303d49cabaf3ab8890ba1d266972c721dfe6ee8 Mon Sep 17 00:00:00 2001 From 11e730694706fa354a0e43c588ef66677a777d9a Mon Sep 17 00:00:00 2001
From: Chen Qi <Qi.Chen@windriver.com> From: Chen Qi <Qi.Chen@windriver.com>
Date: Mon, 25 Feb 2019 15:27:54 +0800 Date: Mon, 25 Feb 2019 15:27:54 +0800
Subject: [PATCH] missing_type.h: add __compar_d_fn_t definition Subject: [PATCH] missing_type.h: add __compar_d_fn_t definition
@ -15,7 +15,7 @@ Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
1 file changed, 1 insertion(+) 1 file changed, 1 insertion(+)
diff --git a/src/basic/missing_type.h b/src/basic/missing_type.h diff --git a/src/basic/missing_type.h b/src/basic/missing_type.h
index 23602ebbd533..917d314a81bf 100644 index 3df1084ef2..697aa7f58a 100644
--- a/src/basic/missing_type.h --- a/src/basic/missing_type.h
+++ b/src/basic/missing_type.h +++ b/src/basic/missing_type.h
@@ -13,6 +13,7 @@ @@ -13,6 +13,7 @@

View File

@ -1,4 +1,4 @@
From 6364ff5534678c158a7fb8d4e50d0a6ce72c1ad8 Mon Sep 17 00:00:00 2001 From 45bae28d3da6607d33d54f4b30a500f5249aadde Mon Sep 17 00:00:00 2001
From: Chen Qi <Qi.Chen@windriver.com> From: Chen Qi <Qi.Chen@windriver.com>
Date: Mon, 25 Feb 2019 15:44:54 +0800 Date: Mon, 25 Feb 2019 15:44:54 +0800
Subject: [PATCH] avoid redefinition of prctl_mm_map structure Subject: [PATCH] avoid redefinition of prctl_mm_map structure
@ -15,11 +15,11 @@ Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
1 file changed, 2 insertions(+) 1 file changed, 2 insertions(+)
diff --git a/src/basic/missing_prctl.h b/src/basic/missing_prctl.h diff --git a/src/basic/missing_prctl.h b/src/basic/missing_prctl.h
index f80cd17f346b..47e489354053 100644 index ab851306ba..5547cad875 100644
--- a/src/basic/missing_prctl.h --- a/src/basic/missing_prctl.h
+++ b/src/basic/missing_prctl.h +++ b/src/basic/missing_prctl.h
@@ -1,7 +1,9 @@ @@ -1,7 +1,9 @@
/* SPDX-License-Identifier: LGPL-2.1+ */ /* SPDX-License-Identifier: LGPL-2.1-or-later */
#pragma once #pragma once
+#ifdef __GLIBC__ +#ifdef __GLIBC__

View File

@ -0,0 +1,24 @@
From 6e593ff2afbe4bfe15eee2ec34e51490a38462f5 Mon Sep 17 00:00:00 2001
From: Alex Kiernan <alex.kiernan@gmail.com>
Date: Fri, 7 Aug 2020 15:19:27 +0000
Subject: [PATCH] Handle missing LOCK_EX
Upstream-Status: Inappropriate [musl specific]
Signed-off-by: Alex Kiernan <alex.kiernan@gmail.com>
---
src/partition/makefs.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/src/partition/makefs.c b/src/partition/makefs.c
index 7c94fbfedb..42f966722d 100644
--- a/src/partition/makefs.c
+++ b/src/partition/makefs.c
@@ -6,6 +6,7 @@
#include <sys/stat.h>
#include <sys/types.h>
#include <unistd.h>
+#include <sys/file.h>
#include "alloc-util.h"
#include "blockdev-util.h"

View File

@ -0,0 +1,38 @@
From ac579b296aa29c2f1dad9425c6d795e154ec8f7c Mon Sep 17 00:00:00 2001
From: Alex Kiernan <alex.kiernan@gmail.com>
Date: Fri, 7 Aug 2020 15:20:17 +0000
Subject: [PATCH] Fix incompatible pointer type struct sockaddr_un *
| ../../../../../../workspace/sources/systemd/src/nspawn/nspawn.c: In function 'cant_be_in_netns':
| ../../../../../../workspace/sources/systemd/src/nspawn/nspawn.c:4893:25: error: passing argument 2 of 'connect' from incompatible pointer type [-Werror=incompatible-pointer-types]
| 4893 | if (connect(fd, &sa.un, SOCKADDR_UN_LEN(sa.un)) < 0) {
| | ^~~~~~
| | |
| | struct sockaddr_un *
| In file included from ../../../../../../workspace/sources/systemd/src/systemd/sd-daemon.h:22,
| from ../../../../../../workspace/sources/systemd/src/nspawn/nspawn.c:21:
| /home/ubuntu/poky/build/tmp/work/core2-64-poky-linux-musl/systemd/1_246-r0/recipe-sysroot/usr/include/sys/socket.h:384:19: note: expected 'const struct sockaddr *' but argument is of type 'struct sockaddr_un *'
| 384 | int connect (int, const struct sockaddr *, socklen_t);
| | ^~~~~~~~~~~~~~~~~~~~~~~
| cc1: some warnings being treated as errors
Upstream-Status: Inappropriate [musl specific]
Signed-off-by: Alex Kiernan <alex.kiernan@gmail.com>
---
src/nspawn/nspawn.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/nspawn/nspawn.c b/src/nspawn/nspawn.c
index a4ac8ed2bb..0c41a48d4b 100644
--- a/src/nspawn/nspawn.c
+++ b/src/nspawn/nspawn.c
@@ -5125,7 +5125,7 @@ static int cant_be_in_netns(void) {
if (fd < 0)
return log_error_errno(errno, "Failed to allocate udev control socket: %m");
- if (connect(fd, &sa.un, SOCKADDR_UN_LEN(sa.un)) < 0) {
+ if (connect(fd, (struct sockaddr *)&sa.un, SOCKADDR_UN_LEN(sa.un)) < 0) {
if (errno == ENOENT || ERRNO_IS_DISCONNECT(errno))
return log_error_errno(SYNTHETIC_ERRNO(EOPNOTSUPP),

View File

@ -1,4 +1,4 @@
From a05cc5fb3dc0e51682c40196285cdda34ec90783 Mon Sep 17 00:00:00 2001 From 6bc78df50adb48d24a2abfdf65b44b932cc5a571 Mon Sep 17 00:00:00 2001
From: Chen Qi <Qi.Chen@windriver.com> From: Chen Qi <Qi.Chen@windriver.com>
Date: Mon, 25 Feb 2019 16:53:06 +0800 Date: Mon, 25 Feb 2019 16:53:06 +0800
Subject: [PATCH] test-json.c: define M_PIl Subject: [PATCH] test-json.c: define M_PIl
@ -15,10 +15,10 @@ Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
1 file changed, 4 insertions(+) 1 file changed, 4 insertions(+)
diff --git a/src/test/test-json.c b/src/test/test-json.c diff --git a/src/test/test-json.c b/src/test/test-json.c
index a6613043b924..ca823ea79f05 100644 index 1d4b11945e..572c8cf9d0 100644
--- a/src/test/test-json.c --- a/src/test/test-json.c
+++ b/src/test/test-json.c +++ b/src/test/test-json.c
@@ -12,6 +12,10 @@ @@ -13,6 +13,10 @@
#include "tests.h" #include "tests.h"
#include "util.h" #include "util.h"

View File

@ -1,4 +1,4 @@
From f92fd7e77ed5aab2dda01a20e6891c37f09415d3 Mon Sep 17 00:00:00 2001 From 7cb6579572b50ef44bc0a321a4c73cce55b0c2f2 Mon Sep 17 00:00:00 2001
From: Chen Qi <Qi.Chen@windriver.com> From: Chen Qi <Qi.Chen@windriver.com>
Date: Fri, 1 Mar 2019 15:22:15 +0800 Date: Fri, 1 Mar 2019 15:22:15 +0800
Subject: [PATCH] do not disable buffer in writing files Subject: [PATCH] do not disable buffer in writing files
@ -23,6 +23,7 @@ Signed-off-by: Scott Murray <scott.murray@konsulko.com>
src/basic/cgroup-util.c | 10 +++++----- src/basic/cgroup-util.c | 10 +++++-----
src/basic/procfs-util.c | 4 ++-- src/basic/procfs-util.c | 4 ++--
src/basic/smack-util.c | 2 +- src/basic/smack-util.c | 2 +-
src/basic/sysctl-util.c | 2 +-
src/basic/util.c | 2 +- src/basic/util.c | 2 +-
src/binfmt/binfmt.c | 6 +++--- src/binfmt/binfmt.c | 6 +++---
src/core/main.c | 4 ++-- src/core/main.c | 4 ++--
@ -33,18 +34,15 @@ Signed-off-by: Scott Murray <scott.murray@konsulko.com>
src/nspawn/nspawn-cgroup.c | 2 +- src/nspawn/nspawn-cgroup.c | 2 +-
src/nspawn/nspawn.c | 6 +++--- src/nspawn/nspawn.c | 6 +++---
src/shared/cgroup-setup.c | 4 ++-- src/shared/cgroup-setup.c | 4 ++--
src/shared/sysctl-util.c | 2 +-
src/sleep/sleep.c | 8 ++++---- src/sleep/sleep.c | 8 ++++----
src/udev/udevadm-trigger.c | 2 +-
src/udev/udevd.c | 2 +-
src/vconsole/vconsole-setup.c | 2 +- src/vconsole/vconsole-setup.c | 2 +-
18 files changed, 35 insertions(+), 35 deletions(-) 16 files changed, 33 insertions(+), 33 deletions(-)
diff --git a/src/basic/cgroup-util.c b/src/basic/cgroup-util.c diff --git a/src/basic/cgroup-util.c b/src/basic/cgroup-util.c
index a5141f4cbedd..04c06e7a55cb 100644 index 50c1ae1b2b..5b40e92163 100644
--- a/src/basic/cgroup-util.c --- a/src/basic/cgroup-util.c
+++ b/src/basic/cgroup-util.c +++ b/src/basic/cgroup-util.c
@@ -739,7 +739,7 @@ int cg_install_release_agent(const char *controller, const char *agent) { @@ -765,7 +765,7 @@ int cg_install_release_agent(const char *controller, const char *agent) {
sc = strstrip(contents); sc = strstrip(contents);
if (isempty(sc)) { if (isempty(sc)) {
@ -53,7 +51,7 @@ index a5141f4cbedd..04c06e7a55cb 100644
if (r < 0) if (r < 0)
return r; return r;
} else if (!path_equal(sc, agent)) } else if (!path_equal(sc, agent))
@@ -757,7 +757,7 @@ int cg_install_release_agent(const char *controller, const char *agent) { @@ -783,7 +783,7 @@ int cg_install_release_agent(const char *controller, const char *agent) {
sc = strstrip(contents); sc = strstrip(contents);
if (streq(sc, "0")) { if (streq(sc, "0")) {
@ -62,7 +60,7 @@ index a5141f4cbedd..04c06e7a55cb 100644
if (r < 0) if (r < 0)
return r; return r;
@@ -784,7 +784,7 @@ int cg_uninstall_release_agent(const char *controller) { @@ -810,7 +810,7 @@ int cg_uninstall_release_agent(const char *controller) {
if (r < 0) if (r < 0)
return r; return r;
@ -71,7 +69,7 @@ index a5141f4cbedd..04c06e7a55cb 100644
if (r < 0) if (r < 0)
return r; return r;
@@ -794,7 +794,7 @@ int cg_uninstall_release_agent(const char *controller) { @@ -820,7 +820,7 @@ int cg_uninstall_release_agent(const char *controller) {
if (r < 0) if (r < 0)
return r; return r;
@ -90,7 +88,7 @@ index a5141f4cbedd..04c06e7a55cb 100644
int cg_get_attribute(const char *controller, const char *path, const char *attribute, char **ret) { int cg_get_attribute(const char *controller, const char *path, const char *attribute, char **ret) {
diff --git a/src/basic/procfs-util.c b/src/basic/procfs-util.c diff --git a/src/basic/procfs-util.c b/src/basic/procfs-util.c
index da7e836f143e..2138f20bcc03 100644 index 8f9eee8d36..480f8cc0b4 100644
--- a/src/basic/procfs-util.c --- a/src/basic/procfs-util.c
+++ b/src/basic/procfs-util.c +++ b/src/basic/procfs-util.c
@@ -86,13 +86,13 @@ int procfs_tasks_set_limit(uint64_t limit) { @@ -86,13 +86,13 @@ int procfs_tasks_set_limit(uint64_t limit) {
@ -110,7 +108,7 @@ index da7e836f143e..2138f20bcc03 100644
uint64_t threads_max; uint64_t threads_max;
diff --git a/src/basic/smack-util.c b/src/basic/smack-util.c diff --git a/src/basic/smack-util.c b/src/basic/smack-util.c
index da9a2139d31a..5e91f5b8f5d9 100644 index 3362ee3924..80c0f2a52e 100644
--- a/src/basic/smack-util.c --- a/src/basic/smack-util.c
+++ b/src/basic/smack-util.c +++ b/src/basic/smack-util.c
@@ -114,7 +114,7 @@ int mac_smack_apply_pid(pid_t pid, const char *label) { @@ -114,7 +114,7 @@ int mac_smack_apply_pid(pid_t pid, const char *label) {
@ -122,11 +120,24 @@ index da9a2139d31a..5e91f5b8f5d9 100644
if (r < 0) if (r < 0)
return r; return r;
diff --git a/src/basic/sysctl-util.c b/src/basic/sysctl-util.c
index c96b5cd77f..d2476d9665 100644
--- a/src/basic/sysctl-util.c
+++ b/src/basic/sysctl-util.c
@@ -93,7 +93,7 @@ int sysctl_write_ip_property(int af, const char *ifname, const char *property, c
log_debug("Setting '%s' to '%s'", p, value);
- return write_string_file(p, value, WRITE_STRING_FILE_VERIFY_ON_FAILURE | WRITE_STRING_FILE_DISABLE_BUFFER);
+ return write_string_file(p, value, WRITE_STRING_FILE_VERIFY_ON_FAILURE | 0);
}
int sysctl_read(const char *property, char **ret) {
diff --git a/src/basic/util.c b/src/basic/util.c diff --git a/src/basic/util.c b/src/basic/util.c
index 2b3b3918a32f..aff8d0fcd473 100644 index 955b18bd2a..6d89c90176 100644
--- a/src/basic/util.c --- a/src/basic/util.c
+++ b/src/basic/util.c +++ b/src/basic/util.c
@@ -267,7 +267,7 @@ void disable_coredumps(void) { @@ -234,7 +234,7 @@ void disable_coredumps(void) {
if (detect_container() > 0) if (detect_container() > 0)
return; return;
@ -136,10 +147,10 @@ index 2b3b3918a32f..aff8d0fcd473 100644
log_debug_errno(r, "Failed to turn off coredumps, ignoring: %m"); log_debug_errno(r, "Failed to turn off coredumps, ignoring: %m");
} }
diff --git a/src/binfmt/binfmt.c b/src/binfmt/binfmt.c diff --git a/src/binfmt/binfmt.c b/src/binfmt/binfmt.c
index 7ff844c78c3a..5c5721d7c2f7 100644 index f6b72e0bae..e9fd4d06be 100644
--- a/src/binfmt/binfmt.c --- a/src/binfmt/binfmt.c
+++ b/src/binfmt/binfmt.c +++ b/src/binfmt/binfmt.c
@@ -47,7 +47,7 @@ static int delete_rule(const char *rule) { @@ -48,7 +48,7 @@ static int delete_rule(const char *rule) {
if (!fn) if (!fn)
return log_oom(); return log_oom();
@ -148,7 +159,7 @@ index 7ff844c78c3a..5c5721d7c2f7 100644
} }
static int apply_rule(const char *rule) { static int apply_rule(const char *rule) {
@@ -55,7 +55,7 @@ static int apply_rule(const char *rule) { @@ -56,7 +56,7 @@ static int apply_rule(const char *rule) {
(void) delete_rule(rule); (void) delete_rule(rule);
@ -157,7 +168,7 @@ index 7ff844c78c3a..5c5721d7c2f7 100644
if (r < 0) if (r < 0)
return log_error_errno(r, "Failed to add binary format: %m"); return log_error_errno(r, "Failed to add binary format: %m");
@@ -212,7 +212,7 @@ static int run(int argc, char *argv[]) { @@ -222,7 +222,7 @@ static int run(int argc, char *argv[]) {
} }
/* Flush out all rules */ /* Flush out all rules */
@ -167,10 +178,10 @@ index 7ff844c78c3a..5c5721d7c2f7 100644
STRV_FOREACH(f, files) { STRV_FOREACH(f, files) {
k = apply_file(*f, true); k = apply_file(*f, true);
diff --git a/src/core/main.c b/src/core/main.c diff --git a/src/core/main.c b/src/core/main.c
index 3c6b66e89c8e..c39ebe56a5b3 100644 index 3ee8d0a869..ec36e3e80f 100644
--- a/src/core/main.c --- a/src/core/main.c
+++ b/src/core/main.c +++ b/src/core/main.c
@@ -1312,7 +1312,7 @@ static int bump_unix_max_dgram_qlen(void) { @@ -1401,7 +1401,7 @@ static int bump_unix_max_dgram_qlen(void) {
if (v >= DEFAULT_UNIX_MAX_DGRAM_QLEN) if (v >= DEFAULT_UNIX_MAX_DGRAM_QLEN)
return 0; return 0;
@ -179,7 +190,7 @@ index 3c6b66e89c8e..c39ebe56a5b3 100644
if (r < 0) if (r < 0)
return log_full_errno(IN_SET(r, -EROFS, -EPERM, -EACCES) ? LOG_DEBUG : LOG_WARNING, r, return log_full_errno(IN_SET(r, -EROFS, -EPERM, -EACCES) ? LOG_DEBUG : LOG_WARNING, r,
"Failed to bump AF_UNIX datagram queue length, ignoring: %m"); "Failed to bump AF_UNIX datagram queue length, ignoring: %m");
@@ -1536,7 +1536,7 @@ static void initialize_core_pattern(bool skip_setup) { @@ -1678,7 +1678,7 @@ static void initialize_core_pattern(bool skip_setup) {
if (getpid_cached() != 1) if (getpid_cached() != 1)
return; return;
@ -189,7 +200,7 @@ index 3c6b66e89c8e..c39ebe56a5b3 100644
log_warning_errno(r, "Failed to write '%s' to /proc/sys/kernel/core_pattern, ignoring: %m", arg_early_core_pattern); log_warning_errno(r, "Failed to write '%s' to /proc/sys/kernel/core_pattern, ignoring: %m", arg_early_core_pattern);
} }
diff --git a/src/core/smack-setup.c b/src/core/smack-setup.c diff --git a/src/core/smack-setup.c b/src/core/smack-setup.c
index 4427397f2715..8aeb5c829513 100644 index 8cc1696a4f..ab7b4ba2c3 100644
--- a/src/core/smack-setup.c --- a/src/core/smack-setup.c
+++ b/src/core/smack-setup.c +++ b/src/core/smack-setup.c
@@ -325,17 +325,17 @@ int mac_smack_setup(bool *loaded_policy) { @@ -325,17 +325,17 @@ int mac_smack_setup(bool *loaded_policy) {
@ -215,7 +226,7 @@ index 4427397f2715..8aeb5c829513 100644
log_warning_errno(r, "Failed to set SMACK netlabel rule \"127.0.0.1 -CIPSO\": %m"); log_warning_errno(r, "Failed to set SMACK netlabel rule \"127.0.0.1 -CIPSO\": %m");
#endif #endif
diff --git a/src/hibernate-resume/hibernate-resume.c b/src/hibernate-resume/hibernate-resume.c diff --git a/src/hibernate-resume/hibernate-resume.c b/src/hibernate-resume/hibernate-resume.c
index 17e7cd1a009b..87a766771663 100644 index 58e35e403e..1d0beb4008 100644
--- a/src/hibernate-resume/hibernate-resume.c --- a/src/hibernate-resume/hibernate-resume.c
+++ b/src/hibernate-resume/hibernate-resume.c +++ b/src/hibernate-resume/hibernate-resume.c
@@ -45,7 +45,7 @@ int main(int argc, char *argv[]) { @@ -45,7 +45,7 @@ int main(int argc, char *argv[]) {
@ -228,23 +239,23 @@ index 17e7cd1a009b..87a766771663 100644
log_error_errno(r, "Failed to write '%s' to /sys/power/resume: %m", major_minor); log_error_errno(r, "Failed to write '%s' to /sys/power/resume: %m", major_minor);
return EXIT_FAILURE; return EXIT_FAILURE;
diff --git a/src/libsystemd/sd-device/sd-device.c b/src/libsystemd/sd-device/sd-device.c diff --git a/src/libsystemd/sd-device/sd-device.c b/src/libsystemd/sd-device/sd-device.c
index 1f2451f8e1b4..3f676ec2841a 100644 index d82f01a164..b8fd63346c 100644
--- a/src/libsystemd/sd-device/sd-device.c --- a/src/libsystemd/sd-device/sd-device.c
+++ b/src/libsystemd/sd-device/sd-device.c +++ b/src/libsystemd/sd-device/sd-device.c
@@ -1849,7 +1849,7 @@ _public_ int sd_device_set_sysattr_value(sd_device *device, const char *sysattr, @@ -1987,7 +1987,7 @@ _public_ int sd_device_set_sysattr_value(sd_device *device, const char *sysattr,
if (!value) if (!value)
return -ENOMEM; return -ENOMEM;
- r = write_string_file(path, value, WRITE_STRING_FILE_DISABLE_BUFFER | WRITE_STRING_FILE_NOFOLLOW); - r = write_string_file(path, value, WRITE_STRING_FILE_DISABLE_BUFFER | WRITE_STRING_FILE_NOFOLLOW);
+ r = write_string_file(path, value, 0 | WRITE_STRING_FILE_NOFOLLOW); + r = write_string_file(path, value, 0 | WRITE_STRING_FILE_NOFOLLOW);
if (r < 0) { if (r < 0) {
if (r == -ELOOP) /* On failure, clear cache entry, as we do not know how it fails. */
return -EINVAL; device_remove_cached_sysattr_value(device, sysattr);
diff --git a/src/login/logind-dbus.c b/src/login/logind-dbus.c diff --git a/src/login/logind-dbus.c b/src/login/logind-dbus.c
index 52a7ea3c77e9..9703de0dabee 100644 index 3bc424b83b..5f5eef0843 100644
--- a/src/login/logind-dbus.c --- a/src/login/logind-dbus.c
+++ b/src/login/logind-dbus.c +++ b/src/login/logind-dbus.c
@@ -1339,7 +1339,7 @@ static int trigger_device(Manager *m, sd_device *d) { @@ -1330,7 +1330,7 @@ static int trigger_device(Manager *m, sd_device *d) {
if (!t) if (!t)
return -ENOMEM; return -ENOMEM;
@ -254,7 +265,7 @@ index 52a7ea3c77e9..9703de0dabee 100644
return 0; return 0;
diff --git a/src/nspawn/nspawn-cgroup.c b/src/nspawn/nspawn-cgroup.c diff --git a/src/nspawn/nspawn-cgroup.c b/src/nspawn/nspawn-cgroup.c
index f5048d9473cb..b6383ab5c97e 100644 index cb01b25bc6..e92051268b 100644
--- a/src/nspawn/nspawn-cgroup.c --- a/src/nspawn/nspawn-cgroup.c
+++ b/src/nspawn/nspawn-cgroup.c +++ b/src/nspawn/nspawn-cgroup.c
@@ -124,7 +124,7 @@ int sync_cgroup(pid_t pid, CGroupUnified unified_requested, uid_t uid_shift) { @@ -124,7 +124,7 @@ int sync_cgroup(pid_t pid, CGroupUnified unified_requested, uid_t uid_shift) {
@ -267,10 +278,10 @@ index f5048d9473cb..b6383ab5c97e 100644
log_error_errno(r, "Failed to move process: %m"); log_error_errno(r, "Failed to move process: %m");
goto finish; goto finish;
diff --git a/src/nspawn/nspawn.c b/src/nspawn/nspawn.c diff --git a/src/nspawn/nspawn.c b/src/nspawn/nspawn.c
index 734dee1130e0..71add9a055d2 100644 index 0c41a48d4b..9c893b18e4 100644
--- a/src/nspawn/nspawn.c --- a/src/nspawn/nspawn.c
+++ b/src/nspawn/nspawn.c +++ b/src/nspawn/nspawn.c
@@ -2440,7 +2440,7 @@ static int reset_audit_loginuid(void) { @@ -2695,7 +2695,7 @@ static int reset_audit_loginuid(void) {
if (streq(p, "4294967295")) if (streq(p, "4294967295"))
return 0; return 0;
@ -279,7 +290,7 @@ index 734dee1130e0..71add9a055d2 100644
if (r < 0) { if (r < 0) {
log_error_errno(r, log_error_errno(r,
"Failed to reset audit login UID. This probably means that your kernel is too\n" "Failed to reset audit login UID. This probably means that your kernel is too\n"
@@ -3665,13 +3665,13 @@ static int setup_uid_map(pid_t pid) { @@ -3948,13 +3948,13 @@ static int setup_uid_map(pid_t pid) {
xsprintf(uid_map, "/proc/" PID_FMT "/uid_map", pid); xsprintf(uid_map, "/proc/" PID_FMT "/uid_map", pid);
xsprintf(line, UID_FMT " " UID_FMT " " UID_FMT "\n", 0, arg_uid_shift, arg_uid_range); xsprintf(line, UID_FMT " " UID_FMT " " UID_FMT "\n", 0, arg_uid_shift, arg_uid_range);
@ -296,7 +307,7 @@ index 734dee1130e0..71add9a055d2 100644
return log_error_errno(r, "Failed to write GID map: %m"); return log_error_errno(r, "Failed to write GID map: %m");
diff --git a/src/shared/cgroup-setup.c b/src/shared/cgroup-setup.c diff --git a/src/shared/cgroup-setup.c b/src/shared/cgroup-setup.c
index e8398cbde5ba..ba682ec0c9e7 100644 index f197f715c7..077f893177 100644
--- a/src/shared/cgroup-setup.c --- a/src/shared/cgroup-setup.c
+++ b/src/shared/cgroup-setup.c +++ b/src/shared/cgroup-setup.c
@@ -267,7 +267,7 @@ int cg_attach(const char *controller, const char *path, pid_t pid) { @@ -267,7 +267,7 @@ int cg_attach(const char *controller, const char *path, pid_t pid) {
@ -308,7 +319,7 @@ index e8398cbde5ba..ba682ec0c9e7 100644
if (r < 0) if (r < 0)
return r; return r;
@@ -817,7 +817,7 @@ int cg_enable_everywhere( @@ -799,7 +799,7 @@ int cg_enable_everywhere(
return log_debug_errno(errno, "Failed to open cgroup.subtree_control file of %s: %m", p); return log_debug_errno(errno, "Failed to open cgroup.subtree_control file of %s: %m", p);
} }
@ -317,24 +328,11 @@ index e8398cbde5ba..ba682ec0c9e7 100644
if (r < 0) { if (r < 0) {
log_debug_errno(r, "Failed to %s controller %s for %s (%s): %m", log_debug_errno(r, "Failed to %s controller %s for %s (%s): %m",
FLAGS_SET(mask, bit) ? "enable" : "disable", n, p, fs); FLAGS_SET(mask, bit) ? "enable" : "disable", n, p, fs);
diff --git a/src/shared/sysctl-util.c b/src/shared/sysctl-util.c
index 8543dbd2d05f..76162599817e 100644
--- a/src/shared/sysctl-util.c
+++ b/src/shared/sysctl-util.c
@@ -93,7 +93,7 @@ int sysctl_write_ip_property(int af, const char *ifname, const char *property, c
log_debug("Setting '%s' to '%s'", p, value);
- return write_string_file(p, value, WRITE_STRING_FILE_VERIFY_ON_FAILURE | WRITE_STRING_FILE_DISABLE_BUFFER);
+ return write_string_file(p, value, WRITE_STRING_FILE_VERIFY_ON_FAILURE | 0);
}
int sysctl_read(const char *property, char **content) {
diff --git a/src/sleep/sleep.c b/src/sleep/sleep.c diff --git a/src/sleep/sleep.c b/src/sleep/sleep.c
index fbfddc0262fc..7cc2902154e9 100644 index 262d4cea66..0523e8dc9b 100644
--- a/src/sleep/sleep.c --- a/src/sleep/sleep.c
+++ b/src/sleep/sleep.c +++ b/src/sleep/sleep.c
@@ -47,7 +47,7 @@ static int write_hibernate_location_info(const HibernateLocation *hibernate_loca @@ -48,7 +48,7 @@ static int write_hibernate_location_info(const HibernateLocation *hibernate_loca
assert(hibernate_location->swap); assert(hibernate_location->swap);
xsprintf(resume_str, "%u:%u", major(hibernate_location->devno), minor(hibernate_location->devno)); xsprintf(resume_str, "%u:%u", major(hibernate_location->devno), minor(hibernate_location->devno));
@ -343,7 +341,7 @@ index fbfddc0262fc..7cc2902154e9 100644
if (r < 0) if (r < 0)
return log_debug_errno(r, "Failed to write partition device to /sys/power/resume for '%s': '%s': %m", return log_debug_errno(r, "Failed to write partition device to /sys/power/resume for '%s': '%s': %m",
hibernate_location->swap->device, resume_str); hibernate_location->swap->device, resume_str);
@@ -74,7 +74,7 @@ static int write_hibernate_location_info(const HibernateLocation *hibernate_loca @@ -75,7 +75,7 @@ static int write_hibernate_location_info(const HibernateLocation *hibernate_loca
} }
xsprintf(offset_str, "%" PRIu64, hibernate_location->offset); xsprintf(offset_str, "%" PRIu64, hibernate_location->offset);
@ -352,7 +350,7 @@ index fbfddc0262fc..7cc2902154e9 100644
if (r < 0) if (r < 0)
return log_debug_errno(r, "Failed to write swap file offset to /sys/power/resume_offset for '%s': '%s': %m", return log_debug_errno(r, "Failed to write swap file offset to /sys/power/resume_offset for '%s': '%s': %m",
hibernate_location->swap->device, offset_str); hibernate_location->swap->device, offset_str);
@@ -91,7 +91,7 @@ static int write_mode(char **modes) { @@ -92,7 +92,7 @@ static int write_mode(char **modes) {
STRV_FOREACH(mode, modes) { STRV_FOREACH(mode, modes) {
int k; int k;
@ -361,7 +359,7 @@ index fbfddc0262fc..7cc2902154e9 100644
if (k >= 0) if (k >= 0)
return 0; return 0;
@@ -110,7 +110,7 @@ static int write_state(FILE **f, char **states) { @@ -114,7 +114,7 @@ static int write_state(FILE **f, char **states) {
STRV_FOREACH(state, states) { STRV_FOREACH(state, states) {
int k; int k;
@ -370,34 +368,8 @@ index fbfddc0262fc..7cc2902154e9 100644
if (k >= 0) if (k >= 0)
return 0; return 0;
log_debug_errno(k, "Failed to write '%s' to /sys/power/state: %m", *state); log_debug_errno(k, "Failed to write '%s' to /sys/power/state: %m", *state);
diff --git a/src/udev/udevadm-trigger.c b/src/udev/udevadm-trigger.c
index 60c68b5029cf..fdca03d3d42c 100644
--- a/src/udev/udevadm-trigger.c
+++ b/src/udev/udevadm-trigger.c
@@ -43,7 +43,7 @@ static int exec_list(sd_device_enumerator *e, const char *action, Set *settle_se
if (!filename)
return log_oom();
- r = write_string_file(filename, action, WRITE_STRING_FILE_DISABLE_BUFFER);
+ r = write_string_file(filename, action, 0);
if (r < 0) {
bool ignore = IN_SET(r, -ENOENT, -EACCES, -ENODEV, -EROFS);
diff --git a/src/udev/udevd.c b/src/udev/udevd.c
index ca65474f2763..38780681431a 100644
--- a/src/udev/udevd.c
+++ b/src/udev/udevd.c
@@ -1089,7 +1089,7 @@ static int synthesize_change_one(sd_device *dev, const char *syspath) {
filename = strjoina(syspath, "/uevent");
log_device_debug(dev, "device is closed, synthesising 'change' on %s", syspath);
- r = write_string_file(filename, "change", WRITE_STRING_FILE_DISABLE_BUFFER);
+ r = write_string_file(filename, "change", 0);
if (r < 0)
return log_device_debug_errno(dev, r, "Failed to write 'change' to %s: %m", filename);
return 0;
diff --git a/src/vconsole/vconsole-setup.c b/src/vconsole/vconsole-setup.c diff --git a/src/vconsole/vconsole-setup.c b/src/vconsole/vconsole-setup.c
index 9d706085fb47..30dcfa86f4d0 100644 index d1c3febdd5..1cc68694d1 100644
--- a/src/vconsole/vconsole-setup.c --- a/src/vconsole/vconsole-setup.c
+++ b/src/vconsole/vconsole-setup.c +++ b/src/vconsole/vconsole-setup.c
@@ -116,7 +116,7 @@ static int toggle_utf8_vc(const char *name, int fd, bool utf8) { @@ -116,7 +116,7 @@ static int toggle_utf8_vc(const char *name, int fd, bool utf8) {

View File

@ -1,4 +1,4 @@
From dbe8b3ee45580defeefcac929b897c5437ffc50b Mon Sep 17 00:00:00 2001 From d73755cc60f401f0f20f357752e45aeeeef8e83f Mon Sep 17 00:00:00 2001
From: Scott Murray <scott.murray@konsulko.com> From: Scott Murray <scott.murray@konsulko.com>
Date: Fri, 13 Sep 2019 19:26:27 -0400 Date: Fri, 13 Sep 2019 19:26:27 -0400
Subject: [PATCH] Handle __cpu_mask usage Subject: [PATCH] Handle __cpu_mask usage
@ -25,7 +25,7 @@ Signed-off-by: Scott Murray <scott.murray@konsulko.com>
2 files changed, 3 insertions(+), 1 deletion(-) 2 files changed, 3 insertions(+), 1 deletion(-)
diff --git a/src/shared/cpu-set-util.h b/src/shared/cpu-set-util.h diff --git a/src/shared/cpu-set-util.h b/src/shared/cpu-set-util.h
index 27812dfd5923..0ab40731ea93 100644 index 3c63a58826..4c2d4347fc 100644
--- a/src/shared/cpu-set-util.h --- a/src/shared/cpu-set-util.h
+++ b/src/shared/cpu-set-util.h +++ b/src/shared/cpu-set-util.h
@@ -6,6 +6,8 @@ @@ -6,6 +6,8 @@
@ -38,11 +38,11 @@ index 27812dfd5923..0ab40731ea93 100644
typedef struct CPUSet { typedef struct CPUSet {
cpu_set_t *set; cpu_set_t *set;
diff --git a/src/test/test-sizeof.c b/src/test/test-sizeof.c diff --git a/src/test/test-sizeof.c b/src/test/test-sizeof.c
index c65062d2562c..8b6eefa9cdae 100644 index e1a59d408c..c269ea6e8c 100644
--- a/src/test/test-sizeof.c --- a/src/test/test-sizeof.c
+++ b/src/test/test-sizeof.c +++ b/src/test/test-sizeof.c
@@ -1,6 +1,5 @@ @@ -1,6 +1,5 @@
/* SPDX-License-Identifier: LGPL-2.1+ */ /* SPDX-License-Identifier: LGPL-2.1-or-later */
-#include <sched.h> -#include <sched.h>
#include <stdio.h> #include <stdio.h>

View File

@ -1,4 +1,4 @@
From ef9580ea1e2f1e57af3c7dcb0ec392ba8dbb5c8d Mon Sep 17 00:00:00 2001 From 04e94f9a15101daa8f65a9af269d26cda2a24056 Mon Sep 17 00:00:00 2001
From: Alex Kiernan <alex.kiernan@gmail.com> From: Alex Kiernan <alex.kiernan@gmail.com>
Date: Tue, 10 Mar 2020 11:05:20 +0000 Date: Tue, 10 Mar 2020 11:05:20 +0000
Subject: [PATCH] Handle missing gshadow Subject: [PATCH] Handle missing gshadow
@ -8,17 +8,20 @@ allow compilation on musl
Upstream-Status: Inappropriate [musl specific] Upstream-Status: Inappropriate [musl specific]
Signed-off-by: Alex Kiernan <alex.kiernan@gmail.com> Signed-off-by: Alex Kiernan <alex.kiernan@gmail.com>
[Rebased for v247]
Signed-off-by: Luca Boccassi <luca.boccassi@microsoft.com>
--- ---
src/shared/group-record-nss.c | 20 ++++++++++++++++++++ src/shared/user-record-nss.c | 20 ++++++++++++++++++++
src/shared/group-record-nss.h | 4 ++++ src/shared/user-record-nss.h | 4 ++++
src/shared/userdb.c | 6 ++++++ src/shared/userdb.c | 6 ++++++
3 files changed, 30 insertions(+) 3 files changed, 30 insertions(+)
diff --git a/src/shared/group-record-nss.c b/src/shared/group-record-nss.c diff --git a/src/shared/user-record-nss.c b/src/shared/user-record-nss.c
index 77924f1c4067..c64490253ff3 100644 index 88b8fc2f8f..a819d41bac 100644
--- a/src/shared/group-record-nss.c --- a/src/shared/user-record-nss.c
+++ b/src/shared/group-record-nss.c +++ b/src/shared/user-record-nss.c
@@ -19,8 +19,10 @@ int nss_group_to_group_record( @@ -331,8 +331,10 @@ int nss_group_to_group_record(
if (isempty(grp->gr_name)) if (isempty(grp->gr_name))
return -EINVAL; return -EINVAL;
@ -29,23 +32,23 @@ index 77924f1c4067..c64490253ff3 100644
g = group_record_new(); g = group_record_new();
if (!g) if (!g)
@@ -36,6 +38,7 @@ int nss_group_to_group_record( @@ -348,6 +350,7 @@ int nss_group_to_group_record(
g->gid = grp->gr_gid; g->gid = grp->gr_gid;
+#if ENABLE_GSHADOW +#if ENABLE_GSHADOW
if (sgrp) { if (sgrp) {
if (hashed_password_valid(sgrp->sg_passwd)) { if (looks_like_hashed_password(utf8_only(sgrp->sg_passwd))) {
g->hashed_password = strv_new(sgrp->sg_passwd); g->hashed_password = strv_new(sgrp->sg_passwd);
@@ -51,6 +54,7 @@ int nss_group_to_group_record( @@ -363,6 +366,7 @@ int nss_group_to_group_record(
if (!g->administrators) if (r < 0)
return -ENOMEM; return r;
} }
+#endif +#endif
r = json_build(&g->json, JSON_BUILD_OBJECT( r = json_build(&g->json, JSON_BUILD_OBJECT(
JSON_BUILD_PAIR("groupName", JSON_BUILD_STRING(g->group_name)), JSON_BUILD_PAIR("groupName", JSON_BUILD_STRING(g->group_name)),
@@ -76,6 +80,7 @@ int nss_sgrp_for_group(const struct group *grp, struct sgrp *ret_sgrp, char **re @@ -388,6 +392,7 @@ int nss_sgrp_for_group(const struct group *grp, struct sgrp *ret_sgrp, char **re
assert(ret_sgrp); assert(ret_sgrp);
assert(ret_buffer); assert(ret_buffer);
@ -53,7 +56,7 @@ index 77924f1c4067..c64490253ff3 100644
for (;;) { for (;;) {
_cleanup_free_ char *buf = NULL; _cleanup_free_ char *buf = NULL;
struct sgrp sgrp, *result; struct sgrp sgrp, *result;
@@ -104,6 +109,9 @@ int nss_sgrp_for_group(const struct group *grp, struct sgrp *ret_sgrp, char **re @@ -416,6 +421,9 @@ int nss_sgrp_for_group(const struct group *grp, struct sgrp *ret_sgrp, char **re
buflen *= 2; buflen *= 2;
buf = mfree(buf); buf = mfree(buf);
} }
@ -62,67 +65,67 @@ index 77924f1c4067..c64490253ff3 100644
+#endif +#endif
} }
int nss_group_record_by_name(const char *name, GroupRecord **ret) { int nss_group_record_by_name(
@@ -111,7 +119,9 @@ int nss_group_record_by_name(const char *name, GroupRecord **ret) { @@ -427,7 +435,9 @@ int nss_group_record_by_name(
struct group grp, *result; struct group grp, *result;
bool incomplete = false; bool incomplete = false;
size_t buflen = 4096; size_t buflen = 4096;
+#if ENABLE_GSHADOW +#if ENABLE_GSHADOW
struct sgrp sgrp; struct sgrp sgrp, *sresult = NULL;
+#endif +#endif
int r; int r;
assert(name); assert(name);
@@ -141,6 +151,7 @@ int nss_group_record_by_name(const char *name, GroupRecord **ret) { @@ -457,6 +467,7 @@ int nss_group_record_by_name(
buf = mfree(buf); buf = mfree(buf);
} }
+#if ENABLE_GSHADOW +#if ENABLE_GSHADOW
r = nss_sgrp_for_group(result, &sgrp, &sbuf); if (with_shadow) {
if (r < 0) { r = nss_sgrp_for_group(result, &sgrp, &sbuf);
log_debug_errno(r, "Failed to do shadow lookup for group %s, ignoring: %m", result->gr_name); if (r < 0) {
@@ -148,6 +159,9 @@ int nss_group_record_by_name(const char *name, GroupRecord **ret) { @@ -468,6 +479,9 @@ int nss_group_record_by_name(
} incomplete = true;
r = nss_group_to_group_record(result, r >= 0 ? &sgrp : NULL, ret); r = nss_group_to_group_record(result, sresult, ret);
+#else +#else
+ r = nss_group_to_group_record(result, NULL, ret); + r = nss_group_to_group_record(result, NULL, ret);
+#endif +#endif
if (r < 0) if (r < 0)
return r; return r;
@@ -160,7 +174,9 @@ int nss_group_record_by_gid(gid_t gid, GroupRecord **ret) { @@ -484,7 +498,9 @@ int nss_group_record_by_gid(
struct group grp, *result; struct group grp, *result;
bool incomplete = false; bool incomplete = false;
size_t buflen = 4096; size_t buflen = 4096;
+#if ENABLE_GSHADOW +#if ENABLE_GSHADOW
struct sgrp sgrp; struct sgrp sgrp, *sresult = NULL;
+#endif +#endif
int r; int r;
assert(ret); assert(ret);
@@ -188,6 +204,7 @@ int nss_group_record_by_gid(gid_t gid, GroupRecord **ret) { @@ -512,6 +528,7 @@ int nss_group_record_by_gid(
buf = mfree(buf); buf = mfree(buf);
} }
+#if ENABLE_GSHADOW +#if ENABLE_GSHADOW
r = nss_sgrp_for_group(result, &sgrp, &sbuf); if (with_shadow) {
if (r < 0) { r = nss_sgrp_for_group(result, &sgrp, &sbuf);
log_debug_errno(r, "Failed to do shadow lookup for group %s, ignoring: %m", result->gr_name); if (r < 0) {
@@ -195,6 +212,9 @@ int nss_group_record_by_gid(gid_t gid, GroupRecord **ret) { @@ -523,6 +540,9 @@ int nss_group_record_by_gid(
} incomplete = true;
r = nss_group_to_group_record(result, r >= 0 ? &sgrp : NULL, ret); r = nss_group_to_group_record(result, sresult, ret);
+#else +#else
+ r = nss_group_to_group_record(result, NULL, ret); + r = nss_group_to_group_record(result, NULL, ret);
+#endif +#endif
if (r < 0) if (r < 0)
return r; return r;
diff --git a/src/shared/group-record-nss.h b/src/shared/group-record-nss.h diff --git a/src/shared/user-record-nss.h b/src/shared/user-record-nss.h
index 38b2995178ff..d7d95c44cf11 100644 index 22ab04d6ee..4e52e7a911 100644
--- a/src/shared/group-record-nss.h --- a/src/shared/user-record-nss.h
+++ b/src/shared/group-record-nss.h +++ b/src/shared/user-record-nss.h
@@ -2,7 +2,11 @@ @@ -2,7 +2,11 @@
#pragma once #pragma once
@ -132,14 +135,14 @@ index 38b2995178ff..d7d95c44cf11 100644
+#else +#else
+struct sgrp; +struct sgrp;
+#endif +#endif
#include <pwd.h>
#include "group-record.h" #include <shadow.h>
diff --git a/src/shared/userdb.c b/src/shared/userdb.c diff --git a/src/shared/userdb.c b/src/shared/userdb.c
index 92f8796768d7..5d912862f85c 100644 index 613350bd46..5c821d28cd 100644
--- a/src/shared/userdb.c --- a/src/shared/userdb.c
+++ b/src/shared/userdb.c +++ b/src/shared/userdb.c
@@ -924,13 +924,16 @@ int groupdb_iterator_get(UserDBIterator *iterator, GroupRecord **ret) { @@ -938,13 +938,16 @@ int groupdb_iterator_get(UserDBIterator *iterator, GroupRecord **ret) {
if (gr) { if (gr) {
_cleanup_free_ char *buffer = NULL; _cleanup_free_ char *buffer = NULL;
bool incomplete = false; bool incomplete = false;
@ -153,10 +156,10 @@ index 92f8796768d7..5d912862f85c 100644
iterator->synthesize_nobody = false; iterator->synthesize_nobody = false;
+#if ENABLE_GSHADOW +#if ENABLE_GSHADOW
r = nss_sgrp_for_group(gr, &sgrp, &buffer); if (!FLAGS_SET(iterator->flags, USERDB_AVOID_SHADOW)) {
if (r < 0) { r = nss_sgrp_for_group(gr, &sgrp, &buffer);
log_debug_errno(r, "Failed to acquire shadow entry for group %s, ignoring: %m", gr->gr_name); if (r < 0) {
@@ -938,6 +941,9 @@ int groupdb_iterator_get(UserDBIterator *iterator, GroupRecord **ret) { @@ -957,6 +960,9 @@ int groupdb_iterator_get(UserDBIterator *iterator, GroupRecord **ret) {
} }
r = nss_group_to_group_record(gr, r >= 0 ? &sgrp : NULL, ret); r = nss_group_to_group_record(gr, r >= 0 ? &sgrp : NULL, ret);
@ -166,6 +169,3 @@ index 92f8796768d7..5d912862f85c 100644
if (r < 0) if (r < 0)
return r; return r;
--
2.17.1

View File

@ -0,0 +1,34 @@
From 366cd28f5f93ba7c861cd32a718251770d74830e Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Mon, 12 Apr 2021 23:44:53 -0700
Subject: [PATCH] missing_syscall.h: Define MIPS ABI defines for musl
musl does not define _MIPS_SIM_ABI32, _MIPS_SIM_NABI32, _MIPS_SIM_ABI64
unlike glibc where these are provided by libc headers, therefore define
them here in case they are undefined
Upstream-Status: Pending
Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
src/basic/missing_syscall.h | 6 ++++++
1 file changed, 6 insertions(+)
diff --git a/src/basic/missing_syscall.h b/src/basic/missing_syscall.h
index 1384324804..0202d00372 100644
--- a/src/basic/missing_syscall.h
+++ b/src/basic/missing_syscall.h
@@ -20,6 +20,12 @@
#include <asm/sgidefs.h>
#endif
+#ifndef _MIPS_SIM_ABI32
+#define _MIPS_SIM_ABI32 1
+#define _MIPS_SIM_NABI32 2
+#define _MIPS_SIM_ABI64 3
+#endif
+
#include "missing_keyctl.h"
#include "missing_stat.h"
#include "missing_syscall_def.h"

View File

@ -1,4 +1,4 @@
# Copyright 2011-2020 Gentoo Authors # Copyright 2011-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2 # Distributed under the terms of the GNU General Public License v2
EAPI=7 EAPI=7
@ -16,26 +16,27 @@ else
MY_P=${MY_PN}-${MY_PV} MY_P=${MY_PN}-${MY_PV}
S=${WORKDIR}/${MY_P} S=${WORKDIR}/${MY_P}
SRC_URI="https://github.com/systemd/${MY_PN}/archive/v${MY_PV}/${MY_P}.tar.gz" SRC_URI="https://github.com/systemd/${MY_PN}/archive/v${MY_PV}/${MY_P}.tar.gz"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sparc ~x86" KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~mips ppc ppc64 ~riscv sparc x86"
fi fi
PYTHON_COMPAT=( python3_{6,7,8} ) PYTHON_COMPAT=( python3_{7..10} )
inherit bash-completion-r1 linux-info meson multilib-minimal ninja-utils pam python-any-r1 systemd toolchain-funcs udev usr-ldscript inherit bash-completion-r1 linux-info meson-multilib pam python-any-r1 systemd toolchain-funcs udev usr-ldscript
DESCRIPTION="System and service manager for Linux" DESCRIPTION="System and service manager for Linux"
HOMEPAGE="https://www.freedesktop.org/wiki/Software/systemd" HOMEPAGE="https://www.freedesktop.org/wiki/Software/systemd"
LICENSE="GPL-2 LGPL-2.1 MIT public-domain" LICENSE="GPL-2 LGPL-2.1 MIT public-domain"
SLOT="0/2" SLOT="0/2"
IUSE="acl apparmor audit build cgroup-hybrid cryptsetup curl dns-over-tls elibc_musl elfutils +gcrypt gnuefi homed http +hwdb idn importd +kmod +lz4 lzma nat pam pcre pkcs11 policykit pwquality qrcode repart +resolvconf +seccomp selinux smack split-usr static-libs +sysv-utils test vanilla xkb" IUSE="acl apparmor audit build cgroup-hybrid cryptsetup curl dns-over-tls elfutils elibc_glibc elibc_musl +gcrypt gnuefi homed http +hwdb idn importd +kmod +lz4 lzma nat pam pcre pkcs11 policykit pwquality qrcode repart +resolvconf +seccomp selinux split-usr static-libs +sysv-utils test tpm vanilla xkb +zstd"
REQUIRED_USE=" REQUIRED_USE="
elibc_musl homed? ( cryptsetup pam )
homed? ( cryptsetup )
importd? ( curl gcrypt lzma ) importd? ( curl gcrypt lzma )
pwquality? ( homed )
" "
RESTRICT="!test? ( test )" RESTRICT="!test? ( test )
elibc_musl? ( homed )"
MINKV="3.11" MINKV="3.11"
@ -49,7 +50,6 @@ COMMON_DEPEND=">=sys-apps/util-linux-2.30:0=[${MULTILIB_USEDEP}]
cryptsetup? ( >=sys-fs/cryptsetup-2.0.1:0= ) cryptsetup? ( >=sys-fs/cryptsetup-2.0.1:0= )
curl? ( net-misc/curl:0= ) curl? ( net-misc/curl:0= )
dns-over-tls? ( >=net-libs/gnutls-3.6.0:0= ) dns-over-tls? ( >=net-libs/gnutls-3.6.0:0= )
elibc_musl? ( sys-libs/musl )
elfutils? ( >=dev-libs/elfutils-0.158:0= ) elfutils? ( >=dev-libs/elfutils-0.158:0= )
gcrypt? ( >=dev-libs/libgcrypt-1.4.5:0=[${MULTILIB_USEDEP}] ) gcrypt? ( >=dev-libs/libgcrypt-1.4.5:0=[${MULTILIB_USEDEP}] )
homed? ( ${OPENSSL_DEP} ) homed? ( ${OPENSSL_DEP} )
@ -74,7 +74,10 @@ COMMON_DEPEND=">=sys-apps/util-linux-2.30:0=[${MULTILIB_USEDEP}]
repart? ( ${OPENSSL_DEP} ) repart? ( ${OPENSSL_DEP} )
seccomp? ( >=sys-libs/libseccomp-2.3.3:0= ) seccomp? ( >=sys-libs/libseccomp-2.3.3:0= )
selinux? ( sys-libs/libselinux:0= ) selinux? ( sys-libs/libselinux:0= )
xkb? ( >=x11-libs/libxkbcommon-0.4.1:0= )" tpm? ( app-crypt/tpm2-tss:0= )
xkb? ( >=x11-libs/libxkbcommon-0.4.1:0= )
zstd? ( >=app-arch/zstd-1.4.0:0=[${MULTILIB_USEDEP}] )
"
# Newer linux-headers needed by ia64, bug #480218 # Newer linux-headers needed by ia64, bug #480218
DEPEND="${COMMON_DEPEND} DEPEND="${COMMON_DEPEND}
@ -84,29 +87,38 @@ DEPEND="${COMMON_DEPEND}
# baselayout-2.2 has /run # baselayout-2.2 has /run
RDEPEND="${COMMON_DEPEND} RDEPEND="${COMMON_DEPEND}
acct-group/adm >=acct-group/adm-0-r1
acct-group/wheel >=acct-group/wheel-0-r1
acct-group/kmem >=acct-group/kmem-0-r1
acct-group/tty >=acct-group/tty-0-r1
acct-group/utmp >=acct-group/utmp-0-r1
acct-group/audio >=acct-group/audio-0-r1
acct-group/cdrom >=acct-group/cdrom-0-r1
acct-group/dialout >=acct-group/dialout-0-r1
acct-group/disk >=acct-group/disk-0-r1
acct-group/input >=acct-group/input-0-r1
acct-group/kvm >=acct-group/kvm-0-r1
acct-group/render >=acct-group/lp-0-r1
acct-group/tape >=acct-group/render-0-r1
acct-group/video acct-group/sgx
acct-group/systemd-journal >=acct-group/tape-0-r1
acct-user/systemd-journal-remote acct-group/users
acct-user/systemd-coredump >=acct-group/video-0-r1
acct-user/systemd-network >=acct-group/systemd-journal-0-r1
acct-user/systemd-resolve >=acct-user/root-0-r1
acct-user/systemd-timesync acct-user/nobody
>=acct-user/systemd-journal-remote-0-r1
>=acct-user/systemd-coredump-0-r1
>=acct-user/systemd-network-0-r1
acct-user/systemd-oom
>=acct-user/systemd-resolve-0-r1
>=acct-user/systemd-timesync-0-r1
>=sys-apps/baselayout-2.2 >=sys-apps/baselayout-2.2
selinux? ( sec-policy/selinux-base-policy[systemd] ) selinux? ( sec-policy/selinux-base-policy[systemd] )
sysv-utils? ( !sys-apps/sysvinit ) sysv-utils? (
!sys-apps/openrc[sysv-utils(-)]
!sys-apps/sysvinit
)
!sysv-utils? ( sys-apps/sysvinit ) !sysv-utils? ( sys-apps/sysvinit )
resolvconf? ( !net-dns/openresolv ) resolvconf? ( !net-dns/openresolv )
!build? ( || ( !build? ( || (
@ -122,7 +134,7 @@ RDEPEND="${COMMON_DEPEND}
# sys-apps/dbus: the daemon only (+ build-time lib dep for tests) # sys-apps/dbus: the daemon only (+ build-time lib dep for tests)
PDEPEND=">=sys-apps/dbus-1.9.8[systemd] PDEPEND=">=sys-apps/dbus-1.9.8[systemd]
hwdb? ( >=sys-apps/hwids-20150417[udev] ) hwdb? ( >=sys-apps/hwids-20150417[udev] )
>=sys-fs/udev-init-scripts-25 >=sys-fs/udev-init-scripts-34
policykit? ( sys-auth/polkit ) policykit? ( sys-auth/polkit )
!vanilla? ( sys-apps/gentoo-systemd-integration )" !vanilla? ( sys-apps/gentoo-systemd-integration )"
@ -156,7 +168,7 @@ pkg_pretend() {
local CONFIG_CHECK="~AUTOFS4_FS ~BLK_DEV_BSG ~CGROUPS local CONFIG_CHECK="~AUTOFS4_FS ~BLK_DEV_BSG ~CGROUPS
~CHECKPOINT_RESTORE ~DEVTMPFS ~EPOLL ~FANOTIFY ~FHANDLE ~CHECKPOINT_RESTORE ~DEVTMPFS ~EPOLL ~FANOTIFY ~FHANDLE
~INOTIFY_USER ~IPV6 ~NET ~NET_NS ~PROC_FS ~SIGNALFD ~SYSFS ~INOTIFY_USER ~IPV6 ~NET ~NET_NS ~PROC_FS ~SIGNALFD ~SYSFS
~TIMERFD ~TMPFS_XATTR ~UNIX ~TIMERFD ~TMPFS_XATTR ~UNIX ~USER_NS
~CRYPTO_HMAC ~CRYPTO_SHA256 ~CRYPTO_USER_API_HASH ~CRYPTO_HMAC ~CRYPTO_SHA256 ~CRYPTO_USER_API_HASH
~!GRKERNSEC_PROC ~!IDE ~!SYSFS_DEPRECATED ~!GRKERNSEC_PROC ~!IDE ~!SYSFS_DEPRECATED
~!SYSFS_DEPRECATED_V2" ~!SYSFS_DEPRECATED_V2"
@ -205,40 +217,43 @@ src_prepare() {
PATCHES+=( PATCHES+=(
) )
if use elibc_musl; then
PATCHES+=(
"${FILESDIR}"/musl/0002-don-t-use-glibc-specific-qsort_r.patch
"${FILESDIR}"/musl/0003-implment-systemd-sysv-install-for-OE.patch
"${FILESDIR}"/musl/0003-missing_type.h-add-__compare_fn_t-and-comparison_fn_.patch
"${FILESDIR}"/musl/0004-add-fallback-parse_printf_format-implementation.patch
"${FILESDIR}"/musl/0005-src-basic-missing.h-check-for-missing-strndupa.patch
"${FILESDIR}"/musl/0006-Include-netinet-if_ether.h.patch
"${FILESDIR}"/musl/0007-don-t-fail-if-GLOB_BRACE-and-GLOB_ALTDIRFUNC-is-not-.patch
"${FILESDIR}"/musl/0008-add-missing-FTW_-macros-for-musl.patch
"${FILESDIR}"/musl/0009-fix-missing-of-__register_atfork-for-non-glibc-build.patch
"${FILESDIR}"/musl/0010-Use-uintmax_t-for-handling-rlim_t.patch
"${FILESDIR}"/musl/0011-test-sizeof.c-Disable-tests-for-missing-typedefs-in-.patch
"${FILESDIR}"/musl/0012-don-t-pass-AT_SYMLINK_NOFOLLOW-flag-to-faccessat.patch
"${FILESDIR}"/musl/0013-Define-glibc-compatible-basename-for-non-glibc-syste.patch
"${FILESDIR}"/musl/0014-Do-not-disable-buffering-when-writing-to-oom_score_a.patch
"${FILESDIR}"/musl/0015-distinguish-XSI-compliant-strerror_r-from-GNU-specif.patch
"${FILESDIR}"/musl/0016-Hide-__start_BUS_ERROR_MAP-and-__stop_BUS_ERROR_MAP.patch
"${FILESDIR}"/musl/0017-missing_type.h-add-__compar_d_fn_t-definition.patch
"${FILESDIR}"/musl/0018-avoid-redefinition-of-prctl_mm_map-structure.patch
"${FILESDIR}"/musl/0019-Handle-missing-LOCK_EX.patch
"${FILESDIR}"/musl/0020-Fix-incompatible-pointer-type-struct-sockaddr_un.patch
"${FILESDIR}"/musl/0021-test-json.c-define-M_PIl.patch
"${FILESDIR}"/musl/0022-do-not-disable-buffer-in-writing-files.patch
"${FILESDIR}"/musl/0025-Handle-__cpu_mask-usage.patch
"${FILESDIR}"/musl/0026-Handle-missing-gshadow.patch
"${FILESDIR}"/musl/0028-missing_syscall.h-Define-MIPS-ABI-defines-for-musl.patch
)
fi
if ! use vanilla; then if ! use vanilla; then
PATCHES+=( PATCHES+=(
"${FILESDIR}/gentoo-Dont-enable-audit-by-default.patch" "${FILESDIR}/gentoo-generator-path-r2.patch"
"${FILESDIR}/gentoo-systemd-user-pam.patch" "${FILESDIR}/gentoo-systemctl-disable-sysv-sync-r1.patch"
"${FILESDIR}/gentoo-generator-path-r1.patch" "${FILESDIR}/gentoo-journald-audit.patch"
"${FILESDIR}/gentoo-systemctl-disable-sysv-sync.patch" "${FILESDIR}/gentoo-pam.patch"
# Musl libc related patches
${FILESDIR}/0001-Handle-missing-gshadow.patch
${FILESDIR}/0001-binfmt-Don-t-install-dependency-links-at-install-tim.patch
${FILESDIR}/0001-do-not-disable-buffer-in-writing-files.patch
${FILESDIR}/0002-don-t-use-glibc-specific-qsort_r.patch
${FILESDIR}/0002-src-login-brightness.c-include-sys-wait.h.patch
${FILESDIR}/0003-implment-systemd-sysv-install-for-OE.patch
${FILESDIR}/0003-missing_type.h-add-__compare_fn_t-and-comparison_fn_.patch
${FILESDIR}/0003-src-basic-copy.c-include-signal.h.patch
${FILESDIR}/0004-add-fallback-parse_printf_format-implementation.patch
${FILESDIR}/0004-src-shared-cpu-set-util.h-add-__cpu_mask-definition.patch
${FILESDIR}/0005-src-basic-missing.h-check-for-missing-strndupa.patch
${FILESDIR}/0006-Include-netinet-if_ether.h.patch
${FILESDIR}/0007-don-t-fail-if-GLOB_BRACE-and-GLOB_ALTDIRFUNC-is-not.patch
${FILESDIR}/0008-add-missing-FTW_-macros-for-musl.patch
${FILESDIR}/0010-fix-missing-of-__register_atfork-for-non-glibc-build.patch
${FILESDIR}/0011-Use-uintmax_t-for-handling-rlim_t.patch
${FILESDIR}/0012-mallinfo-musl.patch
${FILESDIR}/0014-test-sizeof.c-Disable-tests-for-missing-typedefs-in-.patch
${FILESDIR}/0015-don-t-pass-AT_SYMLINK_NOFOLLOW-flag-to-faccessat.patch
${FILESDIR}/0016-Define-glibc-compatible-basename-for-non-glibc-syste.patch
${FILESDIR}/0017-Do-not-disable-buffering-when-writing-to-oom_score_a.patch
${FILESDIR}/0018-distinguish-XSI-compliant-strerror_r-from-GNU-specif.patch
${FILESDIR}/0019-Hide-__start_BUS_ERROR_MAP-and-__stop_BUS_ERROR_MAP.patch
${FILESDIR}/0020-missing_type.h-add-__compar_d_fn_t-definition.patch
${FILESDIR}/0021-avoid-redefinition-of-prctl_mm_map-structure.patch
${FILESDIR}/0024-test-json.c-define-M_PIl.patch
${FILESDIR}/CVE-2020-13776.patch
) )
fi fi
@ -254,26 +269,6 @@ src_configure() {
multilib-minimal_src_configure multilib-minimal_src_configure
} }
meson_use() {
usex "$1" true false
}
meson_multilib() {
if multilib_is_native_abi; then
echo true
else
echo false
fi
}
meson_multilib_native_use() {
if multilib_is_native_abi && use "$1"; then
echo true
else
echo false
fi
}
multilib_src_configure() { multilib_src_configure() {
local myconf=( local myconf=(
--localstatedir="${EPREFIX}/var" --localstatedir="${EPREFIX}/var"
@ -282,7 +277,7 @@ multilib_src_configure() {
# avoid bash-completion dep # avoid bash-completion dep
-Dbashcompletiondir="$(get_bashcompdir)" -Dbashcompletiondir="$(get_bashcompdir)"
# make sure we get /bin:/sbin in PATH # make sure we get /bin:/sbin in PATH
-Dsplit-usr=$(usex split-usr true false) $(meson_use split-usr)
-Dsplit-bin=true -Dsplit-bin=true
-Drootprefix="$(usex split-usr "${EPREFIX:-/}" "${EPREFIX}/usr")" -Drootprefix="$(usex split-usr "${EPREFIX:-/}" "${EPREFIX}/usr")"
-Drootlibdir="${EPREFIX}/usr/$(get_libdir)" -Drootlibdir="${EPREFIX}/usr/$(get_libdir)"
@ -292,93 +287,90 @@ multilib_src_configure() {
-Dima=true -Dima=true
-Ddefault-hierarchy=$(usex cgroup-hybrid hybrid unified) -Ddefault-hierarchy=$(usex cgroup-hybrid hybrid unified)
# Optional components/dependencies # Optional components/dependencies
-Dacl=$(meson_multilib_native_use acl) $(meson_native_use_bool acl)
-Dapparmor=$(meson_multilib_native_use apparmor) $(meson_native_use_bool apparmor)
-Daudit=$(meson_multilib_native_use audit) $(meson_native_use_bool audit)
-Dlibcryptsetup=$(meson_multilib_native_use cryptsetup) $(meson_native_use_bool cryptsetup libcryptsetup)
-Dlibcurl=$(meson_multilib_native_use curl) $(meson_native_use_bool curl libcurl)
-Ddns-over-tls=$(meson_multilib_native_use dns-over-tls) $(meson_native_use_bool dns-over-tls dns-over-tls)
-Delfutils=$(meson_multilib_native_use elfutils) $(meson_native_use_bool elfutils)
-Dgcrypt=$(meson_use gcrypt) $(meson_use gcrypt)
-Dgnu-efi=$(meson_multilib_native_use gnuefi) $(meson_native_use_bool gnuefi gnu-efi)
-Defi-includedir="${ESYSROOT}/usr/include/efi"
-Defi-ld="$(tc-getLD)"
-Defi-libdir="${ESYSROOT}/usr/$(get_libdir)" -Defi-libdir="${ESYSROOT}/usr/$(get_libdir)"
-Dhomed=$(meson_multilib_native_use homed) $(meson_native_use_bool homed)
-Dhwdb=$(meson_multilib_native_use hwdb) $(meson_native_use_bool hwdb)
-Dmicrohttpd=$(meson_multilib_native_use http) $(meson_native_use_bool http microhttpd)
-Didn=$(meson_multilib_native_use idn) $(meson_native_use_bool idn)
-Dimportd=$(meson_multilib_native_use importd) $(meson_native_use_bool importd)
-Dbzip2=$(meson_multilib_native_use importd) $(meson_native_use_bool importd bzip2)
-Dzlib=$(meson_multilib_native_use importd) $(meson_native_use_bool importd zlib)
-Dkmod=$(meson_multilib_native_use kmod) $(meson_native_use_bool kmod)
-Dlz4=$(meson_use lz4) $(meson_use lz4)
-Dxz=$(meson_use lzma) $(meson_use lzma xz)
-Dlibiptc=$(meson_multilib_native_use nat) $(meson_use zstd)
-Dpam=$(meson_use pam) $(meson_native_use_bool nat libiptc)
-Dp11kit=$(meson_multilib_native_use pkcs11) $(meson_use pam)
-Dpcre2=$(meson_multilib_native_use pcre) $(meson_native_use_bool pkcs11 p11kit)
-Dpolkit=$(meson_multilib_native_use policykit) $(meson_native_use_bool pcre pcre2)
-Dpwquality=$(meson_multilib_native_use pwquality) $(meson_native_use_bool policykit polkit)
-Dqrencode=$(meson_multilib_native_use qrcode) $(meson_native_use_bool pwquality)
-Drepart=$(meson_multilib_native_use repart) $(meson_native_use_bool qrcode qrencode)
-Dseccomp=$(meson_multilib_native_use seccomp) $(meson_native_use_bool repart)
-Dselinux=$(meson_multilib_native_use selinux) $(meson_native_use_bool seccomp)
-Dsmack=$(meson_multilib_native_use smack) $(meson_native_use_bool selinux)
-Ddbus=$(meson_multilib_native_use test) $(meson_native_use_bool tpm tpm2)
-Dxkbcommon=$(meson_multilib_native_use xkb) $(meson_native_use_bool test dbus)
$(meson_native_use_bool xkb xkbcommon)
-Dntp-servers="0.gentoo.pool.ntp.org 1.gentoo.pool.ntp.org 2.gentoo.pool.ntp.org 3.gentoo.pool.ntp.org" -Dntp-servers="0.gentoo.pool.ntp.org 1.gentoo.pool.ntp.org 2.gentoo.pool.ntp.org 3.gentoo.pool.ntp.org"
# Breaks screen, tmux, etc. # Breaks screen, tmux, etc.
-Ddefault-kill-user-processes=false -Ddefault-kill-user-processes=false
-Dcreate-log-dirs=false -Dcreate-log-dirs=false
# Musl related settings
-Dgshadow=false
-Dlocaled=false
-Dnss-myhostname=false
-Dnss-systemd=false
-Dnss-mymachines=false
-Dnss-resolve=false
-Dsysusers=false
-Duserdb=false
-Dutmp=false
# multilib options # multilib options
-Dbacklight=$(meson_multilib) $(meson_native_true backlight)
-Dbinfmt=$(meson_multilib) $(meson_native_true binfmt)
-Dcoredump=$(meson_multilib) $(meson_native_true coredump)
-Denvironment-d=$(meson_multilib) $(meson_native_true environment-d)
-Dfirstboot=$(meson_multilib) $(meson_native_true firstboot)
-Dhibernate=$(meson_multilib) $(meson_native_true hibernate)
-Dhostnamed=$(meson_multilib) $(meson_native_true hostnamed)
-Dldconfig=$(meson_multilib) $(meson_native_true ldconfig)
-Dman=$(meson_multilib) $(meson_native_true man)
-Dnetworkd=$(meson_multilib) $(meson_native_true networkd)
-Dquotacheck=$(meson_multilib) $(meson_native_true quotacheck)
-Drandomseed=$(meson_multilib) $(meson_native_true randomseed)
-Drfkill=$(meson_multilib) $(meson_native_true rfkill)
-Dtimedated=$(meson_multilib) $(meson_native_true timedated)
-Dtimesyncd=$(meson_multilib) $(meson_native_true timesyncd)
-Dtmpfiles=$(meson_multilib) $(meson_native_true tmpfiles)
-Dvconsole=$(meson_multilib) $(meson_native_true vconsole)
# static-libs # static-libs
-Dstatic-libsystemd=$(usex static-libs true false) $(meson_use static-libs static-libsystemd)
-Dstatic-libudev=$(usex static-libs true false) $(meson_use static-libs static-libudev)
# Musl related settings
$(meson_native_use_bool elibc_glibc localed)
$(meson_native_use_bool elibc_glibc sysusers)
$(meson_native_use_bool elibc_glibc gshadow)
$(meson_native_use_bool elibc_glibc utmp)
$(meson_native_use_bool elibc_glibc userdb)
$(meson_native_use_bool elibc_glibc nss-myhostname)
$(meson_native_use_bool elibc_glibc nss-mymachines)
$(meson_native_use_bool elibc_glibc nss-systemd)
$(meson_native_use_bool elibc_glibc nss-resolve)
) )
meson_src_configure "${myconf[@]}" meson_src_configure "${myconf[@]}"
} }
multilib_src_compile() {
eninja
}
multilib_src_test() { multilib_src_test() {
unset DBUS_SESSION_BUS_ADDRESS XDG_RUNTIME_DIR unset DBUS_SESSION_BUS_ADDRESS XDG_RUNTIME_DIR
meson_src_test meson_src_test
} }
multilib_src_install() {
DESTDIR="${D}" eninja install
}
multilib_src_install_all() { multilib_src_install_all() {
local rootprefix=$(usex split-usr '' /usr) local rootprefix=$(usex split-usr '' /usr)
@ -405,6 +397,9 @@ multilib_src_install_all() {
rmdir "${ED}${rootprefix}"/sbin || die rmdir "${ED}${rootprefix}"/sbin || die
fi fi
# https://bugs.gentoo.org/761763
rm -r "${ED}"/usr/lib/sysusers.d || die
# Preserve empty dirs in /etc & /var, bug #437008 # Preserve empty dirs in /etc & /var, bug #437008
keepdir /etc/{binfmt.d,modules-load.d,tmpfiles.d} keepdir /etc/{binfmt.d,modules-load.d,tmpfiles.d}
keepdir /etc/kernel/install.d keepdir /etc/kernel/install.d