Project JEDI - Issue Tracker
Mantis Bugtracker

Viewing Issue Simple Details Jump to Notes ] View Advanced ] Issue History ] Print ]
ID Category Severity Reproducibility Date Submitted Last Update
0004751 [JEDI VCL] 00 JVCL Components major always 2009-04-22 21:11 2009-04-22 22:24
Reporter jkelley View Status public  
Assigned To AHUser
Priority normal Resolution fixed  
Status resolved   Product Version 3.34
Summary 0004751: JvProgramVersionCheck incorrectly uses IdHTTP.BoundPort
Description JvProgramVersionCheck uses TIdHTTP's BoundPort property when it's compiled against Indy 10. This is incorrect; the intent of the code seems to be to connect to the given destination port, but setting BoundPort instead causes the client to use that its source port. This has two problems:

First, it may cause problems for particularly restrictive firewalls. (For example, if I remember correctly, "Building Internet Firewalls" says that web requests always originate from ports >= 1024 and that firewalls can restrict low-numbered source ports.)

Second, if JvProgramVersionCheck is executed twice in close succession, it tries and fails to reuse the same source port and so generates the following exception:

Project TestProject.exe raised exception class EIdSocketError with message 'Socket Error # 10048 Address already in use.'.
Additional Information I've only tested this in JVCL 3.34, but the relevant code appears to be unchanged in JVCL 3.36.
Tags No tags attached.
Attached Files

- Relationships

-  Notes
jkelley (reporter)
2009-04-22 21:27

A workaround is to set TJvProgramVersionHTTPLocationIndy's Port property to 0 when using Indy 10. This will tell the OS to pick a random ephemeral port, which is what JVCL should be telling the OS to do anyway.
AHUser (developer)
2009-04-22 22:24

Fixed in SVN.

- Issue History
Date Modified Username Field Change
2009-04-22 21:11 jkelley New Issue
2009-04-22 21:12 jkelley Issue Monitored: jkelley
2009-04-22 21:27 jkelley Note Added: 0015428
2009-04-22 22:24 AHUser Note Added: 0015429
2009-04-22 22:24 AHUser Status new => resolved
2009-04-22 22:24 AHUser Fixed in Version => Daily / SVN
2009-04-22 22:24 AHUser Resolution open => fixed
2009-04-22 22:24 AHUser Assigned To => AHUser

Mantis 1.1.6[^]
Copyright © 2000 - 2008 Mantis Group
Powered by Mantis Bugtracker