Bug 1567980 - container.if duplicate definition errors when building policy module
Summary: container.if duplicate definition errors when building policy module
Status: CLOSED NOTABUG
Alias: None
Product: Fedora
Classification: Fedora
Component: selinux-policy
Version: 27
Hardware: Unspecified
OS: Unspecified
unspecified
unspecified
Target Milestone: ---
Assignee: Lukas Vrabec
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Keywords:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2018-04-16 14:04 UTC by Pierre Ossman
Modified: 2018-04-16 16:46 UTC (History)
5 users (show)

(edit)
Clone Of:
(edit)
Last Closed: 2018-04-16 16:46:38 UTC


Attachments (Terms of Use)

Description Pierre Ossman 2018-04-16 14:04:26 UTC
Trying to build a third party policy module using the selinux devel package results in these errors from the core interfaces:

/usr/share/selinux/devel/include/contrib/container.if:14: Error: duplicate definition of container_runtime_domtrans(). Original definition on 14.
/usr/share/selinux/devel/include/contrib/container.if:40: Error: duplicate definition of container_runtime_run(). Original definition on 40.
/usr/share/selinux/devel/include/contrib/container.if:60: Error: duplicate definition of container_runtime_exec(). Original definition on 60.
/usr/share/selinux/devel/include/contrib/container.if:79: Error: duplicate definition of container_read_state(). Original definition on 79.
/usr/share/selinux/devel/include/contrib/container.if:97: Error: duplicate definition of container_search_lib(). Original definition on 97.
/usr/share/selinux/devel/include/contrib/container.if:116: Error: duplicate definition of container_exec_lib(). Original definition on 116.
/usr/share/selinux/devel/include/contrib/container.if:135: Error: duplicate definition of container_read_lib_files(). Original definition on 135.
/usr/share/selinux/devel/include/contrib/container.if:154: Error: duplicate definition of container_read_share_files(). Original definition on 154.
/usr/share/selinux/devel/include/contrib/container.if:176: Error: duplicate definition of container_exec_share_files(). Original definition on 176.
/usr/share/selinux/devel/include/contrib/container.if:194: Error: duplicate definition of container_manage_lib_files(). Original definition on 194.
/usr/share/selinux/devel/include/contrib/container.if:214: Error: duplicate definition of container_manage_files(). Original definition on 214.
/usr/share/selinux/devel/include/contrib/container.if:233: Error: duplicate definition of container_manage_dirs(). Original definition on 233.
/usr/share/selinux/devel/include/contrib/container.if:251: Error: duplicate definition of container_manage_lib_dirs(). Original definition on 251.
/usr/share/selinux/devel/include/contrib/container.if:287: Error: duplicate definition of container_lib_filetrans(). Original definition on 287.
/usr/share/selinux/devel/include/contrib/container.if:305: Error: duplicate definition of container_read_pid_files(). Original definition on 305.
/usr/share/selinux/devel/include/contrib/container.if:324: Error: duplicate definition of container_systemctl(). Original definition on 324.
/usr/share/selinux/devel/include/contrib/container.if:349: Error: duplicate definition of container_rw_sem(). Original definition on 349.
/usr/share/selinux/devel/include/contrib/container.if:367: Error: duplicate definition of container_use_ptys(). Original definition on 367.
/usr/share/selinux/devel/include/contrib/container.if:385: Error: duplicate definition of container_filetrans_named_content(). Original definition on 385.
/usr/share/selinux/devel/include/contrib/container.if:431: Error: duplicate definition of container_stream_connect(). Original definition on 431.
/usr/share/selinux/devel/include/contrib/container.if:452: Error: duplicate definition of container_spc_stream_connect(). Original definition on 452.
/usr/share/selinux/devel/include/contrib/container.if:473: Error: duplicate definition of container_admin(). Original definition on 473.
/usr/share/selinux/devel/include/contrib/container.if:520: Error: duplicate definition of container_auth_domtrans(). Original definition on 520.
/usr/share/selinux/devel/include/contrib/container.if:539: Error: duplicate definition of container_auth_exec(). Original definition on 539.
/usr/share/selinux/devel/include/contrib/container.if:558: Error: duplicate definition of container_auth_stream_connect(). Original definition on 558.
/usr/share/selinux/devel/include/contrib/container.if:577: Error: duplicate definition of container_runtime_typebounds(). Original definition on 577.
/usr/share/selinux/devel/include/contrib/container.if:596: Error: duplicate definition of container_runtime_entrypoint(). Original definition on 596.
/usr/share/selinux/devel/include/contrib/container.if:603: Error: duplicate definition of docker_exec_lib(). Original definition on 603.
/usr/share/selinux/devel/include/contrib/container.if:607: Error: duplicate definition of docker_read_share_files(). Original definition on 607.
/usr/share/selinux/devel/include/contrib/container.if:611: Error: duplicate definition of docker_exec_share_files(). Original definition on 611.
/usr/share/selinux/devel/include/contrib/container.if:615: Error: duplicate definition of docker_manage_lib_files(). Original definition on 615.
/usr/share/selinux/devel/include/contrib/container.if:620: Error: duplicate definition of docker_manage_lib_dirs(). Original definition on 620.
/usr/share/selinux/devel/include/contrib/container.if:624: Error: duplicate definition of docker_lib_filetrans(). Original definition on 624.
/usr/share/selinux/devel/include/contrib/container.if:628: Error: duplicate definition of docker_read_pid_files(). Original definition on 628.
/usr/share/selinux/devel/include/contrib/container.if:632: Error: duplicate definition of docker_systemctl(). Original definition on 632.
/usr/share/selinux/devel/include/contrib/container.if:636: Error: duplicate definition of docker_use_ptys(). Original definition on 636.
/usr/share/selinux/devel/include/contrib/container.if:640: Error: duplicate definition of docker_stream_connect(). Original definition on 640.
/usr/share/selinux/devel/include/contrib/container.if:644: Error: duplicate definition of docker_spc_stream_connect(). Original definition on 644.
/usr/share/selinux/devel/include/contrib/container.if:658: Error: duplicate definition of container_spc_read_state(). Original definition on 658.
/usr/share/selinux/devel/include/contrib/container.if:677: Error: duplicate definition of container_domain_template(). Original definition on 677.
/usr/share/selinux/devel/include/contrib/container.if:706: Error: duplicate definition of container_spc_rw_pipes(). Original definition on 706.

selinux-policy-devel-3.13.1-283.30.fc27.noarch

Comment 1 Daniel Walsh 2018-04-16 16:46:38 UTC
THis is not a bug.  What is happening here is the selinux-policy is shipping its own container.if so that third parties can use it to compile against.  When you build container-selinux from scratch you also get a version of contianer.if and their compiler is just pointing out this fact. 

The compiler will use the local container.if, rather then the selinux-policy-targeted version.


Note You need to log in before you can comment on or make changes to this bug.