I sent email to [EMAIL PROTECTED] Why I still kept receiving mails from Tomcat Developers List <[EMAIL PROTECTED]>?
Henri Gomez <[EMAIL PROTECTED]> 03/16/2004 03:58 AM Please respond to "Tomcat Developers List" To: Tomcat Developers List <[EMAIL PROTECTED]> cc: Subject: Re: cvs commit: jakarta-tomcat-connectors/jk/native/common jk_connect.c Guenter Knauf wrote: > Hi Henri, > >>[EMAIL PROTECTED] wrote: > > >>>hgomez 2004/03/01 05:47:23 >>> >>> Modified: jk/native/common jk_ajp_common.c >>> Log: >>> More debug/trace infos on remote tomcats > > >>I added more infos on IP/PORT of remote tomcats in jk, since I've some >>reports that there is a problem for admins to determine which tomcat >>is down when they have many workers defined... > > >>I overcome the inet_ntoa by using a jk_dump_hinfo function which should >>works also in multi-threaded env. > > >>It should works on Unixes, but I'd like to have reports from >>Win32, Netware and others exotics OS users... > > the change of > --- jakarta-tomcat-connectors/jk/native/common/jk_connect.c 2004/02/24 08:45:48 1.17 > +++ jakarta-tomcat-connectors/jk/native/common/jk_connect.c 2004/03/01 13:37:38 1.18 > > breaks all targets on NetWare: netscape, apache-1.3 and apache-2; > the problem is that in_addr_t and in_port_t are not defined. > Futhermore I consider in_addr_t as a dangerous var, google a bit and you will see that some OSes define it as unsigned long (which is what we need here) while others define it to a struct in_addr. NetWare also defines it to the in_addr struct so that its useless here - and even more ugly it would be if I had to include netinet/in.h for other reasons, then I would have to undef at least in_addr_t. > So we should avoid these typedefs at all, and simply use ulong and ushort. > > --- jk_connect.c.orig Mon Mar 15 16:04:08 2004 > +++ jk_connect.c Mon Mar 15 18:16:28 2004 > @@ -288,8 +288,8 @@ > */ > char * jk_dump_hinfo(struct sockaddr_in *saddr, char * buf) > { > - in_addr_t laddr = htonl(saddr->sin_addr.s_addr); > - in_port_t lport = htons(saddr->sin_port); > + unsigned long laddr = htonl(saddr->sin_addr.s_addr); > + unsigned short lport = htons(saddr->sin_port); > > sprintf(buf, "%d.%d.%d.%d:%d", > (int)(laddr >> 24), (int)((laddr >> 16) & 0xff), (int)((laddr >> 8) & 0xff), (int)(laddr & 0xff), (int)lport); > > I've not tested this yet, but at least I can now compile again. In addtion our older clib has a strange behavior with these functions, so there's certainly another additional patch needed for apache-1.3 and netscape; apache-2 should work with the above. > > btw: we should really take care of tabs and avoid them - as outlined in the ASF developer docs. Currently there are a couple of files which contain tabs, they should be removed IMO. > > Guenter. From my Linux manpage we shoulld use uint32_t and uint16_t for htonl and htons. What about Netware ? --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]