www.delorie.com/archives/browse.cgi   search  
Mail Archives: djgpp/1992/05/29/17:38:01

Date: Fri, 29 May 92 22:44:02 MES
From: Thomas Heller <PPH93%DMSWWU1A DOT BITNET AT clvm DOT clarkson DOT edu>
Subject: TCPIP server for go32
To: djgpp AT sun DOT soe DOT clarkson DOT edu, Thomas Heller <pph93 AT dmswwu1a DOT bitnet>
Status: O

Hi gang,

I'm trying to bring up an X11R5 server under dos using djgpp.
In the first step I'd like to avoid writing a complete TCP/IP
implementation, so I came up with the following idea:

Use the NCSA telnet libraries to compile a resident TCP/IP SERVER
program. This program runs in real mode and is compiled with MSC 5.1.
It does the following things:
    - Initialize the network code
    - call _dos_setvect(tcp_ip_interrupt) to install an interrupt
      service routine acting as dispatcher for the NCSA subroutines
      (netlisten, netwrite, netread and so on)
    - call 'system("go32 Xserver")' to run the djgpp compiled server.
The djgpp program can than set up some registers, eventually
copy data to the real mode buffer, and issue an int86(tcp_ip_interrupt)
to do the work.


So far, so good.
I patched the NCSA 'minitel' program to use this 'resident' server,
compiled with gcc, and it worked fine.

Using this TCPIP-server to run my Xserver usually also works nice, but
sometimes there are some problems.
Typical output:

      Segmentation Violation referencing address 0
      Exception 14 at eip=90999

Exception 14 is a page fault, and eip=90999 is some machine instruction
behind int86_retjmp. The faulting instruction is 'pop (%eax)'.
I have no idea what this means, and I'm nearly sure my code is ok.

Tracing this bug is very difficult, using debug32 instead of go32 crashes
the machine (instant reboot, without any message), so I always have to
insert some printf's, recompile the module and relink the X-server
on my poor 25MHz 386, and look for the output again.

I'm not sure if this is a problem of
  - the X-server
  - go32
  - NCSA telnet
  - or the combination of all these things.

Also I have doubts whether my idea has really been so good...

Any help would greatly be appreciated.

Thomas Heller, University of Muenster, Germany

(BTW: I'm still using version 1.05.
      And yes, I will try to make this stuff available if it's finished).

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019