Closed Bug 220473 Opened 21 years ago Closed 21 years ago

should grab portnumber from /etc/services / IPP should be a known protocol as it's http and html based

Categories

(Core :: Networking, enhancement)

x86
Linux
enhancement
Not set
normal

Tracking

()

RESOLVED DUPLICATE of bug 125159

People

(Reporter: dothebart, Assigned: darin.moz)

References

()

Details

User-Agent:       Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.4) Gecko/20030905 Debian/1.4-3
Build Identifier: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.4) Gecko/20030905 Debian/1.4-3

if one doesn't know the port number and enters the name that is in /etc/services
and connects the port with a name, mozilla shouldn't say that it doesn't know
that service, but just take the port configured in /etc/services.
btw, IPP is http alike and html based, so there is no real reason for mozilla
not to take an ipp://host url.


Reproducible: Always

Steps to Reproduce:
1. take a protocol name that is configured in /etc/services
2. enter an url in the style http://host:protocol



Actual Results:  
if it's not usual stuff as ftp or http, mozilla refuses to connect due to
unknown protocol. 

Expected Results:  
it should look up the port number, connect it, and talk http with it or whatever
is specified in the protocol-part of the url.(as far as it is supported)
Mozilla supports : Http, ftp, Https, gopher, IRC (with installed CZ),
pop3,imap,smtp (with mailnews) as protocols. Mozilla doesn't understand IPP.

Or is ipp only Http with another port number ?
fwiw, for looking up the portnumber:
       struct servent *getservbyname(const char *name, const char *proto);

       The getservbyname() function returns a servent structure for the line
from /etc/services that matches the  service
       name using protocol proto. If proto is NULL, any protocol will be matched.

       The servent structure is defined in <netdb.h> as follows:
 
              struct servent {
                      char    *s_name;        /* official service name */
                      char    **s_aliases;    /* alias list */
                      int     s_port;         /* port number */
                      char    *s_proto;       /* protocol to use */
              }
                                                                               
                                             
       The members of the servent structure are:
 
       s_name The official name of the service.
 
       s_aliases
              A zero terminated list of alternative names for the service.
 
       s_port The port number for the service given in network byte order.
 
       s_proto
              The name of the protocol to use with this service.
According to RFC 2396 (section 3.2.2), the port has to be a number ! Nice idea,
but it would be an illegal URI.
please look at this bug, I think all the useful technical objections are there.

If someone concurs, please verify this bug.

*** This bug has been marked as a duplicate of 125159 ***
Status: UNCONFIRMED → RESOLVED
Closed: 21 years ago
Resolution: --- → DUPLICATE
You need to log in before you can comment on or make changes to this bug.