All of lore.kernel.org
 help / color / mirror / Atom feed
* RE : XOT
@ 2002-10-08 15:04 John Hughes
  0 siblings, 0 replies; 5+ messages in thread
From: John Hughes @ 2002-10-08 15:04 UTC (permalink / raw)
  To: 'John Hughes', 'Ian Cass'; +Cc: linux-x25

I said:

> I'm having a little problem making Linux xotd work with my
> home grown implementation, but I think I've tracked it down
> to a difference of opinion about when the TCP call should be
> cleared.

The way xotd works is that it clears the TCP call if it
recieves an X.25 CLEAR CONFIRMATION:

	void *tap_writer(void *arg)
	{
	...
	    while (1) {

	        nread = readn(sockfd,(unsigned char*)&header,
	                      sizeof(struct xot_header));
	        if (nread != sizeof(struct xot_header)) {
	...
	             break;  /* abort */
	        }
	...

	    }

	    if (isVerbose)
	        printd("TCP connection closed (tap writer), 
	               lci=%d.",curr_lci);

	    hash_remove(&hash_table, sockfd, lci);

	    close(sockfd);      /* TODO: add to a spare list, 
	                           for use by tap_reader */

This seems reasonable.  *BUT* if xotd SENDS a CLEAR CONFIRMATION,
in the other direction it does not clear the call, it keeps it
open and will re-use it for new connections.  (It used to clear
the call, but as of version 0.04 this is commented out).

Now imagine what happens when two of these xotd's are talking
together - 

xotd#1                            xotd#2         
send clear conf >----\
                      \----------> Get clear conf
                                           |
                        /--------< Clear TCP call
Send new call >----\   /
                    \ /
                     X
                    / 
Eurgh          <---/

Whoops! the new call has been sent on a socket that has been
closed by the other side.
                    



^ permalink raw reply	[flat|nested] 5+ messages in thread
* Re: XOT
@ 2002-10-05 17:41 Ian Cass
  2002-10-07  7:21 ` RE : XOT John Hughes
  0 siblings, 1 reply; 5+ messages in thread
From: Ian Cass @ 2002-10-05 17:41 UTC (permalink / raw)
  To: John Hughes, linux-x25

> I've not had time to look at the code; what's so hacky about it?

It's a userland driver using a ethertap like device. That sort of thing
should really be integrated into the kernel. However, it does work, although
not 100% reliably for me at the moment.

--
Ian Cass





^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2002-10-08 15:04 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
     [not found] <005f01c26e9c$1c353dc0$f70127d5@britannic>
2002-10-08 10:16 ` XOT Ian Cass
2002-10-08 10:52   ` RE : XOT John Hughes
2002-10-08 15:04 John Hughes
  -- strict thread matches above, loose matches on Subject: below --
2002-10-05 17:41 XOT Ian Cass
2002-10-07  7:21 ` RE : XOT John Hughes
2002-10-08  1:53   ` Arnaldo Carvalho de Melo

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.