From 9c0a2358763d5637ca11fe0d263ff4c9fca70a9e Mon Sep 17 00:00:00 2001 From: V3n3RiX Date: Sat, 21 Jul 2018 19:10:49 +0100 Subject: gentoo resync : 21.07.2018 --- sys-auth/Manifest.gz | Bin 11068 -> 11069 bytes sys-auth/pam_passwdqc/Manifest | 1 - .../files/pam_passwdqc-1.0.4-makefile.patch | 44 ------- sys-auth/pam_u2f/Manifest | 2 + sys-auth/pam_u2f/pam_u2f-1.0.7.ebuild | 35 ++++++ sys-auth/polkit/Manifest | 2 + sys-auth/polkit/polkit-0.115.ebuild | 135 +++++++++++++++++++++ sys-auth/sssd/Manifest | 2 +- sys-auth/sssd/metadata.xml | 4 +- 9 files changed, 177 insertions(+), 48 deletions(-) delete mode 100644 sys-auth/pam_passwdqc/files/pam_passwdqc-1.0.4-makefile.patch create mode 100644 sys-auth/pam_u2f/pam_u2f-1.0.7.ebuild create mode 100644 sys-auth/polkit/polkit-0.115.ebuild (limited to 'sys-auth') diff --git a/sys-auth/Manifest.gz b/sys-auth/Manifest.gz index c201ae299da4..04105aaeac72 100644 Binary files a/sys-auth/Manifest.gz and b/sys-auth/Manifest.gz differ diff --git a/sys-auth/pam_passwdqc/Manifest b/sys-auth/pam_passwdqc/Manifest index 2846da5a24e7..b9424955e3fb 100644 --- a/sys-auth/pam_passwdqc/Manifest +++ b/sys-auth/pam_passwdqc/Manifest @@ -1,4 +1,3 @@ -AUX pam_passwdqc-1.0.4-makefile.patch 1505 BLAKE2B 1ab775c7017dc76330b756d0fcf2c7cdd507747e63e583551cbc022931f9a258cd8fe656335b2b42e0e0d588f5f1e230b875fd36cb3c767bf4a614b4d394916e SHA512 59139e2c9bec335cc036d7b375e691ef545ac9ee3553582b9447c931c0cd65920b6d0106e5ff37030ebe5d50ca826fe7a3995d312890ce9ba0e00714cc747e5b AUX pam_passwdqc-1.0.5-makefile.patch 1245 BLAKE2B b0bca31fa21a9d05093093d04a045288c33a8f75fb366a09b54f64e438dfb83599ba064a56c4aa3d0833699dc8874c3ace562476b9eb938add899da39b4364b8 SHA512 d4c5ca882f17b51ababc62a863653f70603763de99a0b8db9129d319100dbe4055b3ad7a9dbdcc6f3bca0be06521a7b5ef20856ef8e5b954097040a91b850d35 DIST pam_passwdqc-1.0.5.tar.gz 29973 BLAKE2B e2edce3fa63994afc1f1fe65709ad241662c81113b67f6d17e1c5b36d6ea48be1d7f2cde77766fe2b92da2c22546a71122b95dc70b193edacfbdfd219f56ca6c SHA512 8ae6cb4cc520b06b05fadf60ac360964721a8a1e4481aff9cd7247c203e62b58d3aed4c14ba687b303de820689e0f5cdcf070fd396b7e13b0aae4cc5d1442235 EBUILD pam_passwdqc-1.0.5.ebuild 1116 BLAKE2B 8573b6b3952427ca521cd5918ab682a06c4e934a4187f4b713464dde567540cc8e2528b31bfd7daa3789f01f0c9c56449e63d0bbe10c0a8665337c70b4ebf62f SHA512 815777da6628e6652b82c99d04c11340f51ce81fa960c9b59352e19afa67bc38e5136c4dc00ee7d186a8096534782a262127975db741fd33c9d079d6026e5dbd diff --git a/sys-auth/pam_passwdqc/files/pam_passwdqc-1.0.4-makefile.patch b/sys-auth/pam_passwdqc/files/pam_passwdqc-1.0.4-makefile.patch deleted file mode 100644 index 13f8bd435ddf..000000000000 --- a/sys-auth/pam_passwdqc/files/pam_passwdqc-1.0.4-makefile.patch +++ /dev/null @@ -1,44 +0,0 @@ -Index: pam_passwdqc-1.0.4/Makefile -=================================================================== ---- pam_passwdqc-1.0.4.orig/Makefile -+++ pam_passwdqc-1.0.4/Makefile -@@ -7,11 +7,11 @@ LD = $(CC) - RM = rm -f - MKDIR = mkdir -p - INSTALL = install -c --CFLAGS = -Wall -fPIC -O2 --LDFLAGS = -s --shared --LDFLAGS_LINUX = -s --shared -Wl,--version-script,$(MAP) --LDFLAGS_SUN = -s -G --LDFLAGS_HP = -s -b -+CFLAGS = -Wall -fPIC $(OPTCFLAGS) -+LDFLAGS_GENERIC = --shared -+LDFLAGS_LINUX = --shared -Wl,--version-script,$(MAP) -+LDFLAGS_SUN = -G -+LDFLAGS_HP = -b - LDLIBS = -lpam -lcrypt - LDLIBS_LINUX = -lpam -lcrypt - LDLIBS_SUN = -lpam -lcrypt -@@ -41,18 +41,18 @@ MAP = pam_passwdqc.map - all: - if [ "`uname -s`" = "Linux" ]; then \ - $(MAKE) CFLAGS="$(CFLAGS) -DHAVE_SHADOW" \ -- LDFLAGS="$(LDFLAGS_LINUX)" LDLIBS="$(LDLIBS_LINUX)" \ -+ LDFLAGS="$(LDFLAGS) $(LDFLAGS_LINUX)" LDLIBS="$(LDLIBS_LINUX)" \ - $(PROJ); \ - elif [ "`uname -s`" = "SunOS" ]; then \ - $(MAKE) CFLAGS="$(CFLAGS) -DHAVE_SHADOW" \ -- LD=ld LDFLAGS="$(LDFLAGS_SUN)" LDLIBS="$(LDLIBS_SUN)" \ -+ LD=ld LDFLAGS="$(LDFLAGS) $(LDFLAGS_SUN)" LDLIBS="$(LDLIBS_SUN)" \ - $(PROJ); \ - elif [ "`uname -s`" = "HP-UX" ]; then \ - $(MAKE) CFLAGS="$(CFLAGS) -DHAVE_SHADOW" \ -- LD=ld LDFLAGS="$(LDFLAGS_HP)" LDLIBS="$(LDLIBS_HP)" \ -+ LD=ld LDFLAGS="$(LDFLAGS) $(LDFLAGS_HP)" LDLIBS="$(LDLIBS_HP)" \ - $(PROJ); \ - else \ -- $(MAKE) $(PROJ); \ -+ $(MAKE) LDFLAGS="$(LDFLAGS) $(LDFLAGS_GENERIC)" $(PROJ); \ - fi - - $(LIBSHARED): $(OBJS) $(MAP) diff --git a/sys-auth/pam_u2f/Manifest b/sys-auth/pam_u2f/Manifest index d3db0dc68e0f..ae6cf7c57a47 100644 --- a/sys-auth/pam_u2f/Manifest +++ b/sys-auth/pam_u2f/Manifest @@ -1,6 +1,8 @@ AUX pam_u2f-1.0.2-fix-Makefile.patch 324 BLAKE2B bc32459e011106e0f8516afe8e1afaa288e1bb53190b350467a12b9c6bbfaee9beb885bd78f1f1c3665b5f6907c1d7d99fb70d8d476b2dc3fe1fad2cba52f940 SHA512 eddf3c607e953b952ba91acb7d7bb1b8a43d6b70da86faece994011eb3eac43476c6ad9721be0a76805688dc9f9bab02ee5e13f58ce556bb68b8d574135ca44d DIST pam_u2f-1.0.4.tar.gz 349114 BLAKE2B 50811fe8b0076ff36af030e080593161a1f676f05d5eb970a50ea7092bac5bfe1832370d12b730be8422f7f42677ff950d5b3e932a6087a1698a4acba267c9d5 SHA512 324d1a1172eae567372f95971d9ee6bb237b47758b89c083f3cfb11275c4b0c22c4cf02a51380451f88d372dd6aaa415bdb671a43a7444062fbf8f50b658f087 DIST pam_u2f-1.0.6.tar.gz 375181 BLAKE2B eac1457cbfd7951fd617ea0cff4220d6e5fe6f3e33cbc960024a28a1ca09f376fced27afa8e5a23dc5bab1881c226497c41fea7041dd891a36e1be7ba18c09f3 SHA512 e169d3d251a132213c04570099164aee0cdcea4bca233432f13af47b2cc5e420e14b3fb6dcde20cb8f77f9ed677459bd641aa3f9c1da65c88cd7490e26ab25e3 +DIST pam_u2f-1.0.7.tar.gz 378513 BLAKE2B a5b48e7ed36052a517941bc4af2c88a9d66e0a911620832a9c6256b294b1fe291860f2d481db32ab9fdf6a4deebb8dd0c31de97ac52ff2411d707679d7a997d1 SHA512 5b8fe116782684e5da395a4923b4c300b0d4b6d9e297c8de5cc4ca2ed633fda30cdbc4ae6bbb8a582faf8068dbed13048a2b2f742ebe9eea208fbb7a407caf0a EBUILD pam_u2f-1.0.4-r1.ebuild 723 BLAKE2B 281e48b2a7dea48ccdcda12467859ac4d210f2d906034b0dfde7bb6bf35cf1602bbea3fe5b07de8c0b42586379b65e65d1272346aac7259d36e03e08ec6004ab SHA512 7e2e2f36f1983a9976e07b22b06f996f8ee476d00b120a7c958e833b1af55527a0f5490a4ab2836a9dae1cde4e63e1f37df4452d0ebdd8cdf585c74b8e720ec9 EBUILD pam_u2f-1.0.6.ebuild 725 BLAKE2B 327461714876908d6c89f7007404510645092a3ec501c68bba967690a945fc895c0f30f99592ba94d744d948f307291438bab4d297935066180ffd216db238c1 SHA512 05ef485b7007c6c742043cb9a58b1c90fc87b3a3a0dcfcaebaf5fec6305e4e51a39b42bf85c287d560ff3116757ec34be883b32beb92363379f62720cf9a13c9 +EBUILD pam_u2f-1.0.7.ebuild 725 BLAKE2B 327461714876908d6c89f7007404510645092a3ec501c68bba967690a945fc895c0f30f99592ba94d744d948f307291438bab4d297935066180ffd216db238c1 SHA512 05ef485b7007c6c742043cb9a58b1c90fc87b3a3a0dcfcaebaf5fec6305e4e51a39b42bf85c287d560ff3116757ec34be883b32beb92363379f62720cf9a13c9 MISC metadata.xml 714 BLAKE2B 8694b13d8ec22eb56c2bf5637f0ef83c5adf369025aeec8f4512a79914cc00e43620d6db1d95361199c7861a41afd2f1c215758e84584af7d6fdeb7d00619101 SHA512 a59a8b6a51c50c63495eecf712d3a5c9f60b0a94d78a6d2a12d789eb334d77bc80b00de3c2368cbc3cc684c359085af71153f09d0ce5f9cf4f74be77fdc09277 diff --git a/sys-auth/pam_u2f/pam_u2f-1.0.7.ebuild b/sys-auth/pam_u2f/pam_u2f-1.0.7.ebuild new file mode 100644 index 000000000000..c90ab12d94dd --- /dev/null +++ b/sys-auth/pam_u2f/pam_u2f-1.0.7.ebuild @@ -0,0 +1,35 @@ +# Copyright 1999-2018 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 + +inherit autotools flag-o-matic pam + +DESCRIPTION="Library for authenticating against PAM with a Yubikey" +HOMEPAGE="https://github.com/Yubico/pam-u2f" +SRC_URI="https://developers.yubico.com/${PN/_/-}/Releases/${P}.tar.gz" + +LICENSE="BSD" +SLOT="0" +KEYWORDS="~amd64 ~x86" +IUSE="debug" + +RDEPEND=" + app-crypt/libu2f-host + app-crypt/libu2f-server:= + virtual/pam" + +DEPEND="${RDEPEND} + virtual/pkgconfig" + +PATCHES=( "${FILESDIR}/${PN}-1.0.2-fix-Makefile.patch" ) + +src_prepare() { + default + use debug || append-cppflags -UDEBUG_PAM -UPAM_DEBUG + eautoreconf +} + +src_configure() { + econf --with-pam-dir=$(getpam_mod_dir) +} diff --git a/sys-auth/polkit/Manifest b/sys-auth/polkit/Manifest index 5691ed79ecaa..4a74e776baea 100644 --- a/sys-auth/polkit/Manifest +++ b/sys-auth/polkit/Manifest @@ -1,6 +1,8 @@ AUX polkit-0.113-elogind.patch 6149 BLAKE2B 5e99eab21887f4504e07bd1fe803f8534aad227ec0ec8fcacf207ee5179a3ca6a670c1c3cf1f52e932096f27d39a911ca95c11adf1461833b4d3d4dda410973d SHA512 9a3e928d77c023c3f895f7fec7893f0355729808c4ee3bcd5419a7e408b613faefcff6d43f87cdab94b3fa15b7eaddc9ce40cf9b7b0954624360489c4d2c3b52 DIST polkit-0.113.tar.gz 1448865 BLAKE2B 93cb6abf03d0de193e9f64b953bee40faf3bd07cf6f86beb4f84edd740dedc0bcf7a1ffd6b3a1a816e5adad0ee59536dacae3d991add4c4965cc6a98566b7470 SHA512 ab177c89a20eeb2978ddbe28afb205d3619f9c5defe833eb68a85e71a0f2c905367f1295cbbfb85da5eafdd661bce474d5d84aca9195cd425a18c9b4170eb5f9 DIST polkit-0.114.tar.gz 1557340 BLAKE2B 4ba50f5c44342b9420e7a7e9fc07b94338613816530000f42d6e45b941c7b6bd39260ea23c86b24b22684be3fd0be968976415dd3d11fe5ba9269d8c70d33870 SHA512 49cdf9dd3663714b1c6569ad8740cb413d9c5bd5c11e4bdbba3ce82b744f36638b652547edff9203caab9287834bc68a1d6a4895ec7a188fa1524dc1e9c9b4ea +DIST polkit-0.115.tar.gz 1550932 BLAKE2B 3185ebed46209f88a9ffccbbcaf1bf180d1ae6d5ec53cf3c66d867ad43910b47a1123a3db190991ebb382a0d28fc5a119ea4bab942db324e9af5663056cf6ee1 SHA512 1153011fa93145b2c184e6b3446d3ca21b38918641aeccd8fac3985ac3e30ec6bc75be6973985fde90f2a24236592f1595be259155061c2d33358dd17c4ee4fc EBUILD polkit-0.113-r4.ebuild 3453 BLAKE2B 742c7a63b760831043cd0fc2ba51b2923a61619561fd715ba77be978fa597030bf25c90b87cd3944007e2f1342fca0b485a3fa806cd8f6337d115820d65d4691 SHA512 9b36a31705cf5c1e84a1004dbd6938d44cb2103e1b71e67f6c12d4f828cafb2622e894409e22323b42d1c1fcfa5e1b51b334886458267b363c5f7dd27643bb55 EBUILD polkit-0.114.ebuild 3396 BLAKE2B 2493cfa26fd4b9fd4c5d24367bb71086be9b0495e5875e948cc66a1928ccee5e4a1676780ca69682eb9d47c6c5cb480c310a6c80b964d0044f54908fe1918f4f SHA512 9330cf67327427a293e3a424238f819aa428a213701b424b68d4616c3f535b6733747574f783b5f5eb134be6ff6107da02394f905cc77b2668dd81852e8f6bbf +EBUILD polkit-0.115.ebuild 3396 BLAKE2B 2493cfa26fd4b9fd4c5d24367bb71086be9b0495e5875e948cc66a1928ccee5e4a1676780ca69682eb9d47c6c5cb480c310a6c80b964d0044f54908fe1918f4f SHA512 9330cf67327427a293e3a424238f819aa428a213701b424b68d4616c3f535b6733747574f783b5f5eb134be6ff6107da02394f905cc77b2668dd81852e8f6bbf MISC metadata.xml 493 BLAKE2B bbf2a4e83d0882480d0f2ba8b18ef439b234bd82538546d04753d63fa828f6b111afb78846c1a03f4aa93f89e6fd0a6a828c7908574a740c9c6880252a84e98d SHA512 9c7b199d1a3b1193beb4d01e52d5e90d81821aa6df6785482da7ee37c0ca777c12095f160bc997c77d0089429c2e338cf75d0a46836416736178cd661ffa80f5 diff --git a/sys-auth/polkit/polkit-0.115.ebuild b/sys-auth/polkit/polkit-0.115.ebuild new file mode 100644 index 000000000000..3e161e209a86 --- /dev/null +++ b/sys-auth/polkit/polkit-0.115.ebuild @@ -0,0 +1,135 @@ +# Copyright 1999-2018 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 + +inherit autotools pam pax-utils systemd user xdg-utils + +DESCRIPTION="Policy framework for controlling privileges for system-wide services" +HOMEPAGE="https://www.freedesktop.org/wiki/Software/polkit" +SRC_URI="https://www.freedesktop.org/software/${PN}/releases/${P}.tar.gz" + +LICENSE="LGPL-2" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86" +IUSE="elogind examples gtk +introspection jit kde nls pam selinux systemd test" + +REQUIRED_USE="?? ( elogind systemd )" + +CDEPEND=" + dev-lang/spidermonkey:52[-debug] + dev-libs/glib:2 + dev-libs/expat + elogind? ( sys-auth/elogind ) + introspection? ( dev-libs/gobject-introspection ) + pam? ( + sys-auth/pambase + virtual/pam + ) + systemd? ( sys-apps/systemd:0= ) +" +DEPEND="${CDEPEND} + app-text/docbook-xml-dtd:4.1.2 + app-text/docbook-xsl-stylesheets + dev-libs/gobject-introspection-common + dev-libs/libxslt + dev-util/gtk-doc-am + dev-util/intltool + sys-devel/gettext + virtual/pkgconfig +" +RDEPEND="${CDEPEND} + selinux? ( sec-policy/selinux-policykit ) +" +PDEPEND=" + gtk? ( || ( + >=gnome-extra/polkit-gnome-0.105 + >=lxde-base/lxsession-0.5.2 + ) ) + kde? ( kde-plasma/polkit-kde-agent ) + !systemd? ( !elogind? ( sys-auth/consolekit[policykit] ) ) +" + +DOCS=( docs/TODO HACKING NEWS README ) + +QA_MULTILIB_PATHS=" + usr/lib/polkit-1/polkit-agent-helper-1 + usr/lib/polkit-1/polkitd" + +pkg_setup() { + local u=polkitd + local g=polkitd + local h=/var/lib/polkit-1 + + enewgroup ${g} + enewuser ${u} -1 -1 ${h} ${g} + esethome ${u} ${h} +} + +src_prepare() { + default + + sed -i -e 's|unix-group:wheel|unix-user:0|' src/polkitbackend/*-default.rules || die #401513 + + # Workaround upstream hack around standard gtk-doc behavior, bug #552170 + sed -i -e 's/@ENABLE_GTK_DOC_TRUE@\(TARGET_DIR\)/\1/' \ + -e '/install-data-local:/,/uninstall-local:/ s/@ENABLE_GTK_DOC_TRUE@//' \ + -e 's/@ENABLE_GTK_DOC_FALSE@install-data-local://' \ + docs/polkit/Makefile.in || die + + # disable broken test - bug #624022 + sed -i -e "/^SUBDIRS/s/polkitbackend//" test/Makefile.am || die + + # Fix cross-building, bug #590764, elogind patch, bug #598615 + eautoreconf +} + +src_configure() { + xdg_environment_reset + + local myeconfargs=( + --localstatedir="${EPREFIX}"/var + --disable-static + --enable-man-pages + --disable-gtk-doc + --disable-examples + $(use_enable elogind libelogind) + $(use_enable introspection) + $(use_enable nls) + $(usex pam "--with-pam-module-dir=$(getpam_mod_dir)" '') + --with-authfw=$(usex pam pam shadow) + $(use_enable systemd libsystemd-login) + --with-systemdsystemunitdir="$(systemd_get_systemunitdir)" + $(use_enable test) + --with-os-type=gentoo + ) + econf "${myeconfargs[@]}" +} + +src_compile() { + default + + # Required for polkitd on hardened/PaX due to spidermonkey's JIT + pax-mark mr src/polkitbackend/.libs/polkitd test/polkitbackend/.libs/polkitbackendjsauthoritytest +} + +src_install() { + default + + fowners -R polkitd:root /{etc,usr/share}/polkit-1/rules.d + + diropts -m0700 -o polkitd -g polkitd + keepdir /var/lib/polkit-1 + + if use examples; then + insinto /usr/share/doc/${PF}/examples + doins src/examples/{*.c,*.policy*} + fi + + find "${ED}" -name '*.la' -delete || die +} + +pkg_postinst() { + chown -R polkitd:root "${EROOT}"/{etc,usr/share}/polkit-1/rules.d + chown -R polkitd:polkitd "${EROOT}"/var/lib/polkit-1 +} diff --git a/sys-auth/sssd/Manifest b/sys-auth/sssd/Manifest index d2b813b0d882..651973bdd6f9 100644 --- a/sys-auth/sssd/Manifest +++ b/sys-auth/sssd/Manifest @@ -12,4 +12,4 @@ EBUILD sssd-1.12.4.ebuild 5102 BLAKE2B c57797462eda4e3034338b4d78102461ae61d8450 EBUILD sssd-1.12.5.ebuild 5102 BLAKE2B c57797462eda4e3034338b4d78102461ae61d8450527c422b39e5ede688352e52a0fb5ad89b7f8922f0f0a0755f921c45948845be8dd147e5c7386df30569c24 SHA512 a029a5dbe2d3abbcfd78a7db9f6b72af0e5babf6e6b1527692506d555352d8c55df8f8fbb4274da82666092c2aff0277acd6aaa8486166f93916b3fe68a7ee29 EBUILD sssd-1.13.0.ebuild 5309 BLAKE2B 567973eb37e027d812f0845bc988f5acbff6697a9374b49e85d0a0b026409c943283f4271c64c029aabac42d2f100ed894c83bc53de897e88833cddd6e9169b5 SHA512 2a210cb0f2958f7f826ad2c278f384e7f8b214c32884b3fad4820462c8448869c20a415f9ccb0e9b5111bfa660266d5fef5ed02513f1ba5b4d00769e17215d13 EBUILD sssd-1.13.1.ebuild 5265 BLAKE2B 8cbd20cd3203c822d9b89cfbc8baec94399b382c397408fe97612b80371048d769e983831f93dd07fa460a4ac9ac4ee099daec494c4438245d45565552edbd25 SHA512 0a14ed0251b1f1323f07d1281119ea146d54e2bd6fb9b9105a53bf9d3669ec94f596277bd14af7c48029bae3c7b24c38fd80f944f49de37152f6fd725c793224 -MISC metadata.xml 1050 BLAKE2B 135e3db561c592ca9890ef708f4f65d84750919a10d4753d187f5424a253e3a87fdb35e193a6e51c9345557143165bfbc03f94e2b3926baecfabf3e21f60846d SHA512 2b0c374a6a9b5414824db87b2110f65ac029ab61b40246bd60a637a0ed460f46a0a81fba92029c855ce12ce965f92ac45199e8f0285ae7b2fdd3e94c14827b6c +MISC metadata.xml 1045 BLAKE2B ca2f031380d06dc5c9ebce3c63476b622c3cc0f716fd4dd2603e3f7bf01654f06886b50a00b6250ba3161995513d9bca0489333391dfe376992a229717b91c58 SHA512 4bbf8db0eb4ad42d4868cf64421afe33cd5e7d8e2edfc2606cbc6fa892d80a073198cafc657a0873d3cd7ce3ff8b0e23bad6f4a9d64d50253a4ed9354d9014a7 diff --git a/sys-auth/sssd/metadata.xml b/sys-auth/sssd/metadata.xml index aece62d44f65..45e95a76f6c3 100644 --- a/sys-auth/sssd/metadata.xml +++ b/sys-auth/sssd/metadata.xml @@ -2,8 +2,8 @@ - hwoarang@gentoo.org - Markos Chandras + zlogene@gentoo.org + Mikle Kolyada Build and use the cifsidmap plugin -- cgit v1.2.3