2015-09-03 20:01:45 +01:00
|
|
|
28/11/2008 v1.0.8
|
|
|
|
*notes lost, sorry.
|
|
|
|
|
|
|
|
27/05/2009 v1.0.9
|
|
|
|
**production copy stolen. See LICENSE for who did this and my response.
|
|
|
|
|
|
|
|
11/05/2013 v2.0
|
|
|
|
Clean up of some code... I had a copy of 1.0.8 from 2008 I recovered. I
|
|
|
|
did
|
|
|
|
have a version 1.0.9 in production but can't seem to locate it for some
|
|
|
|
reason so starting from memory using 1.0.8. Thanks to Brett WA7V for
|
|
|
|
supplying me with some teaser code :-)
|
|
|
|
|
|
|
|
Updated version! We're on 2.0... finally! (yea, big news right? Maybe
|
|
|
|
not!)
|
|
|
|
|
|
|
|
Moved the "Who" commmand to the list of basic internal node commands.
|
|
|
|
I can't recall why on earth I had it defined with MOTD. Perhaps it may
|
|
|
|
come to me later but for now I can't recall. I may have to move it
|
|
|
|
somewhere else, but I believe it has to do something with logging
|
|
|
|
features or something along those lines. For now, you need to define
|
|
|
|
MOTD as a compile selective to have the <Who (call)> defined.
|
|
|
|
|
|
|
|
Fixed the sysop shell warning, this needed to be a tad more specific
|
|
|
|
in my point of view... then again who am I? Also cleaned up the return
|
|
|
|
prompt as it could be confusing if the incoming connection was done via
|
|
|
|
NetRom. I removed the default FlexNet Identifier out. Now it just says:
|
|
|
|
"Welcome back.".
|
|
|
|
|
|
|
|
In regards to the "Who" command; I see what was going on here and where
|
|
|
|
I left off with it! Logging and the "Who" command pretty much go hand in
|
|
|
|
hand - so they're combined. The initial design of FlexNode was to have a
|
|
|
|
MOTD based off of the logging of when the user last was on, otherwise if
|
|
|
|
they did not exist, push the "new user" screen to them. The down and
|
|
|
|
dirty quick fix is to simply remove it from netrom connections into the
|
|
|
|
system! Who cares if you get a MOTD on a flex/ax25 or a telnet connect
|
|
|
|
into the system!
|
|
|
|
|
|
|
|
With the above said, I changed the sequence of "configure" to ask if the
|
|
|
|
sysop/admin wishes to log user connects into the system. In the future I
|
|
|
|
will either move this to be included with protocols or I may simply hard
|
|
|
|
code it in as a defaulted option, and move the "Who" command as being
|
|
|
|
defined into TCP/IP functions. For now, it's hard coded in as a selected
|
|
|
|
option but will NOT display for NetRom connects.
|
|
|
|
|
|
|
|
While I was at it, I changed some of the routines in the configure script.
|
|
|
|
Nothing major but did improve upon a few things. While doing this, and
|
|
|
|
running "make upgrade" I noticed that flexd.conf was being overwritten!
|
|
|
|
OUCH! I'm surprised this went on for as long as it did. I *think* I did
|
|
|
|
this to force people to add the new lines in flexd.conf that K2BJG/SK had
|
|
|
|
asked me to do.
|
|
|
|
|
|
|
|
Created a man page for flexd.conf(5)! I'm surprised no one asked me why this
|
|
|
|
was missing! It explains further how to create the file. Keep in mind, this
|
|
|
|
also works on Xnet as well as Flexnet. If this doesn't help you figure out
|
|
|
|
how to create this file or edit the sample one... I don't honestly know what
|
|
|
|
to tell you. In doing such, it also forced me to change the generated
|
|
|
|
Makefile so that "install upgrade" and "install man" installs it.
|
|
|
|
|
|
|
|
Changed the licensing! This is (I'll admit) very personal and _must_
|
|
|
|
remain as is! I could fill a TB hard disk with reasons and debates
|
|
|
|
as to why it's no longer GPL code. Please insure you are in an area
|
|
|
|
where you can use this code. Thank you.
|
|
|
|
|
|
|
|
Fixed an ANSI bug I had in the "Users" command which was driving me nuts!
|
|
|
|
On NetRom, it would change the prompt to magenta which it shouldn't. What
|
|
|
|
I did as a fix was to force a removal of ANSI on the prompt for NetRom
|
|
|
|
based connects... simple enough. There may be other ANSIs for me to fix
|
|
|
|
and I'll cross those bridges when I get to them. Found another in gateway.c
|
|
|
|
and fixed the netrom ANSI to properly reflect that once a connection was
|
|
|
|
made, it was "systems GO" (green) without changing the Node's ID string.
|
|
|
|
|
|
|
|
Created a COLORS file which somewhat explains the hows/whys of not only
|
|
|
|
how I came up with a schema, but when it should and should NOT be used.
|
|
|
|
It may also be used as a quick reference guide for the local sysop. It's
|
|
|
|
a nice little cheat sheet one may print and keep near their keyboard if
|
|
|
|
they want.
|
|
|
|
|
|
|
|
Added text to both the colors.hlp and help.hlp file for a users better
|
|
|
|
understanding of the color schema and how to gain colors to their terminal
|
|
|
|
if they so choose to have it. See my wishlist below for more information on
|
|
|
|
where I wish to go with this.
|
|
|
|
|
|
|
|
Added an item to the Wish List located further below in this file. With so
|
|
|
|
many spend-thrifty hams, do I really need to go through the code and match
|
|
|
|
it with the most up-to-date version(s) of GCC for compiling? I originally
|
|
|
|
developed the code using GCC version 2.95, now I'm compiling it on version
|
|
|
|
4.2.4 and it's not showing any errors during compile. If you have a specific
|
|
|
|
version of GCC you're using, please submit that and proper hardware for me
|
|
|
|
to run it on and I'll be more than happy to march forward :-)
|
|
|
|
|
|
|
|
Changed the inactivity timeout message so that it does NOT show
|
|
|
|
the FlexNet node call and gives a more specific message as to why the user
|
|
|
|
was disconnected. This was a call I originally edited and have now cleaned
|
|
|
|
up in node.c. There may be more of such messages. I can only test so much
|
|
|
|
and for so long :)
|
|
|
|
|
|
|
|
Made some more ANSI cleanups - in regards to Status and Users commands. I
|
|
|
|
had them as magenta and they should only be bright white as they don't
|
|
|
|
fit into any real category except for local system informations. For these
|
|
|
|
I had to make routine changes as well as ANSI changes in user.c and in
|
|
|
|
command.c. Also fixed the ANSI for version in NetRom. It currently had none.
|
|
|
|
This was done in command.c. Also cleaned up Links and Routes ANSI in command.c
|
|
|
|
and other places where needed. Originally I had the Routes as yellow which
|
|
|
|
even though it points the ax25-interface that NetRom is encapsulated under,
|
|
|
|
it's really more for NetRom "route"-ing... so changed it to cyan to keep with
|
|
|
|
the schema.
|
|
|
|
|
|
|
|
Found a disaster in ANSI routines for the Links command and the variant
|
|
|
|
switches along with it! The ANSI ran to the table which I did not want
|
|
|
|
to have happen and I believe I was very diligent in cleaning this up
|
|
|
|
in ver 1.0.8 or 1.0.9. In any event, I recall doing this and now I have
|
|
|
|
repeated my work... thus taken time away from more important tasks
|
|
|
|
*sigh*.
|
|
|
|
|
|
|
|
These were worked in router.c. I also cleaned up other places where ANSI
|
|
|
|
ran over other strings that it shouldn't, and where it may have engaged
|
|
|
|
prior to where it should. Such instances are when it would highlight over
|
|
|
|
the Node-ID string (ex: MYNODE:mycall-5}). This really made my skin crawl
|
|
|
|
and I *know* I fixed this before... who knows perhaps I made a cleaner
|
|
|
|
routine than I had.
|
|
|
|
|
|
|
|
I recall doing a LOT of code clean-up, and it appears I need to revisit this
|
|
|
|
again. When I'm done, hopefully I can get rid of a few hundred lines of code
|
|
|
|
that's simply commented out for testing purposes only. The sizes of your
|
|
|
|
binaries should not be affected by this and I believe I've been diligent
|
|
|
|
to clean up the configure script to somewhat automate this process for you.
|
|
|
|
This task will be excessively time consuming! If anything it'd be an excuse
|
|
|
|
for a maintenance release!
|
|
|
|
|
|
|
|
Fixed a minor routine in ipc.c in regards to the Msg command. I deliberately
|
|
|
|
did NOT add ANSI to this because in a way the Msg command I feel is a tad
|
|
|
|
intrusive such as with an instant message, however I did clean up how an
|
|
|
|
incoming message was handled to the recipient. It now (in my opinion)
|
|
|
|
shows a cleaner screen.
|
|
|
|
|
|
|
|
I found Craig Small's old axdigi code and made an elf compile. In layman's
|
|
|
|
terms, it's a static binary and should run as-is for you. This binary
|
|
|
|
claims to be fully automagic in regards to crossport digipeating unless you
|
|
|
|
make changes to your interfaces in which you should restart it. This binary
|
|
|
|
also should NOT require /etc/ax25/axdigi.conf anymore. I have the other
|
|
|
|
binary so if you think you need it, let me know.
|
|
|
|
|
|
|
|
Added an install for axdigi in Makefile.in under "install bin". Previously
|
|
|
|
this file was not included, now it is. I may write a shell script to launch
|
|
|
|
the daemons for you... keep an eye on this file for further info!
|
|
|
|
|
|
|
|
26/05/2013 v2.1
|
|
|
|
|
|
|
|
Fixed a bug in gateway.c where the finger "stop" ansi was white instead
|
|
|
|
of red (for stop). This was one I missed not having proper routing yet
|
|
|
|
to fully test. Thanks Brett WA7V for the link!!
|
|
|
|
|
|
|
|
Made another change in gateway.c in regards to the handling of the
|
|
|
|
flexnet destinations listing when using Flex/AX25 ONLY. There is a
|
|
|
|
reason for this (believe it or not) and that's in the shell and netrom
|
|
|
|
interfaces they both begin the destinations list with the string
|
|
|
|
"Flexnet Destinations:". This may cause neighbor URONode/AWZNode/etc
|
|
|
|
systems using flexd to improperly parse flexnet destinations from each
|
|
|
|
other. At the moment, I don't have the facilities to properly test this
|
|
|
|
but am hoping to work something out.
|
|
|
|
|
|
|
|
Thanks to Bob K2JJT, I added an include for socket.h in ipc.c. While I
|
|
|
|
never saw any errors here, I don't believe I've ever tested or compiled
|
|
|
|
on a Slackware system... Bob uses Slack. K2JJT reported adding this to
|
|
|
|
ipc.c helped him fix issues with his compile as it was griping about
|
|
|
|
AF_NETROM. Adding it here made no difference so since it helps Slackware
|
|
|
|
I'm all for being multi-distro compatable as much as humanly possible.
|
|
|
|
|
|
|
|
In reviewing 2.0 changes, it had me look more into the shell function
|
|
|
|
for sysops. I made a change that more defines which shell you may be
|
|
|
|
in when you do a 'w' or a 'who' in a linux shell via the node. This
|
|
|
|
was changed in system.c
|
|
|
|
|
|
|
|
Made a patch to node.c where if called from a shell, it would coredump.
|
|
|
|
Now, if it's called from a shell it simply exits back to the shell
|
|
|
|
prompt. I believe the same is in other "node" variants to which
|
|
|
|
the documentation directs the local sysop not to call the node from
|
|
|
|
a prompt, however KI6ZHD felt this was an issue. Being harmless in
|
|
|
|
nature to the function of my design I felt it wasn't harmful to add
|
|
|
|
it in. This patch was provided by David Ranch KI6ZHD. Thanks to him
|
|
|
|
for providing this, and eliminating any accidental core files on your
|
|
|
|
hard drives, and to Steven, K6SPI for coding the patch.
|
|
|
|
|
|
|
|
Thanks to David KI6ZHD for motivating me to do something I wanted to do
|
|
|
|
but put it way on the back burner, and to Barry K2MF for his elite C
|
|
|
|
skills. MHeard now will only print up to the 20 most recent heards. With
|
|
|
|
the initial routine, it would just dump either the global list heard
|
|
|
|
or if the user selected a specific interface the entire list for that
|
|
|
|
interface. At first, it worked fine for telnet and/or ax25/flex
|
|
|
|
connections but in NetRom it was double spacing. This was fixed by me. I
|
|
|
|
chose 20 to leave room for system headers and prompt returns. In a
|
|
|
|
standard 80x25 terminal screen, with a full listing, this should fill
|
|
|
|
the entire screen without a need for the end user to scroll up and
|
|
|
|
should help keep some traffic down on a busy network.
|
|
|
|
|
|
|
|
Made a change in gateway.c to eliminate the "trying state" message only
|
|
|
|
in NetRom when trying to connect to a remote NetRom node. This should
|
|
|
|
keep the node more in compliance with Software2000 specifications.
|
|
|
|
|
|
|
|
There was chatter within the BPQ32 user group on Yahoo that URONode was
|
|
|
|
not releasing any keep-alive timers. Please, this is NOT the duty of
|
|
|
|
a node Front End to control what the native protocol stack is designed
|
|
|
|
to do. This is totally sysop configurable. To flag this I strongly
|
|
|
|
suggest the following be added to your scripts:
|
|
|
|
echo "600000" > /proc/sys/net/ax25/ax0/idle_timeout
|
|
|
|
echo "600000" > /proc/sys/net/ax25/ax1/idle_timeout
|
|
|
|
echo "600000" > /proc/sys/net/ax25/ax2/idle_timeout
|
|
|
|
and so on... one line for each ax25 interface. This will break the
|
|
|
|
keep-alive virtual circuit Netrom AND IP will use for transport, and
|
|
|
|
thus break your IP as well. If you're running IP through an ax25
|
|
|
|
interface I suggest you leave this defaulted to 0 (disabled).
|
|
|
|
|
|
|
|
Rewrote the auto-find routine in gateway.c in do_connect so that first
|
|
|
|
order of preference for connects searches the destis table from flexd
|
|
|
|
BEFORE checking the netrom nodes and mheard tables, THEN it will search
|
|
|
|
for the destination in the netrom nodes if not found in the destis
|
|
|
|
table and prior to searching the mheard list. If you don't use flexnet,
|
|
|
|
then this shouldn't be an issue for you. As of this time, I'm unsure
|
|
|
|
if this would create any bugs if you don't define FlexNet during
|
|
|
|
the configure procedure. If it does, please file a report on the
|
|
|
|
online forum at https://www.n1uro.net/forum for me!
|
|
|
|
|
|
|
|
Made some changes in util.c and gateway.c in regards to duplicate ax25
|
|
|
|
route connection attempts. If you attempt to connect twice through the
|
|
|
|
same path, same call, etc, to clarify the error handling. This was
|
|
|
|
something I worked with K2MF on in regards to MFNOS. This does not mean
|
|
|
|
you can't make a connect on the same interface you came in on, you will
|
|
|
|
get a loop warning but the connect will attempt. If you connect from
|
|
|
|
the node, and try to connect to <callsign>, loop back into the node,
|
|
|
|
and try to connect to the same <callsign> again, you will NOT be allowed
|
|
|
|
to connect. URONode will tell you that a duplicate connection is not
|
|
|
|
allowed.
|
|
|
|
|
|
|
|
Cleaned up the do_routes routine in command.c. Shortened "Quality" to
|
|
|
|
"Qual" and renamed "Destinations" to "Nodes". After all, netrom doesn't
|
|
|
|
really use "Destinations", that's more a flexnet thing. Still more
|
|
|
|
cleanup to do in there *sigh*.
|
|
|
|
|
|
|
|
While I was at the do_routes, I noticed missing ansi in do_routes and
|
|
|
|
do_nodes. This has been fixed (and was previously in 1.0.10). I also
|
|
|
|
cleaned up the ansi routine in do_destinations in router.c to match
|
|
|
|
that of the netrom counterpart routines in command.c. Again, this was
|
|
|
|
done in 1.0.10 *double sigh*.
|
|
|
|
|
|
|
|
Rather than include an i686 elf of Craig Small's axdigi cross-port
|
|
|
|
digipeater which probably would NOT work on a Raspberry PI, I added
|
|
|
|
it into the Makefile by default. I also added an additional routine
|
|
|
|
in the configure script to check to insure that this file is made.
|
|
|
|
|
|
|
|
I also had to update axdigi.c so that it wouldn't error on the newer
|
|
|
|
(as if I run newer ha!) gcc. This was done for strcpy so that it
|
|
|
|
wouldn't produce errors as it does. I suspect in the "OLD" days of
|
|
|
|
linux/gcc it may have been OK as I consider Craig to be one of the
|
|
|
|
"village elders" of the packet system on linux.
|
|
|
|
|
|
|
|
Added a man page for axdigi. READ THIS VERY CAREFULLY!! To digi through
|
|
|
|
linux you *must* know some specific information and you might have to
|
|
|
|
educate your users on how exactly to cross-port digi through you if
|
|
|
|
they intend to do such. It's not something normally visible to them!
|
|
|
|
I may add a node-help file on digi...but for now please study the man
|
|
|
|
page on how. It works and works very slick as I've been testing it for
|
|
|
|
a couple of months. Mheard also will learn digi paths and use them to
|
|
|
|
connect to digipeated nodes if need be.
|
|
|
|
|
|
|
|
Cleaned up do_nodes in command.c. Shortened Quality to Qual, and the
|
|
|
|
equivilant of Obs. This will use less chars per line when doing a
|
|
|
|
node <node> or node * . I've been wanting to do this but saved
|
|
|
|
it for one of those rainy day things. Guess today was that rainy day?
|
|
|
|
|
|
|
|
Cleaned up more code and hope to have it finished before 2.1's final
|
|
|
|
release. So far I'm doing flexd.c at this point. FYI; code cleanup will
|
|
|
|
be a 2-fold process. First; I'll be formatting each file so it's at a
|
|
|
|
level of consistency. Second, things I have commented out for testing
|
|
|
|
that aren't needed may be permanently removed. I may leave a few things
|
|
|
|
in in case someone desires to say add a 'Welcome." message to netrom
|
|
|
|
(which is NOT Software2000 compliant!).
|
|
|
|
|
|
|
|
Speaking of which, I see I introduced a bug when ANSI is defined for
|
|
|
|
a specific user which violates Software2000 specs. I believe I did this
|
|
|
|
as a fail-safe in the prompt routine however now I see it's not needed
|
|
|
|
with all the other ANSI cleanups I've done. This change (deletion)
|
|
|
|
was done in node.c where I forced a shutoff of ANSI upon NetRom connects
|
|
|
|
only, as NetRom does not display the MOTD.
|
|
|
|
|
|
|
|
I rewrote a bit of the reconnect string. The "reconnect" in uronode.conf
|
|
|
|
should be set to OFF. All connections with the exception of NetRom WILL
|
|
|
|
reconnect. NetRom defaults to off, however with the {S|D} flags you may
|
|
|
|
manually request you stay connected. Eventually I will remove this flag
|
|
|
|
in the file so it will become moot. Please change it now to OFF! This
|
|
|
|
was done in gateway.c. Previously, these flags were moot in NetRom
|
|
|
|
connects. With the default to OFF, this keeps the NetRom in URONode
|
|
|
|
Software2000 compliant. A NetRom disconnect should *never* send any
|
|
|
|
text back whether it's a user or robot/script. Now a user can request
|
|
|
|
staying connected to URONode from a incoming NetRom connection. For
|
|
|
|
clarity sake, this only affects the user IF they connect INTO URONode
|
|
|
|
via NetRom. The "S" flag works for ax25/Flex/NetRom outbound connects.
|
|
|
|
A user connecting INTO URONode via ax25/Flex/IP will still automatically
|
|
|
|
be reconnected after an outbound connect.
|
|
|
|
|
|
|
|
N1UAN reports make install fails to install the config files. He's
|
|
|
|
correct. Changed Makefile.in so that "make install" also includes
|
|
|
|
make installconf which run by itself will install just the config
|
|
|
|
files for /etc/ax25.
|
|
|
|
|
|
|
|
I'm also working on changing the configure script to have some
|
|
|
|
"eye candy". This will be a continuing work in progress. You'll see it
|
|
|
|
as it comes. You will need the package "whiptail" in order to see this
|
|
|
|
new configuration routine. I don't know if this is standard amongst
|
|
|
|
ALL distributions, however I do know it comes default in debian and
|
|
|
|
debian based systems. If this *is* too much of an issue, I'll revert
|
|
|
|
back to the old method.
|
|
|
|
|
|
|
|
Almost forgot about an ANSI bug in extcmd.c where if you created an
|
|
|
|
external command in the node and the user was in via NetRom, when the
|
|
|
|
node issued "Welcome back." the ansi did NOT clear the color. I found
|
|
|
|
this in ver 2.0 and thought I fixed it, apparently not (age catching
|
|
|
|
up to me?) In any event, this is now fixed and working properly again.
|
|
|
|
Since most people don't use the +512 Color flags I'm sure it was missed.
|
|
|
|
|
|
|
|
Found a non-critical bug in cmdparse.s in regards to running external
|
|
|
|
commands - where it would automatically input a line feed before it
|
|
|
|
executed the command. This was the only routine which did this. A
|
|
|
|
routine like this really got under my skin and I was determined to find
|
|
|
|
and fix this finally... this was a routine I never changed, and that
|
|
|
|
was halted today (28 July 2013). Instead of totally removing this line
|
|
|
|
of code, I changed it to now display "Executing command... " and where
|
|
|
|
ANSI is defined, it is, naturally, green.
|
|
|
|
|
|
|
|
Found a non-critical bug in the Info command where it would show as
|
|
|
|
the first string to the user: "Help command for help" then it would push
|
|
|
|
the uronode.info file. This is very wrong. While the Info command does
|
|
|
|
use the routine of do_help in command.c, Info is an independent internal
|
|
|
|
command and this should not have occurred. This is now fixed with ANSI
|
|
|
|
if permissions display ANSI.
|
|
|
|
|
|
|
|
Updated the outdated INSTALL text document. It had some now misleading
|
|
|
|
pieces of information in it as some paths and make options have been
|
|
|
|
changed. Since no one has said anything to this, I'll assume no one
|
|
|
|
RTFM? (not surprised! email me and say in the subject line: surprise!
|
|
|
|
if you do!)
|
|
|
|
|
|
|
|
Went through the example config files and heavily commented them so for
|
|
|
|
new installs, it explains each line more specifically in hopes less
|
|
|
|
misconfigured systems will be created. I also found some typos as to
|
|
|
|
man page references - fixed. Also updated some of the help files in
|
|
|
|
regards to the new changes in relation to the "stay" sub command when
|
|
|
|
connecting out from URONode.
|
|
|
|
|
|
|
|
Note: in node.c I modified the pre-provided segfault patch to now
|
|
|
|
push text to the local console instructing the local sysop or user
|
|
|
|
what/how to properly execute the node. This will (I hope) force
|
|
|
|
some RTFM to occur. Syslog logging was also added in the event this
|
|
|
|
occurs. Actually, after thinking about this, I figured I'd dummy it up
|
|
|
|
a bit and have it launch a login anyway. This depends that the local
|
|
|
|
administrator/sysop -properly configures their box- and does the
|
|
|
|
following:
|
|
|
|
1 - add a line in /etc/services to point tcp/3694 to uronode
|
|
|
|
2 - add uronode as a service in inetd or xinetd
|
|
|
|
3 - insure you have a local telnet client on the box
|
|
|
|
4 - enjoy!
|
|
|
|
You will be reminded about this during the login, and syslog will
|
|
|
|
reflect a local console login as well.I strongly urge you not to open
|
|
|
|
2 shells and tail your syslog in one while you try to run URONode from
|
|
|
|
the console. Wink
|
|
|
|
|
|
|
|
Cleaned up a minor routine in do_nodes which lays in command.c where
|
|
|
|
under an incoming NetRom connect, a user who did "Nodes" received
|
|
|
|
an extra line feed if the columns were all equal at 4 per row. This
|
|
|
|
was a bit under my skin... fixed/changed. While I was at it, I changed
|
|
|
|
the output string when doing "Nodes *" from 'Nodes:' to "Detailed
|
|
|
|
nodes listing:' which actually makes more sense since it is a detailed
|
|
|
|
list.
|
|
|
|
|
|
|
|
Fixed a minor bug in the way the prompts were handled under certain
|
|
|
|
telnet clients. This was reported also by Marius Petrescu yo2loj. Under
|
|
|
|
telnet, I added a carriage return (/r) along with the line feed (/n).
|
|
|
|
Thank you Marius for the report.
|
|
|
|
|
|
|
|
Slightly rewrote the way meminfo() was being handled. While I may have
|
|
|
|
created a bug in 2.4 and lower kernels, this now should work in 2.6 and
|
|
|
|
higher kernels. I guess the phrase "if it's not broke don't fix it"
|
|
|
|
doesn't apply anymore?
|
|
|
|
|
|
|
|
FINALLY - split the CHANGES file into a new page!! This makes it easier
|
|
|
|
for me to input the change notes instead of having to scroll down for 30
|
|
|
|
seconds Smile Call me lazy but don't call me late for supper! <G>
|
|
|
|
|
|
|
|
04/09/2013 v2.2
|
|
|
|
|
|
|
|
Made multiple .c file edits to reflect the new libax25-devel .h files.
|
|
|
|
Currently these were pointing to the older kernel_*.h files and on newer
|
|
|
|
linux systems was preventing compile. Now URONode should work fine.
|
|
|
|
|
|
|
|
Added Marius Petrescu to the URONode team! With his c version of ripv2d,
|
|
|
|
Marius will (and already has) make a huge impact on the future of
|
|
|
|
URONode! Welcome Marius to the team! Made a reflection of this in the
|
|
|
|
configure script.
|
|
|
|
|
|
|
|
Marius brought to my attention the issue in the log timer routine where
|
|
|
|
it was forcing 32-bit. He supplied code to fix this in both system.c and
|
|
|
|
flexd.c.
|
|
|
|
|
|
|
|
While in discussions, Marius brought it to my attention that Ubuntu (and
|
|
|
|
this includes Mint and any other Ubuntu backed distributions) where they
|
|
|
|
run as he calls it a "fortified libc6" which segfaults on every (what it
|
|
|
|
thinks is suspicious) buffer accesseD to prevent overflows however this
|
|
|
|
libc6 itself causes buffer overflowing. Why on earth did the Ubuntu team
|
|
|
|
ever do this?? Anyway, we're investigating how we're going to handle
|
|
|
|
this issue. I personally have verified URONode to compile and work on
|
|
|
|
the new kernel 3.x series on Debian and Fedora.
|
|
|
|
|
|
|
|
In "fixing" the prompt bug earlier reported by Marius, I made an error in
|
|
|
|
the non-ANSI telnet prompt where the (/r) was also chopping off the first
|
|
|
|
letter of a callsign! OOPS! This was reported by Ted K1YON. Fixed.
|
|
|
|
|
|
|
|
** Key news of this release: ROSE is a LOT more user friendly, AND it also
|
|
|
|
has the ability to display color screens to the end user. This now means
|
|
|
|
that URONode is an 8-prompt system! 4 main prompts, and 4 color prompts.
|
|
|
|
The prompt system is designed to show the end user what protocol/method
|
|
|
|
they used to connect into URONode with. Also proper SSIDs are displayed
|
|
|
|
to match that of how the end user connected. I did this because seeing
|
|
|
|
other nodes, they don't and when (as a user) connect into, for example,
|
|
|
|
a NetRom node who's ssid is -12 and the node displays something
|
|
|
|
-=totally=- different, I often wonder if I connected to the proper node.
|
|
|
|
|
|
|
|
The new prompt schema is:
|
|
|
|
telnet : user@<sysop>.ampr.org:/uronode$
|
|
|
|
netrom : <none> - this keeps in spec with Software2000
|
|
|
|
flex/ax25: =>
|
|
|
|
rose : -=>
|
|
|
|
|
|
|
|
Each matches with its own colors as well if you run the ansi flag. The
|
|
|
|
goodbye message for rose is also different than it is for flex/ax25 and
|
|
|
|
telnet links. The new RoseID flag is used as a personalized message to
|
|
|
|
the remote user to say a nice goodbye, and to remind them of your Rose
|
|
|
|
information. The (V)ersion command also has a rose column added to show
|
|
|
|
the remote user your rose information. An example of this is included
|
|
|
|
in the uronode.conf.5 man page.
|
|
|
|
|
|
|
|
With such, a new uronode.conf file string called RoseID has been created.
|
|
|
|
Details are in the file. You must keep the single quotes ' ' around the
|
|
|
|
string for it to display properly. You have been warned. Also, I've added
|
|
|
|
a default ExtCmd called ROSe so those who connect remotely can get rose
|
|
|
|
addresses for now. I'm sure I'll be changing this in the future.
|
|
|
|
|
|
|
|
Also, I decided to eliminate the permissions flag for use of hidden interfaces.
|
|
|
|
Reason being is if a sysop flags an interface to be hidden, they did so for a
|
|
|
|
specific reason. With that, I moved the ANSI flag from 512 in it's place to
|
|
|
|
64. This was also changed in the man page uronode.perms.5.
|
|
|
|
|
|
|
|
In regards to PBBS forwarding, I -=URGE=- you to read BBS.txt. Since
|
|
|
|
there's no need for me to rewrite it, please heed my warning here. This
|
|
|
|
is not something critical, just informational to help you improve your
|
|
|
|
link with URONode systems.
|
|
|
|
|
|
|
|
Fixed a cosmetic bug in regards to windows->linux emulation where when
|
|
|
|
logging in, sentences were not getting properly wrapped. This was done
|
|
|
|
in node.c. Other emulations such as PuTTY do not give you in windows
|
|
|
|
full linux-type emulation. Higher profile programs such as SecureCRT
|
|
|
|
will. For a free/shareware program I suggest MobiXterm. This also
|
|
|
|
gives you a raw Xserver emulated screen. Of course, there are no issues
|
|
|
|
if you use a standard linux console.
|
|
|
|
|
|
|
|
Added a .pid file to flexd, code supplied by Jaroslav, OK2JRQ and other
|
|
|
|
patches such as installer edits, etc. The only patches he supplied that I
|
|
|
|
have yet to add is the install location patch, and one he feels is good
|
|
|
|
for non-interactive. Source installs need to be interactive, if not you
|
|
|
|
would not be compliling - just my honest opinion. I can see in the case
|
|
|
|
of a possible distro package this may not be desired. The distros for now
|
|
|
|
can hash that out on their own.
|
|
|
|
|
|
|
|
Many more cosmetic bugs fixed/changed. Moreso in ROSE but I did find a
|
|
|
|
few others in there which needed my attention. I have noticed windows terminal
|
|
|
|
based programs such as PuTTY have an issue determining \n based line feeds
|
|
|
|
vs \r carriage returns in C code. This mainly seems to affect the various
|
|
|
|
8 prompts. It seems if I put both in the code, Windows is happy but *nx
|
|
|
|
may issue an added line-feed. I had thought I cleaned these all up but
|
|
|
|
I introduced a couple old ones and some new ones with the ROSE work.
|
|
|
|
|
|
|
|
01/10/2014 -2.2 released!
|
|
|
|
|
|
|
|
02/10/2014 - 2.2.1
|
|
|
|
|
|
|
|
Improperly packaged an old flexd.c! This one should compile. This is NOT
|
|
|
|
the one I want, I've been fighting with flexd for a while now.
|
|
|
|
|
|
|
|
uronode.conf may not update. If it does, you will need to redo yours from
|
|
|
|
scratch. Look at the one in the etc/ directory in the source and add the
|
|
|
|
line for RoseId. This is required. Thanks for the above reports from
|
|
|
|
VE1JOT and SP2LOB.
|
|
|
|
|
|
|
|
Removed the need to have quotes around the RoseId string in URONode.conf. I
|
|
|
|
found it unneccessary to have to do this. Keep the string togther ex:
|
|
|
|
callsign-ssid@1000,200000 now is fine. I also find this cleaner.
|
|
|
|
|
|
|
|
12/10/2014 - v5.1
|
|
|
|
URONode release ver 51 is out!.. um.. I mean its main developer *sigh*
|
|
|
|
|
|
|
|
21/12/2014 - v2.3
|
|
|
|
|
|
|
|
Added Bob Tenty ve3tok to the development team and created a subversion
|
|
|
|
server. Please welcome Bob to the team!
|
|
|
|
|
|
|
|
Bob Tenty ve3tok reports when NOT using the official ax25 packages and
|
|
|
|
on Ubuntu, the node when compiled natively may buffer overflow. He made
|
|
|
|
changes to buffers in gateway.c, router.c, and flexd.c which prevent this.
|
|
|
|
I have incorporated these changes and there's no ill effect on non Ubuntu
|
|
|
|
distros.
|
|
|
|
|
|
|
|
Fixed a bug I introduced into the ROSE ansi prompt where it wasn't
|
|
|
|
executing a proper \n because I inadvertantly removed it. Restored.
|
|
|
|
|
|
|
|
Fixed a warning in the axdigi code. Now that I'm on a more modern system
|
|
|
|
I can fix these things as now I can see them better. This was also brought
|
|
|
|
to my attention by Tomasz SP2L... thanks Tomasz!
|
|
|
|
|
|
|
|
Figured out a way to compile and have it NOT segfault under Ubuntu. While
|
|
|
|
I'll admit for the time being it's somewhat of a hack, but it *does* work
|
|
|
|
for Ubuntu. There are warnings on Ubuntu compiles that don't exist on other
|
|
|
|
platforms - interesting to say the least - but I think I see a relation
|
|
|
|
between the warnings and the pervious Makefile. The prior statement is being
|
|
|
|
left in as a comment deliberately as I hope to try and revert back to
|
|
|
|
the previous method.
|
|
|
|
|
|
|
|
**IMPORTANT: Per distro downstreams, I've been asked to change the paths
|
|
|
|
of the URONode installs. Now your uronode and binaries will be placed in
|
|
|
|
/usr/local/sbin instead of /usr/sbin. Config files will be in
|
|
|
|
/usr/local/etc/ax25 instead of /usr/ax25/. Node files will now be in
|
|
|
|
/usr/local/var/ax25/node or flexd instead of /var/ax25/node or flexd.
|
|
|
|
If you're a thrifty ham such as myself, you'll already have symlinks created
|
|
|
|
for easier management, so that /etc/ax25 is symlinked into /usr/local/etc/ax25
|
|
|
|
and so forth. Local files I can think of that would need editing if you use
|
|
|
|
my standard config:
|
|
|
|
/usr/local/bin/ax25
|
|
|
|
/etc/xinetd.d/uronode
|
|
|
|
/etc/xinetd.d/telnet (?)
|
|
|
|
/etc/ax25/ax25d.conf
|
|
|
|
|
|
|
|
Added a compile flag to keep Ubuntu happy. This and other routines were at the
|
|
|
|
suggestions of YO2LOJ and VE3TOK.
|
|
|
|
|
|
|
|
SYSop command does NOT spawn a shell anymore. This is due to the changes
|
|
|
|
with the UNIX98 file system. I'm debating on whether or not I wish to
|
|
|
|
continue to keep this or possibly eliminate this (for possible security
|
|
|
|
reasons). I see both PROs and CONs with it. Note: this ONLY affects those
|
|
|
|
systems which force the use of /dev/ptmx in which one needs to use SOCAT
|
|
|
|
to create static /dev/tty*# and /dev/pty*# pipes. This only affects the
|
|
|
|
Kernel 3-series in which the older /dev/pty# system is no longer used and
|
|
|
|
a master ptyx is used.
|
|
|
|
|
|
|
|
I did notice UBUNTU made changes to their libraries last year (2013) in
|
|
|
|
which URONode compiled but failed to execute any direct disk read/write
|
|
|
|
routines. In any event, they fixed this bug late fall 2014 (at least in
|
|
|
|
12.0.4LTS). One of the nice things about Ubuntu doing this is that you
|
|
|
|
can add a line in your grub configuration to have the kernel create a
|
|
|
|
number of satic pseudo terminals upon boot. Debian, however, breaks this
|
|
|
|
ruleset. I contacted my downstream and he hasn't responded. This would
|
|
|
|
help a sysop gain a shell... however also creates a possible backdoor.
|
|
|
|
|
|
|
|
Edited gateway.c so that the callsign-ssid is force altered on outbound
|
|
|
|
ax25 connect requests regardless of how the inbound connect was initiated.
|
|
|
|
VE1JOT reports that when a user telnets in, and gateway ax25 connects out,
|
|
|
|
the callsign-0 is kept. This should be altered to a -15. This was always
|
|
|
|
true when inbound connects were ax25 and also outbound connects the same.
|
|
|
|
VE1JOT reports this is troublesome, and in some cases causing DM frames
|
|
|
|
to occur. While I tested this and found this not to be true on my own
|
|
|
|
system, I did make a code adjustment to handle this.
|
|
|
|
|
|
|
|
Fixed a bug in config.h which may cause flexd not to find the proper
|
|
|
|
config lines. When I changed file paths I missed a couple. Now the system as
|
|
|
|
a whole should be consistant in regards to config files.
|
|
|
|
|
|
|
|
Removed the need for MyGate and MyRange in flexd.conf! This was added by
|
|
|
|
the request of K2BJG/SK so that the flexgate itself would be listed. Actually
|
|
|
|
it is in the LINKS file. Unfortunately when trying to connect to a listed
|
|
|
|
flexgate, it would try to digi via itself! Not good. While I was at it, I
|
|
|
|
also increased the buffer from 512 to 1024. This may help with those gates
|
|
|
|
that insist on making L A R G E MOTDs.
|
|
|
|
|
|
|
|
|
|
|
|
14/02/2015 - v2.3.1
|
|
|
|
Happy Valentine's day to the one we all love: Our Compilers!
|
|
|
|
This is a critical security patch! I URGE you *all* to recompile.
|
|
|
|
If anything, hopefully you've all patched your systems against GHOST.
|
|
|
|
For those who wish to test their system I have a tool on my ftp site
|
|
|
|
which can do this for you.
|
|
|
|
|
|
|
|
Through Paul G4APL, Andy G0HXT reported a condition on Ubuntu-based
|
|
|
|
systems in which a user may enter a malformed NetRom connect string
|
|
|
|
into URONode and the node will buffer overflow. I fixed this in
|
|
|
|
gateway.c limiting the string for searching connects on the first parameter.
|
|
|
|
Also changed the error output to the user so that they may know the error
|
|
|
|
may be their own.
|
|
|
|
|
|
|
|
Made edits to all the man pages and the INSTALL file as suggested by Tomasz
|
|
|
|
SP2L. I also grepped for certain strings in other files and made a change
|
|
|
|
to the README file as well.
|
|
|
|
|
|
|
|
Changed the version in node.h to reflect this security patch.
|
|
|
|
|
2015-11-22 14:56:30 +00:00
|
|
|
21/11/2015 - v2.4
|
|
|
|
|
|
|
|
Made a change to gatway.c in which during an incoming ax.25 connect, if
|
|
|
|
the user gateways out to another node/rose/flex/etc and does NOT request
|
|
|
|
to "s"tay on the node, they will be disconnected from the node upon
|
|
|
|
disconnect at the remote. No termination message from the node will be
|
|
|
|
displayed either as to not conflict with a possible exit message from
|
|
|
|
the remote. If the user DOES request to remain on the node, they will
|
|
|
|
be presented with the return message and a disconnect will also generate
|
|
|
|
a disconnect message. This should make the node a bit more HF friendly.
|
|
|
|
|
|
|
|
Made a change in node.c and in command.c in regards to the prompts.
|
|
|
|
This idea came via Mitch AB4MW. In the main loop, the buffer was already
|
|
|
|
called to flush. By eliminating certain flush routines and only calling
|
|
|
|
them where they're truly required, the functions now have their own
|
|
|
|
buffer flushing and the prompts have their own. This also should help
|
|
|
|
reduce the number of frames required while keeping the prompts themselves
|
|
|
|
intact. I have noticed for quite a while that it was possible to send
|
|
|
|
a colored prompt BUT the ANSI reset code took it's own frame to follow
|
|
|
|
the prompt leaving the user's input in color. While it didn't harm any
|
|
|
|
functionality, it just looked a little sloppy.
|
|
|
|
|
|
|
|
Mitch AB4MW caught a bug in node.c line 330ish where the ansi code was
|
|
|
|
missing the "m" at the end of the sequence. This is fixed. I never noticed
|
|
|
|
this in the terminal (xterm), however it appears to affect others.
|
|
|
|
|
|
|
|
Paul G4APL convinced me on a minor issue where if a user requested his login
|
|
|
|
be password protected that under the condition of NetRom ONLY the logins
|
|
|
|
failed to return any clue that the user properly authenticated in. It appears
|
|
|
|
as if the user is in a hung mode, and they need to break out of the session.
|
|
|
|
While this was not true, I concur that it does appear that way which can be
|
|
|
|
a tad confusing. Of course, if a user did "?" the command list would appear.
|
|
|
|
I made a change in node.c so that ONLY if a user had to password authenticate
|
|
|
|
to an incoming NetRom connect, once they did so the user will now be presented
|
|
|
|
with a "ALIAS:CALL} Welcome." message. If the user does NOT have a password
|
|
|
|
for NetRom, than the standard rules (as per Software2000 spec) apply. Note:
|
|
|
|
I've not only added this for the end user but also in keeping with Software-
|
|
|
|
2000 specs, I can't recall any situation where a user may wish to password
|
|
|
|
his NetRom connections. While this login greeting upon a successful
|
|
|
|
authentication to the remote NetRom node may be out of spec, I had to first
|
|
|
|
ask myself if requiring a password at a remote NetRom node is in spec?
|
|
|
|
Needless to say, in my past conversations with W0RLI (RLI BBS Fame and SK)
|
|
|
|
we've decided that the specs were written with PBBS scripts in mind and
|
|
|
|
that a robot forwarding session needs no extra frames to confuse it... so
|
|
|
|
with that in mind, I can't think of a situation where a user who's call is
|
|
|
|
also their pbbs may want to password themselves so I'm hoping this is a
|
|
|
|
moot issue.
|
|
|
|
|
|
|
|
Many dupe texts found by SP2L, removed. Thanks Tom.
|
|
|
|
|
|
|
|
Added pidfile creation and daemonize routine for axdigi. No longer will you
|
|
|
|
need to load it by calling "/usr/local/sbin/axdigi &", now you may simply
|
|
|
|
call it using "/usr/local/sbin/axdigi".
|
|
|
|
|
|
|
|
Fixed a bug in flexd where if you had to kill it, "killall -TERM flexd"
|
|
|
|
failed... you had to "kill -9 #####" via the process id. Now the killall
|
|
|
|
string will properly work.
|
|
|
|
|
|
|
|
Added a README.flexd file for binary errors in regards to flexd failing to
|
|
|
|
run on some systems. If you manually compile, this will help you if your
|
|
|
|
flexd errors within two cycles of attempting to import remote routes.
|
|
|
|
|
|
|
|
Removed the gzipped status of man pages, did some spell checks to others
|
|
|
|
and added a flexd.8 manpage. This request came to me from Dave at Debian
|
|
|
|
for downstream purposes.
|
|
|
|
|
|
|
|
Considering more folks are beginning to use URONode on HF frequencies such
|
|
|
|
as Net105, I've decided that a 60 second login timer on a 300 baud link may
|
|
|
|
be too slow so I've extended this to a 3 minute login timer. Hopefully a 3
|
|
|
|
minute login process will be long enough for those on HF frequencies to
|
|
|
|
continue to enjoy URONode and the ability to telnet from an incoming ax25
|
|
|
|
connection to say an amprnet connection to a remote URONode elsewhere. While
|
|
|
|
I don't really expect or would imagine folks would route IP via HF (however
|
|
|
|
it *can* be done!) I would think this should help this sort of a scenario
|
|
|
|
so that users don't get logged off before even being able to log on!
|
|
|
|
|
|
|
|
VE1JOT suggested that on busier frequencies where there may be a lot of
|
|
|
|
beaconing that's via digipeated paths, a way to disable the MHeard auto
|
|
|
|
router. Now when running the configure script, you will now be presented
|
|
|
|
with such an option. The problem stems from the MHeard daemon from the
|
|
|
|
ax25-tools package will pick up whatever path is last heard (which is
|
|
|
|
actually correct behavior) but on some of the HF packet nets this will
|
|
|
|
make the MHeard database to overwrite the last path to what may be a
|
|
|
|
direct site. Sysops can do 2 things here in this case now:
|
|
|
|
1) disable the AutoRouter for ax25 during configure.
|
|
|
|
2) adding the remote node into uronode.routes as a direct static route.
|
|
|
|
|
|
|
|
While working on this, I also noticed config.h was a tad sloppy and this
|
|
|
|
got under my skin, so I cleaned this up while I was at it, along with
|
|
|
|
deciding for now to make an official release for the upcoming holiday
|
|
|
|
season. As for a developer's note, I did the above before but did a real
|
|
|
|
bone-headed move and wiped out my email amongst other things by accident.
|
|
|
|
Fortunatey I maintain monthly backups and restored from that. For me this
|
|
|
|
meant minimum recreations of work lost. As for URONode, I only lost the
|
|
|
|
suggestion by VE1JOT and other clean ups.
|
|
|
|
|
|
|
|
|
|
|
|
---
|
2015-09-03 20:01:45 +01:00
|
|
|
|
|
|
|
Known NON-Critical Bugs:
|
|
|
|
Status memory/swap reporting fix
|
|
|
|
|
|
|
|
Wish-list:
|
|
|
|
Who file sorter
|
|
|
|
pactor - requested by sv1uy
|
|
|
|
-----------
|
|
|
|
|
|
|
|
Original Development Information (aka Disclaimer):
|
|
|
|
URONode was developed on an IBM eSeries 330 eServer with dual 1.2GHz CPUs
|
|
|
|
The OS is Debian Linux 4 using kernel 2.4.27, libax25 v0.0.11,
|
|
|
|
ax25-tools v0.0.8 and ax25-apps v0.0.6. This software comes with
|
|
|
|
absolutely NO guarantees so crash n burn at your own risk. We all may
|
|
|
|
be surprised and find out that it actually DOES something useful!
|
|
|
|
URONode may not run 100% depending on environmental conditions specific
|
|
|
|
to your system.
|
|
|
|
|
|
|
|
URONode is GLPv2 code, and tested by it's main author on the following
|
|
|
|
platforms: Raspberry Pi ver. B, Debian 7.7 on a Core-i3, Ubuntu 12.0.4LTS
|
|
|
|
on a Core-i3, Fedora ver. 19
|
|
|
|
|
|
|
|
------------
|
|
|
|
|
|
|
|
Comments/suggestions? email: n1uro@n1uro.ampr.org
|
|
|
|
Gripes??? cat gripes > /dev/null Smile just kidding!
|
|
|
|
|
|
|
|
This version will get you going for now. I'll post any changes to:
|
|
|
|
ftp://ftp.n1uro.net/packet
|
|
|
|
|
|
|
|
Join our support mail list graciously donated by TAPR!
|
|
|
|
http://www.tapr.org/mailman/listinfo/uronode
|
|
|
|
|
|
|
|
73 de Brian N1URO
|