<feed xmlns='http://www.w3.org/2005/Atom'>
<title>passt/contrib, branch 2023_03_21.1ee2f7c</title>
<subtitle>Plug A Simple Socket Transport</subtitle>
<link rel='alternate' type='text/html' href='https://passt.top/passt/'/>
<entry>
<title>fedora: Refresh SELinux labels in scriptlets, require -selinux package</title>
<updated>2023-03-17T07:26:07+00:00</updated>
<author>
<name>Stefano Brivio</name>
<email>sbrivio@redhat.com</email>
</author>
<published>2023-03-16T19:51:23+00:00</published>
<link rel='alternate' type='text/html' href='https://passt.top/passt/commit/?id=dd2349661933c4e9756e524ae9465f38b53b7557'/>
<id>dd2349661933c4e9756e524ae9465f38b53b7557</id>
<content type='text'>
Instead of:
  https://fedoraproject.org/wiki/SELinux_Policy_Modules_Packaging_Draft

follow this:
  https://fedoraproject.org/wiki/PackagingDrafts/SELinux_Independent_Policy

which seems to make more sense and fixes the issue that, on a fresh
install, without a reboot, the file contexts for the binaries are not
actually updated.

In detail:

- labels are refreshed using the selinux_relabel_pre and
  selinux_relabel_post on install, upgrade, and uninstall

- use the selinux_modules_install and selinux_modules_uninstall
  macros, instead of calling 'semodule' directly (no functional
  changes in our case)

- require the -selinux package on SELinux-enabled environments and if
  the current system policy is "targeted"

Signed-off-by: Stefano Brivio &lt;sbrivio@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Instead of:
  https://fedoraproject.org/wiki/SELinux_Policy_Modules_Packaging_Draft

follow this:
  https://fedoraproject.org/wiki/PackagingDrafts/SELinux_Independent_Policy

which seems to make more sense and fixes the issue that, on a fresh
install, without a reboot, the file contexts for the binaries are not
actually updated.

In detail:

- labels are refreshed using the selinux_relabel_pre and
  selinux_relabel_post on install, upgrade, and uninstall

- use the selinux_modules_install and selinux_modules_uninstall
  macros, instead of calling 'semodule' directly (no functional
  changes in our case)

- require the -selinux package on SELinux-enabled environments and if
  the current system policy is "targeted"

Signed-off-by: Stefano Brivio &lt;sbrivio@redhat.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>fedora: Install SELinux interface files to shared include directory</title>
<updated>2023-03-10T19:01:41+00:00</updated>
<author>
<name>Stefano Brivio</name>
<email>sbrivio@redhat.com</email>
</author>
<published>2023-03-10T18:10:01+00:00</published>
<link rel='alternate' type='text/html' href='https://passt.top/passt/commit/?id=70c0765b49e19b76639908a7686d8f795ba3ed24'/>
<id>70c0765b49e19b76639908a7686d8f795ba3ed24</id>
<content type='text'>
Link: https://github.com/fedora-selinux/selinux-policy/pull/1613
Signed-off-by: Stefano Brivio &lt;sbrivio@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Link: https://github.com/fedora-selinux/selinux-policy/pull/1613
Signed-off-by: Stefano Brivio &lt;sbrivio@redhat.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>contrib/selinux: Split interfaces into smaller bits</title>
<updated>2023-03-10T19:01:41+00:00</updated>
<author>
<name>Stefano Brivio</name>
<email>sbrivio@redhat.com</email>
</author>
<published>2023-03-10T17:00:31+00:00</published>
<link rel='alternate' type='text/html' href='https://passt.top/passt/commit/?id=93105ea06619d4c199f8140f4b75ae359757dc6d'/>
<id>93105ea06619d4c199f8140f4b75ae359757dc6d</id>
<content type='text'>
...to fit accepted Fedora practices.

Link: https://github.com/fedora-selinux/selinux-policy/pull/1613
Signed-off-by: Stefano Brivio &lt;sbrivio@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
...to fit accepted Fedora practices.

Link: https://github.com/fedora-selinux/selinux-policy/pull/1613
Signed-off-by: Stefano Brivio &lt;sbrivio@redhat.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>contrib/selinux: Drop unused passt_read_data() interface</title>
<updated>2023-03-10T19:01:41+00:00</updated>
<author>
<name>Stefano Brivio</name>
<email>sbrivio@redhat.com</email>
</author>
<published>2023-03-10T14:53:37+00:00</published>
<link rel='alternate' type='text/html' href='https://passt.top/passt/commit/?id=dcdc50fc2251339d6e929f708fad114e61b60627'/>
<id>dcdc50fc2251339d6e929f708fad114e61b60627</id>
<content type='text'>
Signed-off-by: Stefano Brivio &lt;sbrivio@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Signed-off-by: Stefano Brivio &lt;sbrivio@redhat.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>contrib/selinux: Drop "example" from headers: this is the actual policy</title>
<updated>2023-03-10T19:01:41+00:00</updated>
<author>
<name>Stefano Brivio</name>
<email>sbrivio@redhat.com</email>
</author>
<published>2023-03-10T14:53:14+00:00</published>
<link rel='alternate' type='text/html' href='https://passt.top/passt/commit/?id=9f35cf0b11891e9dfb12eeb5d52f728881f84967'/>
<id>9f35cf0b11891e9dfb12eeb5d52f728881f84967</id>
<content type='text'>
Signed-off-by: Stefano Brivio &lt;sbrivio@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Signed-off-by: Stefano Brivio &lt;sbrivio@redhat.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>contrib: Drop libvirt out-of-tree patch, integration mostly works in 9.1.0</title>
<updated>2023-03-09T02:44:21+00:00</updated>
<author>
<name>Stefano Brivio</name>
<email>sbrivio@redhat.com</email>
</author>
<published>2023-03-08T22:47:19+00:00</published>
<link rel='alternate' type='text/html' href='https://passt.top/passt/commit/?id=294d6dc4c69d6ac8c51480e967d06da1f395d814'/>
<id>294d6dc4c69d6ac8c51480e967d06da1f395d814</id>
<content type='text'>
...and in any case, this patch doesn't offer any advantage over the
current upstream integration.

Signed-off-by: Stefano Brivio &lt;sbrivio@redhat.com&gt;
Reviewed-by: David Gibson &lt;david@gibson.dropbear.id.au&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
...and in any case, this patch doesn't offer any advantage over the
current upstream integration.

Signed-off-by: Stefano Brivio &lt;sbrivio@redhat.com&gt;
Reviewed-by: David Gibson &lt;david@gibson.dropbear.id.au&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>contrib: Drop QEMU out-of-tree patches</title>
<updated>2023-03-09T02:44:21+00:00</updated>
<author>
<name>Stefano Brivio</name>
<email>sbrivio@redhat.com</email>
</author>
<published>2023-03-08T22:46:13+00:00</published>
<link rel='alternate' type='text/html' href='https://passt.top/passt/commit/?id=42fb62516d4e37ac456533d9d9b5c3a942b48631'/>
<id>42fb62516d4e37ac456533d9d9b5c3a942b48631</id>
<content type='text'>
Native support was introduced with commit 13c6be96618c, QEMU 7.2.

Signed-off-by: Stefano Brivio &lt;sbrivio@redhat.com&gt;
Reviewed-by: David Gibson &lt;david@gibson.dropbear.id.au&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Native support was introduced with commit 13c6be96618c, QEMU 7.2.

Signed-off-by: Stefano Brivio &lt;sbrivio@redhat.com&gt;
Reviewed-by: David Gibson &lt;david@gibson.dropbear.id.au&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>contrib: Drop Podman out-of-tree patch, integration is upstream now</title>
<updated>2023-03-09T02:44:21+00:00</updated>
<author>
<name>Stefano Brivio</name>
<email>sbrivio@redhat.com</email>
</author>
<published>2023-03-08T22:45:08+00:00</published>
<link rel='alternate' type='text/html' href='https://passt.top/passt/commit/?id=f3cd0f9e454f73e3ff218a986205eb7dbb3d350d'/>
<id>f3cd0f9e454f73e3ff218a986205eb7dbb3d350d</id>
<content type='text'>
See https://github.com/containers/podman/pull/16141, shipped in
Podman 4.4.

Signed-off-by: Stefano Brivio &lt;sbrivio@redhat.com&gt;
Reviewed-by: David Gibson &lt;david@gibson.dropbear.id.au&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
See https://github.com/containers/podman/pull/16141, shipped in
Podman 4.4.

Signed-off-by: Stefano Brivio &lt;sbrivio@redhat.com&gt;
Reviewed-by: David Gibson &lt;david@gibson.dropbear.id.au&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>contrib/selinux: Let interface users set paths for log, PID, socket files</title>
<updated>2023-03-08T23:36:08+00:00</updated>
<author>
<name>Stefano Brivio</name>
<email>sbrivio@redhat.com</email>
</author>
<published>2023-03-06T23:19:18+00:00</published>
<link rel='alternate' type='text/html' href='https://passt.top/passt/commit/?id=d361fe6e809bdf3539d764cfa5058f46ce51bcbf'/>
<id>d361fe6e809bdf3539d764cfa5058f46ce51bcbf</id>
<content type='text'>
Even libvirt itself will configure passt to write log, PID and socket
files to different locations depending on whether the domain is
started as root (/var/log/libvirt/...) or as a regular user
(/var/log/&lt;PID&gt;/libvirt/...), and user_tmp_t would only cover the
latter.

Create interfaces for log and PID files, so that callers can specify
different file contexts for those, and modify the interface for the
UNIX socket file to allow different paths as well.

Signed-off-by: Stefano Brivio &lt;sbrivio@redhat.com&gt;
Tested-by: Laine Stump &lt;laine@redhat.com&gt;
Reviewed-by: Laine Stump &lt;laine@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Even libvirt itself will configure passt to write log, PID and socket
files to different locations depending on whether the domain is
started as root (/var/log/libvirt/...) or as a regular user
(/var/log/&lt;PID&gt;/libvirt/...), and user_tmp_t would only cover the
latter.

Create interfaces for log and PID files, so that callers can specify
different file contexts for those, and modify the interface for the
UNIX socket file to allow different paths as well.

Signed-off-by: Stefano Brivio &lt;sbrivio@redhat.com&gt;
Tested-by: Laine Stump &lt;laine@redhat.com&gt;
Reviewed-by: Laine Stump &lt;laine@redhat.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>contrib/selinux: Allow binding and connecting to all UDP and TCP ports</title>
<updated>2023-03-08T23:36:08+00:00</updated>
<author>
<name>Stefano Brivio</name>
<email>sbrivio@redhat.com</email>
</author>
<published>2023-03-06T23:05:36+00:00</published>
<link rel='alternate' type='text/html' href='https://passt.top/passt/commit/?id=de9b0cb5fee2ea00ed7e7877ef9be8c446bca134'/>
<id>de9b0cb5fee2ea00ed7e7877ef9be8c446bca134</id>
<content type='text'>
Laine reports that with a simple:

      &lt;portForward proto='tcp'&gt;
        &lt;range start='2022' to='22'/&gt;
      &lt;/portForward&gt;

in libvirt's domain XML, passt won't start as it fails to bind
arbitrary ports. That was actually the intention behind passt_port_t:
the user or system administrator should have explicitly configured
allowed ports on a given machine. But it's probably not realistic, so
just allow any port to be bound and forwarded.

Also fix up some missing operations on sockets.

Reported-by: Laine Stump &lt;laine@redhat.com&gt;
Signed-off-by: Stefano Brivio &lt;sbrivio@redhat.com&gt;
Tested-by: Laine Stump &lt;laine@redhat.com&gt;
Reviewed-by: Laine Stump &lt;laine@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Laine reports that with a simple:

      &lt;portForward proto='tcp'&gt;
        &lt;range start='2022' to='22'/&gt;
      &lt;/portForward&gt;

in libvirt's domain XML, passt won't start as it fails to bind
arbitrary ports. That was actually the intention behind passt_port_t:
the user or system administrator should have explicitly configured
allowed ports on a given machine. But it's probably not realistic, so
just allow any port to be bound and forwarded.

Also fix up some missing operations on sockets.

Reported-by: Laine Stump &lt;laine@redhat.com&gt;
Signed-off-by: Stefano Brivio &lt;sbrivio@redhat.com&gt;
Tested-by: Laine Stump &lt;laine@redhat.com&gt;
Reviewed-by: Laine Stump &lt;laine@redhat.com&gt;
</pre>
</div>
</content>
</entry>
</feed>
