*SUMMARY*Currently, Mozilla's Networking is unavailable for current BeOSR5.I made a patch to fix this bug.*CAUSE OF THIS BUG*I found that the networking stopped by an error at DNS code.Specifically, nsDnsService.cpp .*RESULT OF FIX*I can load remote HTML on startup(www.mozilla.org) or click on a bookmark. But click on a link on a HTML Page doesn't properly work. This seems to be another bug on widget.
email@example.com There is no async. DNS code in the BeOS implementation of Mozilla. This patch enables the same workarounds used to perform syncronous DNS lookups on UNIX and other platforms. This patch should be relatively harmless to other platforms, and is a blocker if Mozilla is to run on BeOS under the current network stack. - Matt
setting bug status to New
Status: UNCONFIRMED → NEW
Ever confirmed: true
If it's the same as setting the Synchronous DNS stuff why should we patch the code? I can instead change the build instruction so that one has to include the ac_add_options --disable-async-dns instead no?
Status: NEW → ASSIGNED
Reply to Yannick. The code in nsDnsService.cpp seems to be completely independent of the --disable-async-dns flag. Maybe the "async" code is further down within routines called from this. Maybe only Windows has async code right now. Without this patch, there is really no code that does the *actual* lookup within nsDNSService::InitiateLookup for BeOS. All the actual lookup code is #ifdef'd in per platform, and the default case is no call to a lookup routine. Here's my conjecture. Within nsDNSService the --disable-async-dns flag is a non-operation. Windows has async calls, but UNIX only currently does sync. (Mac looks like it's async too, but I'm not sure) - Matt
More on the above... I found the --disable-async-dns flag. It affects unix-dns.c in that directory. It's only valid if XP_UNIX is also defined... #if defined(XP_UNIX) && defined(UNIX_ASYNC_DNS) As far as I can tell, unix-dns.c is depreciated - it's not included in the Makefile and looks unused. I don't know for sure. I haven't looked at the build rules to determine if they make an exception for that file. I doubt it. I think that UNIX, right now, only has sync. DNS patched in. So, regarding this patch - it is necessary to enable sync. DNS on BeOS until we write our own async DNS handler for BeOS (and get better performance than UNIX to boot when we do!) - Matt
Only Mac and Windows have async implementations at the moment. Perhaps we should change the code to use #ifdef SYNC_DNS rather than XP_UNIX in nsDNSLookup::InitiateLookup(). That way other platforms could specify it as well.
That would be nice Gordon. I'm going to visit that patch later in the day hopefully. Based on comment from Matt seems like we need that patch in at least until we get BONE and/or Async implemented in both net_server/BONE. Can we open another bug for dealing with SYNC_DNS change?
That patch seems like a no-brainer. It actually loaded up some web page which is cool. Now the problem is that the "input" system doesn't seems to work properly. I'm waiting to fix the 55674 completely and then I'll work on that one. I need a reviewer anyone interested ? That patch is only adding #ifdef XP_BEOS where UNIX is set.
sr=mscott..sorry for the delay.
patch committed yesterday
Status: ASSIGNED → RESOLVED
Last Resolved: 18 years ago
Resolution: --- → FIXED
Status: RESOLVED → VERIFIED
You need to log in before you can comment on or make changes to this bug.