<div dir="ltr"><br><div class="gmail_extra"><br><div class="gmail_quote">On Thu, Jan 11, 2018 at 1:45 PM, Frediano Ziglio <span dir="ltr"><<a href="mailto:fziglio@redhat.com" target="_blank">fziglio@redhat.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div class="gmail-HOEnZb"><div class="gmail-h5">> On Tue, Jan 9, 2018 at 10:09 PM, Frediano Ziglio < <a href="mailto:fziglio@redhat.com">fziglio@redhat.com</a> ><br>
> wrote:<br>
<br>
> > > Hello!<br>
><br>
<br>
> > > I would really like to see XSpice and xf86-video-qxl on FreeBSD.<br>
><br>
<br>
> > > The correction for the FreeBSD build libspice-server.so is quite trivial<br>
> > > and<br>
><br>
> > > mechanical (first and dirty version in attach. I'd like to do the FreeBSD<br>
><br>
> > > port later)<br>
><br>
<br>
> > About the patch:<br>
><br>
<br>
> > --- server/net-utils.c.orig 2017-09-12 15:00:11.000000000 +0300<br>
><br>
> > +++ server/net-utils.c 2017-12-27 17:40:47.728516000 +0300<br>
><br>
> > @@ -23,6 +23,9 @@<br>
><br>
> > #include <fcntl.h><br>
><br>
> > #include <stdbool.h><br>
><br>
> > #include <string.h><br>
><br>
> > +#include <sys/types.h><br>
><br>
> > +#include <arpa/inet.h><br>
><br>
> > +#include <netinet/in.h><br>
><br>
> > #include <netinet/ip.h><br>
><br>
> > #include <netinet/tcp.h><br>
><br>
> > #include <sys/socket.h><br>
><br>
> > @@ -42,7 +45,7 @@<br>
><br>
> > {<br>
><br>
> > int keepalive = !!enable;<br>
><br>
<br>
> > - if (setsockopt(fd, SOL_SOCKET, SO_KEEPALIVE, &keepalive,<br>
> > sizeof(keepalive))<br>
> > == -1) {<br>
><br>
> > + if (setsockopt(fd, IPPROTO_TCP, SO_KEEPALIVE, &keepalive,<br>
> > sizeof(keepalive)) == -1) {<br>
><br>
> > if (errno != ENOTSUP) {<br>
><br>
> > spice_printerr("setsockopt for keepalive failed, %s", strerror(errno));<br>
><br>
> > return false;<br>
><br>
<br>
> > no, this should be SOL_SOCKET as documented also in FreeBSD documentation.<br>
><br>
<br>
> > //skipped//<br>
><br>
<br>
</div></div>> Oops! It's my fault. It seems that this was the cause of the problem . Now<br>
<span class="gmail-">> spice/qxl works on FreeBSD as expected:<br>
> <a href="https://snag.gy/4LSavc.jpg" rel="noreferrer" target="_blank">https://snag.gy/4LSavc.jpg</a><br>
<br>
</span>Great! Can you confirm if <a href="https://lists.freedesktop.org/archives/spice-devel/2018-January/041373.html" rel="noreferrer" target="_blank">https://lists.freedesktop.org/<wbr>archives/spice-devel/2018-<wbr>January/041373.html</a><br>
is working?<br>
<div class="gmail-HOEnZb"><div class="gmail-h5"><br><br>
</div></div><span class="gmail-HOEnZb"><font color="#888888">Frediano<br></font></span></blockquote><div><br></div><div><span id="gmail-result_box" class="gmail-short_text" tabindex="-1" lang="en"><span class="gmail-">Confirm - these changes work successfully, tested on: FreeBSD 11.1-RELEASE and FreeBSD 12-CURRENT (aka HEAD).<br></span></span><span id="gmail-result_box" class="gmail-short_text" tabindex="-1" lang="en"><span class="gmail-"><br></span></span></div><div><span id="gmail-result_box" class="gmail-short_text" tabindex="-1" lang="en"><span class="gmail-">Will these changes be included in the next release?<br><br></span></span><span id="gmail-result_box" class="gmail-short_text" tabindex="-1" lang="en"><span class="gmail-">There is another small issue of build libspice-server on FreeBSD platform: </span></span><span id="gmail-result_box" class="gmail-short_text" tabindex="-1" lang="en"><span class="gmail-">OpenSSL is included in the FreeBSD base.<br></span></span><span id="gmail-result_box" class="gmail-short_text" tabindex="-1" lang="en"><span class="gmail-">However, the pkcconf does not find it without these changes:<br><br><a href="https://reviews.freebsd.org/D13896">https://reviews.freebsd.org/D13896</a>  ( see head/devel/libspice-server/files/<a href="http://patch-configure.ac">patch-configure.ac</a> )<br><br></span></span></div><div>Another way to fix it - <span id="gmail-result_box" class="gmail-short_text" tabindex="-1" lang="en"><span class="gmail-">install openssl from ports or packages ( while base OpenSSL placed on /usr/lib and /usr/include, 3-rd packages and openssl from ports/packages placed in /usr/local prefix and pkgconf </span></span><span id="gmail-result_box" class="gmail-short_text" tabindex="-1" lang="en"><span class="gmail-"><span id="gmail-result_box" class="gmail-short_text" tabindex="-1" lang="en"><span>finds it</span></span>).<br></span></span>N<span id="gmail-result_box" class="gmail-short_text" tabindex="-1" lang="en"><span class="gmail-"><span id="gmail-result_box" class="gmail-" tabindex="-1" lang="en"><span>evertheless, at the moment there is no strong reason to add dependency for OpenSSL from ports/packages.<br><br></span></span></span></span></div><div><span id="gmail-result_box" class="gmail-short_text" tabindex="-1" lang="en"><span class="gmail-"><span id="gmail-result_box" class="gmail-" tabindex="-1" lang="en"><span>Can you review this patch for <a href="http://configure.ac">configure.ac</a> ? </span></span></span></span><span id="gmail-result_box" class="gmail-" tabindex="-1" lang="en"><span>I believe this patch can also be useful for other platforms, including MacOSX.  </span></span><span id="gmail-result_box" class="gmail-" tabindex="-1" lang="en"><span><span id="gmail-result_box" class="gmail-" tabindex="-1" lang="en"><span>Perhaps it can also be included in the upstream.</span> <span>Otherwise, it will remain in FreeBSD ports tree.</span></span></span></span></div></div></div><div class="gmail_extra"><br>PS: libspice-server and xf86-video-qxl driver committed and available in FreeBSD ports tree/packages now. <span id="gmail-result_box" class="gmail-short_text" tabindex="-1" lang="en"><span class="gmail-">Thanks for the help</span></span>!</div><div class="gmail_extra"><br></div></div>