[Xastir] Xastir do not recognize 'soundmodem'

Curt, WE7U archer at eskimo.com
Tue Mar 6 10:31:25 EST 2007


On Fri, 2 Mar 2007, Jouni Leskinen wrote:

> Have a 'openSUSE 10.2' installed.
> Loaded recently 'xastir' version 1.8.4-3i586
> from 'http://dg7gt.osth.de/openSUSE-10.2-ham/'-repository using 'yast'.
> Once trying to start 'sm0' in 'Interface'-panel it doesn't go 'UP'.
> >From 'dmesg' output I found a message 'xastir uses obsolete
> (PF_INET,SOCK_PACKET)'.
>
> Googleing didn't bring up much, only some old comment regarding compiling
>  the
> xastir:
>  'On or about line 839 interface.c
> port_data[port].channel = socket(PF_INET, SOCK_SEQPACKET, htons(proto));
> change to:
> port_data[port].channel = socket(PF_INET, SOCK_PACKET, htons(proto));
> and let me know.  Curious about your glibc version and platform too.

We've now got this in our sources:

--------------------------------------------------------------
#if __GLIBC__ >= 2 && __GLIBC_MINOR >= 3
    port_data[port].channel = socket(PF_INET, SOCK_DGRAM, htons(proto));   // proto = AF_AX25
#else   // __GLIBC__ >= 2 && __GLIBC_MINOR >= 3
    port_data[port].channel = socket(PF_INET, SOCK_PACKET, htons(proto));
#endif      // __GLIBC__ >= 2 && __GLIBC_MINOR >= 3
--------------------------------------------------------------

which means we should adapt to the two different calling methods for
the socket() function based on the GLIBC version.  API changes are
fun, aren't they?  ;-)

I'm running OpenSuSE 10.0 at present on several machines, so I
haven't seen the specific problem you describe with 10.2.  I do
however suspect the dmesg message may be a warning and not an error.

Have you set the Xastir executable to be SUID root?  You need to do
this as root in order to access the AX.25 kernel networking:

    su
    chmod 4755 /usr/local/bin/xastir
    exit (from root)

Once you do that, Xastir adopts "root" privileges at the exact
points it needs to in order to open ports, then drops root
privileges when it doesn't need them.


> In the other hand, somebody else may also want to use  the 'soundmodem', so
> it
> would be more practical if the 'xastir' in the repository would be compiled
> to work with present OS. Whom to ask that from?

I believe Xastir _was_ compiled for 10.2, and that's the version you
see in the repository.  The SuSE English mailing list had
announcements from the guy who compiled it and keeps that
repository.  Can't recall his name.


> So, what to do to get a working version of 'xastir' without going to
> compiling?
> Or, am I looking a right thing?

You should also have these options:

*) LSB-Xastir binary.  This one doesn't have AX.25 networking
built-in though.

*) Set up the Soundmodem driver to appear as a KISS port instead of
an AX.25 interface, then connect Xastir's "Serial KISS TNC"
interface to it.  This doesn't require root access or the AX.25
kernel code at all.

Please let us know how it turns out, or if more questions are raised
by my explanations above.

--
Curt, WE7U.   APRS Client Comparisons: http://www.eskimo.com/~archer
"Lotto:    A tax on people who are bad at math." -- unknown
"Windows:  Microsoft's tax on computer illiterates." -- WE7U
"The world DOES revolve around me:  I picked the coordinate system!"



More information about the Xastir mailing list