Linux HAM/Amateur Radio development
 help / color / mirror / Atom feed
From: Ben Gelb <ben@gelbnet.com>
To: tpm@prkele.tky.hut.fi
Cc: linux-hams@vger.kernel.org
Subject: Re: ax25d and STDIN
Date: 28 Sep 2002 01:19:53 -0400	[thread overview]
Message-ID: <1033190393.2665.53.camel@ben> (raw)
In-Reply-To: <Pine.LNX.4.44.0209280150590.31315-100000@oh2bns.ampr.org>

Thanks for helping me with this.

I have made some progress.

I have replaced the line where I originally tried to use fgets, with
this wierd hacky solution:

while(1) {
		$c = fread($in, 1);
		if($c == $RETURN_CHAR) break;
		$in_string.= $c;
}

The program works as intended now.

Using fread with a large length doesn't work, because EOF is never found
in stdin. So it just keeps waiting for the number of bytes specified.

I don't really understand why this works with the SEQPACKET
consideration. I am definitely not getting the whole packet at once,
yet, as I said, it does work.

Does this make any sense to you?

Thanks for you help!

73 Ben



On Fri, 2002-09-27 at 19:09, Tomi Manninen wrote:
> Hi again Ben,
> 
> > When I say 'hangs up' I mean that the user is disconnected from the ax25
> > link. I should have been more specific. For some reason, the link dies.
> > I was using fgets to read data. I tried using fread with length of 1024,
> > 2048, and 10000. It was no different.
> 
> Ok, so it is probably not the SEQPACKET problem either. However I really 
> can't think of any other explanation than a problem with your program.
> 
> As I said when someone connects to your system, ax25d accept()s the
> connection, then fork()s. The parent process (ax25d) closes the socket
> belonging to the incoming connection thereby completely detaching itself
> from it. Ax25d then continues as if it never knew about that connection.
> 
> The child process copies the incoming connecting socket to it's 
> stdin/out/err and then exec()s your program. After that your program has 
> full control over the connection. Only your program can close the 
> connection.
> 
> Well, there is another possibility and that is that the kernel closes the
> connection for some reason. I think some misconfiguration of the kernel
> ax25 support could cause that to happen.
> 
> Anyway my first guess still is that there is something wrong with your
> program. Are you absolutely 100% sure that ax25d manages to start it?  
> Could the read fail for some other reason? Have you tried logging exactly
> what fails? I recommend making your program log each and every possible
> error situation somewhere, maybe the system log.
> 
> -- 
> Tomi Manninen           Internet:  oh2bns@sral.fi
> OH2BNS                  AX.25:     oh2bns@oh2rbi.fin.eu
> KP20ME04                Amprnet:   oh2bns@oh2rbi.ampr.org
> 
> -
> To unsubscribe from this list: send the line "unsubscribe linux-hams" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html



  reply	other threads:[~2002-09-28  5:19 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2002-09-27  5:08 ax25d and STDIN Ben Gelb
2002-09-27  7:52 ` Tomi Manninen OH2BNS
2002-09-27 11:34   ` Ben Gelb
2002-09-27 23:09     ` Tomi Manninen
2002-09-28  5:19       ` Ben Gelb [this message]
2002-09-29 18:26         ` Tomi Manninen
2002-09-29 22:14           ` Ben Gelb

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1033190393.2665.53.camel@ben \
    --to=ben@gelbnet.com \
    --cc=linux-hams@vger.kernel.org \
    --cc=tpm@prkele.tky.hut.fi \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox