policycoreutils_2.3-1_amd64.deb


Advertisement

Description

policycoreutils - SELinux core policy utilities

Property Value
Distribution Ubuntu 16.04 LTS (Xenial Xerus)
Repository Ubuntu Universe amd64
Package name policycoreutils
Package version 2.3
Package release 1
Package architecture amd64
Package type deb
Installed size 5.47 KB
Download size 638.37 KB
Official Mirror archive.ubuntu.com
Security-enhanced Linux is a patch of the Linux® kernel and a number
of utilities with enhanced security functionality designed to add
mandatory access controls to Linux.  The Security-enhanced Linux
kernel contains new architectural components originally developed to
improve the security of the Flask operating system. These
architectural components provide general support for the enforcement
of many kinds of mandatory access control policies, including those
based on the concepts of Type Enforcement®, Role-based Access Control,
and Multi-level Security.
This package contains the core policy utilities that are required
for basic operation of an SELinux system.  These utilities include
load_policy to load policies, setfiles to label filesystems, newrole
to switch roles, run_init to run /etc/init.d scripts in the proper
context, and restorecond to restore contexts of files that often get the
wrong context.
It also includes the mcstransd to map a maching readable sensitivity label to
a human readable form.  The sensitivity label is comprised of a sensitivity
level (always s0 for MCS and anything from s0 to s15 for MLS) and a set of
categories.  A ranged sensitivity label will have a low level and a high level
where the high level will dominate the low level.  Categories are numbered
from c0 to c1023.  Names such as s0 and c1023 and not easily readable by
humans, so mcstransd translated them to human readable labels such as
SystemLow and SystemHigh.

Alternatives

Package Version Architecture Repository
policycoreutils_2.3-1_i386.deb 2.3 i386 Ubuntu Universe
policycoreutils - - -

Requires

Name Value
init-system-helpers >= 1.18~
libaudit1 >= 1:2.2.1
libc6 >= 2.15
libcap2 >= 2.10
libdbus-1-3 >= 1.0.2
libdbus-glib-1-2 >= 0.78
libglib2.0-0 >= 2.12.0
libpam0g >= 0.99.7.1
libpcre3 -
libselinux1 >= 2.1.9
libsemanage1 >= 2.1.6
libsepol1 >= 2.0.25
lsb-base >= 3.2-13
psmisc -
python << 2.8
python >= 2.7
python-ipy -
python-selinux >= 2.3
python-semanage >= 2.3
python-sepolgen >= 1.2.1
python-sepolicy = 2.3-1
python-setools >= 3.3.7-2
selinux-utils -

Provides

Name Value
mcstrans -

Conflicts

Name Value
mcstrans -

Replaces

Name Value
mcstrans -

Download

Type URL
Binary Package policycoreutils_2.3-1_amd64.deb
Source Package policycoreutils

Install Howto

  1. Update the package index:
    # sudo apt-get update
  2. Install policycoreutils deb package:
    # sudo apt-get install policycoreutils

Files

Path
/etc/sestatus.conf
/etc/init.d/mcstrans
/etc/init.d/restorecond
/etc/pam.d/newrole
/etc/pam.d/run_init
/etc/selinux/restorecond.conf
/etc/selinux/restorecond_user.conf
/etc/xdg/autostart/restorecond.desktop
/lib/systemd/system/mcstrans.service
/lib/systemd/system/restorecond.service
/sbin/fixfiles
/sbin/load_policy
/sbin/mcstransd
/sbin/restorecon
/sbin/setfiles
/usr/bin/audit2allow
/usr/bin/audit2why
/usr/bin/chcat
/usr/bin/newrole
/usr/bin/secon
/usr/bin/semodule_deps
/usr/bin/semodule_expand
/usr/bin/semodule_link
/usr/bin/semodule_package
/usr/bin/semodule_unpackage
/usr/bin/sepolgen-ifgen
/usr/bin/sepolgen-ifgen-attr-helper
/usr/lib/python2.7/dist-packages/seobject.py
/usr/lib/tmpfiles.d/mcstrans.conf
/usr/sbin/genhomedircon
/usr/sbin/load_policy
/usr/sbin/open_init_pty
/usr/sbin/restorecond
/usr/sbin/run_init
/usr/sbin/se_apt-get
/usr/sbin/se_aptitude
/usr/sbin/se_dpkg
/usr/sbin/se_dpkg-reconfigure
/usr/sbin/se_dselect
/usr/sbin/se_synaptic
/usr/sbin/semanage
/usr/sbin/semodule
/usr/sbin/sestatus
/usr/sbin/setsebool
/usr/share/bash-completion/completions/getsebool
/usr/share/bash-completion/completions/semanage
/usr/share/bash-completion/completions/setsebool
/usr/share/dbus-1/services/org.selinux.Restorecond.service
/usr/share/doc/policycoreutils/NEWS.Debian.gz
/usr/share/doc/policycoreutils/changelog.Debian.gz
/usr/share/doc/policycoreutils/copyright
/usr/share/doc/policycoreutils/etc_selinux_config
/usr/share/doc/policycoreutils/mcstrans-examples/default/README
/usr/share/doc/policycoreutils/mcstrans-examples/default/default.test
/usr/share/doc/policycoreutils/mcstrans-examples/default/setrans.conf
/usr/share/doc/policycoreutils/mcstrans-examples/include/README
/usr/share/doc/policycoreutils/mcstrans-examples/include/default.test
/usr/share/doc/policycoreutils/mcstrans-examples/include/setrans.conf
/usr/share/doc/policycoreutils/mcstrans-examples/include/setrans.d/include-example
/usr/share/doc/policycoreutils/mcstrans-examples/nato/README
/usr/share/doc/policycoreutils/mcstrans-examples/nato/nato.test
/usr/share/doc/policycoreutils/mcstrans-examples/nato/setrans.conf
/usr/share/doc/policycoreutils/mcstrans-examples/nato/setrans.d/constraints.conf
/usr/share/doc/policycoreutils/mcstrans-examples/nato/setrans.d/eyes-only.conf.gz
/usr/share/doc/policycoreutils/mcstrans-examples/nato/setrans.d/rel.conf.gz
/usr/share/doc/policycoreutils/mcstrans-examples/non-mls-color/README
/usr/share/doc/policycoreutils/mcstrans-examples/non-mls-color/non-mls.color
/usr/share/doc/policycoreutils/mcstrans-examples/non-mls-color/secolor.conf
/usr/share/doc/policycoreutils/mcstrans-examples/pipes/pipes.test
/usr/share/doc/policycoreutils/mcstrans-examples/pipes/setrans.conf
/usr/share/doc/policycoreutils/mcstrans-examples/pipes/setrans.d/pipes.conf
/usr/share/doc/policycoreutils/mcstrans-examples/urcsts/README
/usr/share/doc/policycoreutils/mcstrans-examples/urcsts/secolor.conf
/usr/share/doc/policycoreutils/mcstrans-examples/urcsts/setrans.conf
/usr/share/doc/policycoreutils/mcstrans-examples/urcsts/urcsts.color
/usr/share/doc/policycoreutils/mcstrans-examples/urcsts/urcsts.test
/usr/share/doc/policycoreutils/mcstrans-examples/urcsts-via-include/README
/usr/share/doc/policycoreutils/mcstrans-examples/urcsts-via-include/secolor.conf
/usr/share/doc/policycoreutils/mcstrans-examples/urcsts-via-include/setrans.conf
/usr/share/doc/policycoreutils/mcstrans-examples/urcsts-via-include/urcsts.color
/usr/share/doc/policycoreutils/mcstrans-examples/urcsts-via-include/urcsts.test
/usr/share/doc/policycoreutils/mcstrans-examples/urcsts-via-include/setrans.d/c.conf
/usr/share/doc/policycoreutils/mcstrans-examples/urcsts-via-include/setrans.d/r.conf
/usr/share/doc/policycoreutils/mcstrans-examples/urcsts-via-include/setrans.d/s.conf
/usr/share/doc/policycoreutils/mcstrans-examples/urcsts-via-include/setrans.d/system.conf
/usr/share/doc/policycoreutils/mcstrans-examples/urcsts-via-include/setrans.d/ts.conf
/usr/share/doc/policycoreutils/mcstrans-examples/urcsts-via-include/setrans.d/u.conf
/usr/share/locale/af/LC_MESSAGES/policycoreutils.mo
/usr/share/locale/af_ZA/LC_MESSAGES/policycoreutils.mo
/usr/share/locale/aln/LC_MESSAGES/policycoreutils.mo
/usr/share/locale/am/LC_MESSAGES/policycoreutils.mo
/usr/share/locale/ar/LC_MESSAGES/policycoreutils.mo
/usr/share/locale/as/LC_MESSAGES/policycoreutils.mo
/usr/share/locale/ast/LC_MESSAGES/policycoreutils.mo
/usr/share/locale/az/LC_MESSAGES/policycoreutils.mo
/usr/share/locale/bal/LC_MESSAGES/policycoreutils.mo
/usr/share/locale/be/LC_MESSAGES/policycoreutils.mo
/usr/share/locale/bg/LC_MESSAGES/policycoreutils.mo
/usr/share/locale/bn/LC_MESSAGES/policycoreutils.mo
/usr/share/locale/bn_BD/LC_MESSAGES/policycoreutils.mo
/usr/share/locale/bn_IN/LC_MESSAGES/policycoreutils.mo
/usr/share/locale/bo/LC_MESSAGES/policycoreutils.mo
/usr/share/locale/br/LC_MESSAGES/policycoreutils.mo
/usr/share/locale/brx/LC_MESSAGES/policycoreutils.mo
/usr/share/locale/bs/LC_MESSAGES/policycoreutils.mo
/usr/share/locale/ca/LC_MESSAGES/policycoreutils.mo
/usr/share/locale/cs/LC_MESSAGES/policycoreutils.mo
/usr/share/locale/cs_CZ/LC_MESSAGES/policycoreutils.mo
/usr/share/locale/cy/LC_MESSAGES/policycoreutils.mo
/usr/share/locale/da/LC_MESSAGES/policycoreutils.mo
/usr/share/locale/de/LC_MESSAGES/policycoreutils.mo
/usr/share/locale/de_CH/LC_MESSAGES/policycoreutils.mo
/usr/share/locale/dz/LC_MESSAGES/policycoreutils.mo
/usr/share/locale/el/LC_MESSAGES/policycoreutils.mo
/usr/share/locale/en_GB/LC_MESSAGES/policycoreutils.mo
/usr/share/locale/en_US/LC_MESSAGES/policycoreutils.mo
/usr/share/locale/eo/LC_MESSAGES/policycoreutils.mo
/usr/share/locale/es/LC_MESSAGES/policycoreutils.mo
/usr/share/locale/es_ES/LC_MESSAGES/policycoreutils.mo
/usr/share/locale/es_MX/LC_MESSAGES/policycoreutils.mo
/usr/share/locale/et/LC_MESSAGES/policycoreutils.mo
/usr/share/locale/eu/LC_MESSAGES/policycoreutils.mo
/usr/share/locale/eu_ES/LC_MESSAGES/policycoreutils.mo
/usr/share/locale/fa/LC_MESSAGES/policycoreutils.mo
/usr/share/locale/fa_IR/LC_MESSAGES/policycoreutils.mo
/usr/share/locale/fi/LC_MESSAGES/policycoreutils.mo
/usr/share/locale/fr/LC_MESSAGES/policycoreutils.mo
/usr/share/locale/ga/LC_MESSAGES/policycoreutils.mo
/usr/share/locale/gl/LC_MESSAGES/policycoreutils.mo
/usr/share/locale/gu/LC_MESSAGES/policycoreutils.mo
/usr/share/locale/he/LC_MESSAGES/policycoreutils.mo
/usr/share/locale/hi/LC_MESSAGES/policycoreutils.mo
/usr/share/locale/hr/LC_MESSAGES/policycoreutils.mo
/usr/share/locale/hr_HR/LC_MESSAGES/policycoreutils.mo
/usr/share/locale/hu/LC_MESSAGES/policycoreutils.mo
/usr/share/locale/hy/LC_MESSAGES/policycoreutils.mo
/usr/share/locale/ia/LC_MESSAGES/policycoreutils.mo
/usr/share/locale/id/LC_MESSAGES/policycoreutils.mo
/usr/share/locale/ilo/LC_MESSAGES/policycoreutils.mo
/usr/share/locale/is/LC_MESSAGES/policycoreutils.mo
/usr/share/locale/it/LC_MESSAGES/policycoreutils.mo
/usr/share/locale/it_IT/LC_MESSAGES/policycoreutils.mo
/usr/share/locale/ja/LC_MESSAGES/policycoreutils.mo
/usr/share/locale/ja_JP/LC_MESSAGES/policycoreutils.mo
/usr/share/locale/ka/LC_MESSAGES/policycoreutils.mo
/usr/share/locale/kk/LC_MESSAGES/policycoreutils.mo
/usr/share/locale/km/LC_MESSAGES/policycoreutils.mo
/usr/share/locale/kn/LC_MESSAGES/policycoreutils.mo
/usr/share/locale/ko/LC_MESSAGES/policycoreutils.mo
/usr/share/locale/ks/LC_MESSAGES/policycoreutils.mo
/usr/share/locale/ku/LC_MESSAGES/policycoreutils.mo
/usr/share/locale/ky/LC_MESSAGES/policycoreutils.mo
/usr/share/locale/la/LC_MESSAGES/policycoreutils.mo
/usr/share/locale/lo/LC_MESSAGES/policycoreutils.mo
/usr/share/locale/lt/LC_MESSAGES/policycoreutils.mo
/usr/share/locale/lt_LT/LC_MESSAGES/policycoreutils.mo
/usr/share/locale/lv/LC_MESSAGES/policycoreutils.mo
/usr/share/locale/lv_LV/LC_MESSAGES/policycoreutils.mo
/usr/share/locale/mai/LC_MESSAGES/policycoreutils.mo
/usr/share/locale/mg/LC_MESSAGES/policycoreutils.mo
/usr/share/locale/mk/LC_MESSAGES/policycoreutils.mo
/usr/share/locale/ml/LC_MESSAGES/policycoreutils.mo
/usr/share/locale/mn/LC_MESSAGES/policycoreutils.mo
/usr/share/locale/mr/LC_MESSAGES/policycoreutils.mo
/usr/share/locale/ms/LC_MESSAGES/policycoreutils.mo
/usr/share/locale/ms_MY/LC_MESSAGES/policycoreutils.mo
/usr/share/locale/my/LC_MESSAGES/policycoreutils.mo
/usr/share/locale/nb/LC_MESSAGES/policycoreutils.mo
/usr/share/locale/nds/LC_MESSAGES/policycoreutils.mo
/usr/share/locale/ne/LC_MESSAGES/policycoreutils.mo
/usr/share/locale/nl/LC_MESSAGES/policycoreutils.mo
/usr/share/locale/nn/LC_MESSAGES/policycoreutils.mo
/usr/share/locale/no/LC_MESSAGES/policycoreutils.mo
/usr/share/locale/nso/LC_MESSAGES/policycoreutils.mo
/usr/share/locale/or/LC_MESSAGES/policycoreutils.mo
/usr/share/locale/pa/LC_MESSAGES/policycoreutils.mo
/usr/share/locale/pl/LC_MESSAGES/policycoreutils.mo
/usr/share/locale/pt/LC_MESSAGES/policycoreutils.mo
/usr/share/locale/pt_BR/LC_MESSAGES/policycoreutils.mo
/usr/share/locale/ro/LC_MESSAGES/policycoreutils.mo
/usr/share/locale/ru/LC_MESSAGES/policycoreutils.mo
/usr/share/locale/ru_RU/LC_MESSAGES/policycoreutils.mo
/usr/share/locale/si/LC_MESSAGES/policycoreutils.mo
/usr/share/locale/si_LK/LC_MESSAGES/policycoreutils.mo
/usr/share/locale/sk/LC_MESSAGES/policycoreutils.mo
/usr/share/locale/sl/LC_MESSAGES/policycoreutils.mo
/usr/share/locale/sq/LC_MESSAGES/policycoreutils.mo
/usr/share/locale/sr/LC_MESSAGES/policycoreutils.mo
/usr/share/locale/sr@latin/LC_MESSAGES/policycoreutils.mo
/usr/share/locale/sv/LC_MESSAGES/policycoreutils.mo
/usr/share/locale/ta/LC_MESSAGES/policycoreutils.mo
/usr/share/locale/ta_IN/LC_MESSAGES/policycoreutils.mo
/usr/share/locale/te/LC_MESSAGES/policycoreutils.mo
/usr/share/locale/tg/LC_MESSAGES/policycoreutils.mo
/usr/share/locale/th/LC_MESSAGES/policycoreutils.mo
/usr/share/locale/tl/LC_MESSAGES/policycoreutils.mo
/usr/share/locale/tr/LC_MESSAGES/policycoreutils.mo
/usr/share/locale/uk/LC_MESSAGES/policycoreutils.mo
/usr/share/locale/uk_UA/LC_MESSAGES/policycoreutils.mo
/usr/share/locale/ur/LC_MESSAGES/policycoreutils.mo
/usr/share/locale/vi/LC_MESSAGES/policycoreutils.mo
/usr/share/locale/vi_VN/LC_MESSAGES/policycoreutils.mo
/usr/share/locale/wo/LC_MESSAGES/policycoreutils.mo
/usr/share/locale/xh/LC_MESSAGES/policycoreutils.mo
/usr/share/locale/zh_CN.GB2312/LC_MESSAGES/policycoreutils.mo
/usr/share/locale/zh_CN/LC_MESSAGES/policycoreutils.mo
/usr/share/locale/zh_HK/LC_MESSAGES/policycoreutils.mo
/usr/share/locale/zh_TW.Big5/LC_MESSAGES/policycoreutils.mo
/usr/share/locale/zh_TW/LC_MESSAGES/policycoreutils.mo
/usr/share/locale/zu/LC_MESSAGES/policycoreutils.mo
/usr/share/man/man1/audit2allow.1.gz
/usr/share/man/man1/audit2why.1.gz
/usr/share/man/man1/newrole.1.gz
/usr/share/man/man1/secon.1.gz
/usr/share/man/man5/selinux_config.5.gz
/usr/share/man/man5/sestatus.conf.5.gz
/usr/share/man/man8/chcat.8.gz
/usr/share/man/man8/fixfiles.8.gz
/usr/share/man/man8/genhomedircon.8.gz
/usr/share/man/man8/load_policy.8.gz
/usr/share/man/man8/mcs.8.gz
/usr/share/man/man8/mcstransd.8.gz
/usr/share/man/man8/open_init_pty.8.gz
/usr/share/man/man8/restorecon.8.gz
/usr/share/man/man8/restorecond.8.gz
/usr/share/man/man8/run_init.8.gz
/usr/share/man/man8/se_apt-get.8.gz
/usr/share/man/man8/se_aptitude.8.gz
/usr/share/man/man8/se_dpkg-reconfigure.8.gz
/usr/share/man/man8/se_dpkg.8.gz
/usr/share/man/man8/se_dselect.8.gz
/usr/share/man/man8/se_synaptic.8.gz
/usr/share/man/man8/semanage-boolean.8.gz
/usr/share/man/man8/semanage-dontaudit.8.gz
/usr/share/man/man8/semanage-export.8.gz
/usr/share/man/man8/semanage-fcontext.8.gz
/usr/share/man/man8/semanage-import.8.gz
/usr/share/man/man8/semanage-interface.8.gz
/usr/share/man/man8/semanage-login.8.gz
/usr/share/man/man8/semanage-module.8.gz
/usr/share/man/man8/semanage-node.8.gz
/usr/share/man/man8/semanage-permissive.8.gz
/usr/share/man/man8/semanage-port.8.gz
/usr/share/man/man8/semanage-user.8.gz
/usr/share/man/man8/semanage.8.gz
/usr/share/man/man8/semodule.8.gz
/usr/share/man/man8/semodule_deps.8.gz
/usr/share/man/man8/semodule_expand.8.gz
/usr/share/man/man8/semodule_link.8.gz
/usr/share/man/man8/semodule_package.8.gz
/usr/share/man/man8/semodule_unpackage.8.gz
/usr/share/man/man8/sestatus.8.gz
/usr/share/man/man8/setfiles.8.gz
/usr/share/man/man8/setrans.conf.8.gz
/usr/share/man/man8/setsebool.8.gz

Changelog

2014-05-17 - Laurent Bigonville <bigon@debian.org>
policycoreutils (2.3-1) unstable; urgency=medium
* Team upload.
* New upstream release
- debian/control: Bump {build-}dependencies to match the new release
- Drop d/p/0025-restorecon-service.patch, d/p/0024-fix-manpages.patch,
applied upstream
- Drop debian/policycoreutils.mcstrans.service, merged upstream
- debian/policycoreutils.install: Install mcstrans.service from upstream
* Drop d/p/0002-Made-fixfiles-display-the-progress.patch: the -d flag is
already passed to restoreconf and setfiles and the patch is breaking the
verbose mode as -v and -p are mutually exclusive.
2013-12-29 - Laurent Bigonville <bigon@debian.org>
policycoreutils (2.2.5-1) unstable; urgency=medium
* Team upload.
* New upstream release
* debian/control: Bump Standards-Version to 3.9.5 (no further changes)
2013-12-02 - Laurent Bigonville <bigon@debian.org>
policycoreutils (2.2.4-1) unstable; urgency=low
* Team upload.
* New upstream release
- Drop d/p/0023-semanage_default_encoding.patch: Merged upstream
2013-11-06 - Laurent Bigonville <bigon@debian.org>
policycoreutils (2.2.1-1) unstable; urgency=low
* Team upload.
* New upstream release
- debian/control: Bump {build-}dependencies to match the release
- debian/control: Add python-dev, libapol-dev and libqpol-dev to the
build-depencencies
- Add new python-sepolicy package
- d/p/0002-Made-fixfiles-display-the-progress.patch: Refreshed
- Drop d/p/0004-manpages.patch: Fixed upstream
- d/p/0005-build-system.patch: Refreshed
- d/p/0006-default-config.patch: Refreshed
- d/p/0009-find-does-not-have-a-context-switch.patch: Refreshed
- Drop d/p/0013-use_dpkg_buildflags.patch: Fixed upstream
- Drop d/p/0014-po-file-update.patch: .po files are not updated during
build anymore
- d/p/0017-no-sandbox: Refreshed
- d/p/0018-sandbox-config.patch: Refreshed
* debian/rules: bash-completion script are now properly installed
* debian/patches/0022-sepolicy-path.patch: Install sepolicy modules in the
correct location
* debian/rules: Fix /usr/sbin/load_policy symlink creation
* debian/rules: Set $SYSTEMDDIR variable to /lib/systemd, so systemd units
files are installed in the correct directory
* debian/control, debian/rules: Add calls to dh_systemd tools
* debian/rules, debian/policycoreutils.install: Pass --destdir option to
dh_auto_install and list files to install in the package
* Add debian/patches/0023-semanage_default_encoding.patch: Remove import for
not upstreamed module
* Add debian/patches/0024-fix-manpages.patch: Fix some minor manpages issues
* debian/control: Use canonical URL in VCS-Git field
* d/p/0025-restorecon-service.patch: Improve restorecond service file
2013-05-25 - Laurent Bigonville <bigon@debian.org>
policycoreutils (2.1.13-2) unstable; urgency=low
* Team upload.
* debian/control:
- Add gawk to the build-dependencies, this is needed for some manpages
generation
- Add python-audit to the Recommends
- Bump Standards-Version to 3.9.4 (no further changes)

See Also

Package Description
policyd-weight_0.1.15.2-11_all.deb Perl policy daemon for the Postfix MTA
polipo_1.1.1-7_amd64.deb lightweight, caching web proxy
polkit-kde-1_5.5.5-0ubuntu1_all.deb transitional dummy package
polkit-kde-agent-1_5.5.5-0ubuntu1_amd64.deb KDE dialogs for PolicyKit
polled-camera-tool_1.11.10-5_amd64.deb Robot OS polled_camera package tool
pollen_4.20-0ubuntu1_amd64.deb Entropy-as-a-Service web server
polybori-doc_0.8.3-5build1_all.deb polynomials over Boolean Rings, documentation
polybori-gui_0.8.3-5build1_amd64.deb polynomials over Boolean Rings, GUI
polybori_0.8.3-5build1_amd64.deb polynomials over Boolean Rings, custom ipython shell
polygen-data_1.0.6.ds2-14build1_all.deb grammar definitions for PolyGen
polygen_1.0.6.ds2-14build1_all.deb generator of random sentences from grammar definitions
polyglot_2.0.1+git20140926-1_amd64.deb chess engine protocol adaptor, connects UCI engines to xboard
polygraph_4.3.2-1.2build1_amd64.deb performance testing tool for caching proxies and more
polylib-utils_5.22.5-3+dfsgubuntu1_amd64.deb Various tools using libpolylib
polymake_3.0r1-4_amd64.deb Tool for algorithmic discrete geometry
Advertisement
Advertisement