<html dir="ltr"><head></head><body style="text-align:left; direction:ltr;"><div>Hi</div><div><br></div><div>El lun, 06-05-2019 a las 10:37 +0000, Victor Toso escribió:</div><blockquote type="cite" style="margin:0 0 0 .8ex; border-left:2px #729fcf solid;padding-left:1ex"><pre>Hi,</pre><pre><br></pre><pre>On Fri, May 03, 2019 at 06:52:00PM +0200, Javier Celaya wrote:</pre><blockquote type="cite" style="margin:0 0 0 .8ex; border-left:2px #729fcf solid;padding-left:1ex"><pre>A phodav server created with a NULL shared dir is valid and</pre><pre>results in an error answer to all requests of the webdav channel,</pre><pre>instead of silently ignoring them.</pre><pre><br></pre><pre>This is better than just returning NULL from</pre><pre>spice_session_get_webdav_server because:</pre><pre>a) it crashes channel_webdav.c:start_client.</pre></blockquote><pre><br></pre><pre>Can you give some steps on how to reproduce? I was trying with</pre><pre>remote-viewer on F29 guest earlier and couldn't.</pre></blockquote><div><br></div><div>You cannot just try an existing client, this problem happened as we are developing our new client for flexVDI. You will have to modify some of the source code for remote-viewer to see it.</div><div><br></div><div>The thing is, if you do not set the shared-dir property of the SpiceSession object, it default to the XDG public directory. This happens if you do not pass the "shared-dir" command line option, for instance. But how do I say "I do not want to share any directory with the guest"? I can set the shared-dir property to a file, or a non-existing directory, and the guest just complaints when I try to access it through webdavd. However, this does not seem a good solution... Setting the property to NULL, on the other hand, seems a reasonable value for "share nothing", but it makes spice_session_get_webdav_server return NULL and start_client crashes.</div><div><br></div><div>Unless I missed something and there is some way of making remote-viewer share nothing... then we can just use that way.</div><div><br></div><blockquote type="cite" style="margin:0 0 0 .8ex; border-left:2px #729fcf solid;padding-left:1ex"><blockquote type="cite" style="margin:0 0 0 .8ex; border-left:2px #729fcf solid;padding-left:1ex"><pre>b) even if it did not crash, access to the shared dir from the guest</pre><pre> would fail by timeout instead of immediately notifying of an error.</pre></blockquote><pre><br></pre><pre>Is that on windows as guest?</pre></blockquote><div><br></div><div>Yes, I tested it on Windows as guest. I tried to fix a) by just returning early from start_client if spice_session_get_webdav_server returned NULL, but then all requests made by spice-webdavd are silently ignored. There is a webdav channel but no webdav server... so I imagine spice-webdavd on Linux will get the same result.</div><div><br></div><blockquote type="cite" style="margin:0 0 0 .8ex; border-left:2px #729fcf solid;padding-left:1ex"><pre><br></pre><pre>I spent some time looking at the code, found small issue and</pre><pre>added a checks on start_client(). Still, I don't see why we</pre><pre>should accept a webdav server running on NULL instead of only in</pre><pre>a valid folder but I'm also interested in fixing (a) and (b) if</pre><pre>possible.</pre></blockquote><div><br></div><div>As I explained before (maybe that should go in the commit message too) I wanted a way of sharing no directory at all. Passing NULL as shared-dir property seems like a good value, but you tell me if there is a better way.</div><div><br></div><div>Best regards</div><div><br></div><blockquote type="cite" style="margin:0 0 0 .8ex; border-left:2px #729fcf solid;padding-left:1ex"><pre><br></pre><pre>Cheers,</pre><pre><br></pre><blockquote type="cite" style="margin:0 0 0 .8ex; border-left:2px #729fcf solid;padding-left:1ex"><pre>---</pre><pre> src/spice-session.c | 4 ----</pre><pre> 1 file changed, 4 deletions(-)</pre><pre><br></pre><pre>diff --git a/src/spice-session.c b/src/spice-session.c</pre><pre>index 04ba124..cbcd8c4 100644</pre><pre>--- a/src/spice-session.c</pre><pre>+++ b/src/spice-session.c</pre><pre>@@ -2813,10 +2813,6 @@ PhodavServer* spice_session_get_webdav_server(SpiceSession *session)</pre><pre> static GMutex mutex;</pre><pre> </pre><pre> const gchar *shared_dir = spice_session_get_shared_dir(session);</pre><pre>- if (shared_dir == NULL) {</pre><pre>- SPICE_DEBUG("No shared dir set, not creating webdav server");</pre><pre>- return NULL;</pre><pre>- }</pre><pre> </pre><pre> g_mutex_lock(&mutex);</pre><pre> </pre><pre>-- </pre><pre>2.20.1</pre><pre><br></pre><pre>_______________________________________________</pre><pre>Spice-devel mailing list</pre><a href="mailto:Spice-devel@lists.freedesktop.org"><pre>Spice-devel@lists.freedesktop.org</pre></a><pre><br></pre><a href="https://lists.freedesktop.org/mailman/listinfo/spice-devel"><pre>https://lists.freedesktop.org/mailman/listinfo/spice-devel</pre></a><pre><br></pre></blockquote></blockquote><div><span><pre>-- <br></pre>
<br>
<br>
<table id="sig" width="480" cellspacing="0" cellpadding="0" border-spacing="0" style="width:480px;margin:0;padding:0;"><tbody><tr><td text-align="right" style="border-right:2px solid #4a4b4a;padding-right:10px;" valign="top">
<p style="padding: 0px; text-align: right;">
<a href="http://www.flexvdi.com" title="flexVDI"><img src="https://www.flexvdi.com/signature/logo.flexvdi.png" moz-do-not-send="true" alt="flexVDI" border="0" height="45" width="151">
</a>
</p>
<p style="padding: 5px 10px 0px 0px; font-size: 15px; font-weight: bold; color: rgb(62, 93, 107); line-height: 17px; height: 17px; text-align: right;">
<span style="float:right">Javier Celaya Alastrué</span>
</p>
<p style="padding: 0px 10px 0px 0px; font-size: 13px; font-style: italic; color: rgb(0, 161, 193); line-height: 17px; height: 17px; text-align: right;">Chief Technology Officer</p>
</td>
<td style="padding-left:18px;display:block;">
<p style="padding: 5px 0px 0px;">
<img src="https://flexvdi.com/signature/mail.png" moz-do-not-send="true" style="margin:1px 7px 0 0;" alt="email" align="left" height="17" width="17">
<a href="mailto:javier.celaya@flexvdi.com" style="font-size:14px;color:#727272;line-height:17px;height:17px;">javier.celaya@flexvdi.com</a>
</p>
<p style="padding: 5px 0px 0px;">
<img src="https://flexvdi.com/signature/phone.png" moz-do-not-send="true" style="margin:0 7px 0 0;" alt="Phone" align="left" height="17" width="17">
<span style="font-size:14px;color:#727272;line-height:17px;height:17px;">+34696969959</span>
</p>
<p style="padding: 5px 0px 0px;"> <img src="https://flexvdi.com/signature/skype.png" moz-do-not-send="true" style="margin:0 7px 0 0;" alt="Skype" align="left" height="17" width="17">
<span style="font-size:14px;color:#727272;line-height:17px;height:17px;">j_celaya</span>
</p>
<p style="padding: 5px 0px 0px;">
<img src="https://flexvdi.com/signature/legal.png" moz-do-not-send="true" style="margin:0 7px 0 0;" alt="Legal" align="left" height="17" width="17">
<a href="https://flexvdi.com/es/legal" style="font-size:14px;font-style:italic;color:#727272;line-height:17px;height:17px;">Legal Information and Privacy Policy</a>
</p>
</td>
</tr>
<tr>
<td colspan="2" height="300">
<p style="font-family:Helvetica,Arial;font-size:14px;font-style:italic;color:#313131;text-align: center; font-weight: bold">Política de confidencialidad</p>
<p style="font-family:Helvetica,Arial;font-size:10px;font-style:italic;color:#313131;text-align: justify">Este mensaje y los ficheros anexos son confidenciales dirigiéndose exclusivamente al destinatario mencionado en el encabezamiento. Si usted ha recibido este correo por error, tenga la amabilidad de eliminarlo de su sistema y no divulgar el contenido a terceros. Los datos personales facilitados por usted o por terceros serán tratados por FLEXIBLE SOFTWARE SOLUTIONS S.L.U. con la finalidad de gestionar y mantener los contactos y relaciones que se produzcan como consecuencia de la relación que mantiene con FLEXIBLE SOFTWARE SOLUTIONS S.L.U. Normalmente, la base jurídica que legitima este tratamiento, será su consentimiento, el interés legítimo o la necesidad para gestionar una relación contractual o similar. El plazo de conservación de sus datos vendrá determinado por la relación que mantiene con nosotros. Para más información al respecto, o para ejercer sus derechos de acceso, rectificación, supresión, oposición, limitación o portabilidad, dirija una comunicación por escrito a FLEXIBLE SOFTWARE SOLUTIONS S.L.U: Avenida de Ranillas 1D, Planta 3, Oficina 3G, Zaragoza o al correo electrónico <a href="mailto:pdo@flexvdi.com" style="color:#313131">pdo@flexvdi.com</a>. En caso de considerar vulnerado su derecho a la protección de datos personales, podrá interponer una reclamación ante la Agencia Española de Protección de Datos (<a href="http://www.agpd.es" style="color:#313131">www.agpd.es</a>). </p>
</td>
</tr>
</tbody></table></span></div></body></html>