Opened 11 years ago

Closed 11 years ago

Last modified 11 years ago

#4929 closed Bug report (fixed)

implicit port silently reset to 990 after every restart (v 0.9.33beta)

Reported by: redleg Owned by:
Priority: normal Component: FileZilla Server
Keywords: sticky implicit port 990 FZS v0.9.33beta Cc:
Component version: Operating system type: Windows
Operating system version: XPpro SP3, Vista(Ult) SP2

Description

After every server restart admin has to edit server options, SSL/TLS settings "Listen for implicit SSL/TLS connections on the following ports: (default: 990)" and manually delete the persistent 990 setting that reappears after restarts.

This can be particularly problematic when admin desires to force explicit FTP connections only since port 990 is actually opened and the server listens for implicit SSL/TLS connections as well.

a more wordy description can be read at the forum, post#
http://forum.filezilla-project.org/viewtopic.php?f=6&t=13604

Attachments (1)

StoreEmptyStringOptionValues.patch (737 bytes ) - added by eyebex 11 years ago.

Download all attachments as: .zip

Change History (5)

comment:1 by eyebex, 11 years ago

This was caused by the fact that option values that represent empty strings were not stored as empty strings, but as no value at all, e.g.

<Item name="Implicit SSL ports" type="string" />

instead of

<Item name="Implicit SSL ports" type="string"></Item>

In the first case, TinyXml will fail to read the option value, resulting in the default value (here: 990) to be applied as a fallback.

Find attached a patch that changes this by generally allowing empty strings to be stored as option values.

comment:2 by Tim Kosse, 11 years ago

Resolution: fixed
Status: newclosed

Thanks, applied.

comment:3 by eyebex, 11 years ago

It seems you modified my patch by adding an additional

if (!textNode
!textNode->ToText())

continue;

This is not necessary, a similar check is done two lines below, and this modification will break the patch. Basically, what I check for is equivalent to

if ((!textNode
!textNode->ToText()) && type == _T("numeric"))

continue;

I.e. only fail to read the value (and possibly apply a default value) if there is no value to read and the option is numeric. If there is no value to read and the option is a string, treat the option as an empty string.

comment:4 by Tim Kosse, 11 years ago

Sorry, my fault.

Note: See TracTickets for help on using tickets.