X-Git-Url: http://dxcluster.org/gitweb/gitweb.cgi?a=blobdiff_plain;f=Changes;h=717d5e70374271594b6154a2592a64930afb5a58;hb=0b6540088d0afd824dcefffec4e6bac8461d6ac1;hp=2b3b13dfa4edd3497f3dfa3198a9f46efdea4e98;hpb=fb554d0fdb1d30120dbfff15514c51f683dc17a8;p=spider.git diff --git a/Changes b/Changes index 2b3b13df..717d5e70 100644 --- a/Changes +++ b/Changes @@ -1,6 +1,319 @@ +22Oct99======================================================================= +1. allow filter CALLSIGNS to be in upper or lower case. +2. create the concept of input and output filters, input filters are of the +form "in_$call.pl" eg: "in_g1tlh.pl" (or "in_G1TLH.pl"), output filters are +"g1tlh.pl" (or "G1TLH.pl"). +3. all users can now filter on spots, ann and wwv (assuming the sysop has set +the filters up - still no user creatable filters. Nodes can filter on both +input for announces and output for all of these. I would recommend setting +up a few filters that are likely to be wanted and then symlinking callsigns +to them as you get requests. +4. added callsign and length of history/position of screen stats to console. +If you want to change the colour of the callsign you will need to copy the +Console.pm to your /spider/local directory and change the $mycallcolor equate. +21Oct99======================================================================= +1. fixed reply so that reply b or reply nop generate a bulletin with the +correct address. +2. implemented sh/muf command. +3. reduced privilege of catchup and uncatchup to 5. This so that, suitably +privileged, nodes that occasionally link can rcmd a "catchup all" +to the node they are connecting to and thus prevent a large tranche of, +potentially duplicate, mail. This isn't an issue for DXSpider, but may be +an issue for any AK1A clusters you are connected to. +20Oct99======================================================================= +1. Translated all the subroutines of minimuf into perl as Minimuf.pm +2. Limited the length of an ANN that is saved for de-duping to $pc12_dup_lth +(def 72) +3. help command should now return stuff that you expect. +4. reduced necessary privilege to use 'MSG' command to 6. +5. Correct the count of spots and wwv for a merge. +6. Allow decodes of DK0WCY-3 WWV data beacon announces +7. rewrote send so that an SB doesn't send a buckshee bull to NOPRIVATE! +8. Changed default colouration on console so that all spots >= 50Mhz are red +9. Fixed init command so that PC21s are sent down non-initted channels +10. Allow forwarding of unknown private mail. This means that you can set up +forwarding of 'foreign' mail across to and by gateways using the same +mechanism as bulletins (/spider/msg/forward.pl). +11. Allow line wrapping on the console (G0RDI, G0VGS et al). +18Oct99======================================================================= +1. changed help command so that it works correctly with multiple title lines. +2. added to address to the list of things a message checks to see whether it +is a duplicate (how on earth did it take _this_ long to find this one?). +3. Changes S CC so that the callsign it says it has sent to is the real one +(request from G8TIC) +21Sep99======================================================================= +1. allow zero messages to be stored (request from G4PDQ) +2. make DX more flexible and change spotter syntax to be consistant with +sh/dx (request from K9AN) +30Aug99======================================================================= +1. remove -@ as well as \d from SSIDs for spots +2. remove WEB and/or NET from the front or rear of callsigns in Prefix.pm +29Aug99======================================================================= +1. Added msg command to allow the changing of To, From, Subject and so on the +messages. This seems particularly important just now as a whole raft of G3's +seem to be putting out non private bulls to callsigns. +2. While I am at set messages to TO fields that appear to be users to private +if they have been sent as bulls. +3. Add DISTROs, if a callsign field appears in /spider/msg/distro in upper +use that as a list of callsigns to send further. Note this is potentially +recursive as callsigns in a distro can be distros. +25Aug99======================================================================= +1. check the date of a WWV much more carefully. +24Aug99======================================================================= +1. Prevented spots with lowercase callsigns being forwarded. This opens a +much bigger can of worms which I shall have to address later. +17Aug99======================================================================= +1. all protocol except PC29 containing %XX characters will be dumped. +2. Changed console.pl so that if you start typing it moves the top window +back to the bottom. +19Jul99======================================================================= +1. Added iota and qra clauses to sh/dx as well, these take optional arguments +and will look for the appropriate strings. +17Jul99======================================================================= +1. Started database integration. +2. added qsl clause to sh/dx that searches for qsl or via in the dx info +16Jul99======================================================================= +1. drop frames with 'illegal' characters in them (but pass frames with +embedded %XX characters). +15Jul99======================================================================= +1. Changed grepdbg to accept a regexp. More useful (to me anyway). +2. Altered init command so that it doesn't send PC21s down the initted +channel. +10Jul99======================================================================= +1. added an explicit disconnect from my side for already connected calls. This +appears to have fixed a problem where if two consoles connect at the same time +with the same (sysop?) callsign the cluster would stop. +2. added some debugging in the Message handler to allow more state to be seen. +3. Message handler now seems to work better for longer and doesn't spew out +PC42 aborts with quite such gay abandon. +05Jul99======================================================================= +1. added stat/msg and stat/cluster commands to allow me to poke about inside +the msg and cluster node tables. +04Jul99======================================================================= +1. removed silly 'new message has arrived' to connected nodes +2. added a ! command to the console.pl program; works like the bash shell. +01Jul99======================================================================= +1. Altered priv to 5 for connect.pl to match disconnect for nodes +29Jun99======================================================================= +1. fixed merge command that I broke. +2. added some randomness in waittimes for aborted outgoing messages +3. Message Queuing now only occurs every 5 minutes (configurable if anyone +wants to write the command for doing it) and on receipt of a PC16. This is +a further attempt at sorting the crossing of messages! +4. a PC33 will cause another attempt at queuing. If you are on a roll, keep +going! +28Jun99======================================================================= +1. console.pl now works with history and editting. +2. added scrolling to stuff sent by the cluster. +3. added colours to things. +27Jun99======================================================================= +1. added WWV filtering +2. added timeouts to for forwarding Messages, also added a waiting time for +failed (stalled) outgoing messages. +3. Incoming messages will now have priority over outgoing messages to the +same node. +4. Added 'catchup' command which will 'catchup' messages to date for a node. +This means that when you start forwarding to a node, it doesn't get all the +messages queued up that are probably old. +5. added 'uncatchup' which does the opposite of the above. +6. fixed kill full and PC49 handling so that it actually works. +7. Fixed local aliases so they add to the front of the standard ones. This +means you only need to add your specials or override the system ones you need +to. +21Jun99======================================================================= +1. changed regex for cluster->client msgs so that strings like |---| are no +longer ignored. +20Jun99======================================================================= +1. prevented a merge to myself (causes a loop) +18Jun99======================================================================= +1. fixed a problem with DXLogPrint repeating log entries. +2. altered the permissions on disconnnect so that priv 5 users can disconnect +clusters, but still require priv 8 to disconnect users. +3. made sure that an incoming PC18 clears out all the cluster info for +that channel before re-initialising. +4. add init command. +5. disconnect users before nodess on shutdown +15Jun99======================================================================= +1. added grepdbg program (so you can search your debug files and get times +and dates of incidents). +2. Moved DXVars.pm to DXVars.pm.issue to force new users to cp it to their +local directory. +3. added $allowzero to DXProt to allow thru PC19s with zero protocol versions. +14Jun99======================================================================= +1. changed IO::File in help and apropos to IO::File +2. added a check for isa('DXNode') for PC50s +08Jun99======================================================================= +1. Started work on the curses based operator console. +03Jun99======================================================================= +1. cluster seems to have a memory leak, put DESTROY functions in where +appropriate. +2. try to make sure that PC21 commands are not issued inappropriately and +also reformat PC19 for onward broadcast so that nodes coming in on loops are +dropped from those broadcasts. +3. make sure PC16,17,19,21 doen't affect locally connected nodes. +4. Changed all instances of FileHandle to IO::File. +01Jun99======================================================================= +1. removed a output of an unwanted pc21 for isolated nodes +31May99======================================================================= +1. Added checking for PC16,17,19 and 21 to make sure that they come in from +the channels that they are supposed to. +2. Pass the RCMDing node's priv level to the command (rather than the +connecting node's privilege level). +3. Pass thru merge requests for other nodes. +4. Removed a warning from client.pl +5. routed external DB commands and drop them (for now) locally +6. routed external mail commands (ie those addressed elsewhere) +7. routed external PC26/27 lines +25May99======================================================================= +1. try to make the lastin value correct even for local users +2. got rid of the stupid bug that failed to print out the offline message +but put a "*main::STDOUTmain" for every line of that message instead. +3. Ported to 5.00503 (well actually just installed it and it just runs). +4. Added who command +23May99======================================================================= +1. Got rid of some of the useless error messages on global destruction when +quiting a program. +2. Stuck -w back on client.pl +23May99======================================================================= +1. tried to change connection to raw mode for cluster connections +2. sh/c and sh/u are now sorted in alphabetical order +3. Limited the number of queued dx spots when composing messages to 20 (the +oldest one is lost for every one added above 20). +4. Added generalised shell globbing everywhere I think it is useful, including +sh/dx, dir, sh/files etc +5. Made dir more compatible with ak1a and added 'to' and 'from' call searching +it should now do everything that ak1a does except counts. +6. added similar functionality to kill command so that you can kill ranges, to +and from callsigns etc. +22May99======================================================================= +1. added check for -1 from Date::Parse and return undef for out of range dates +2. added show/files and type commands +21May99======================================================================= +1. made set/nodx work again. +2. made dx stuff queue nicely again when sending messages. +18May99======================================================================= +1. Added announce dup checking. +2. Added system announce filtering. +08May99======================================================================= +1. Added a bit more checking to the rcmd thing to make more sure that this +rcmd isn't coming from an imposter. Not possible to prevent everything +ofcourse, just make it a bit harder. +2. altered set/lockout and set/privilege so that they can't executed remotely. +3. Added some code to reject rubbish (with invalid binary characters) protocol +or user lines as input. +4. prevented PC command being executed remotely :-) +05May99======================================================================= +1. change the connection overlap from an abort to a disconnect. +02May99======================================================================= +1. Added the mechanism for doing user spot filtering for spots in the cluster +(no user control just yet - but sysops can do it). +2. Fixed problem with nodes sending out the node lists of isolated nodes. +30Apr99======================================================================= +1. Try to make it even more AK1A friendly by putting the node list out in the +'correct' order. +2. added code so that local users and commands go to all connected nodes +INCLUDING the isolated ones. +26Apr99======================================================================= +1. added set/user command as a hack, please use this with care, there is +very little checking. +2. added export_opernam.pl which is a basic reader of AK1A opernam.dat files +to stdout +25Apr99======================================================================= +1. Fixed problem with filtered spots not coming out. +2. Added the possibility of filtering on channel callsign +20Apr99======================================================================= +1. altered order of undefing and closing of user file in an attempt to make +corruptions/missing users less likely. +2. made messages that are addressed to the node call appear to the alias call +3. check dates much more rigourously. +4. ignore SIGTERM and SIGINT during shutdown of the cluster +15Mar99======================================================================= +1. added $actiondata to filter line to allow per action data such as no of hops +2. fixed a silly problem in talk for non-existant callsigns +3. Added sysop command +02Mar99======================================================================== +1. Changed DXUser so that it uses a homemade import/export hash routine +2. DXUser now uses a DB_BTREE file +3. Added export_users.pl, import_users.pl and convert_users.pl +25Feb99======================================================================== +1. added NL language stuff. +2. added set/language +21Feb99======================================================================== +1. Allowed multiple 'on ' for show/dx +2. Made sure the 'on 20m/ssb' thing worked (also 'on hf/cw'). +3. first cut of the Filtering code, no user commands yet but the file +format is defined and manually added filters should work for spots +17Feb99======================================================================== +1. added export_user.pl to export user files (for interest and safety) +2. changed DXUser::init to allow O_RDONLY access which may limit the number +of coredumps G0RDI seems to get. +15Feb99======================================================================== +1. Added msg forwarding code which uses $main::root/msg/forward.pl. +14Feb99======================================================================== +1. Changed A & K in WWV to be the other way around (I am told by G3IOR that +this will mean that we won't have pole to pole aurora nor all the power lines +overloading everywhere as well as a result of having values of K > 10). +2. allow the '~' character in message bodies. +3. Moved $main::data/badmsg.pl to $main::root/msg/badmsg.pl. +11Feb99======================================================================== +1. Fixed a problem with isolated nodes' configurations being sent on sending +local configs to new connections. +08Feb99======================================================================== +1. added a $SIG{ALRM} in the client to actually catch the alarm when it goes +off which means that the netrom/ax25 call programs terminate properly (and not +loop as fast as their little legs can paddle, soaking up CPU time). +2. Implemented read receipts as an especial request from G4PDQ. +3. Fiddled with DXUser a bit to see whether I can stop it core dumping on new +users in PC16s on G0RDI's machine. +4. Added E4 (Palestine) to Prefix data. +30Jan99======================================================================== +1. Some of the dates we get can cause crashes, tried to make it more robust (oh +and Y2K compliant) +2. PC16 seem to come in with missing callsigns from somewhere +3. added $main::data/baddx.pl which prevents callsigns that are in the list being +a) forwarded b) stored and c) (except for the originator, if local) being +displayed locally. +4. added $main::data/badmsg.pl which deletes any messages whose TO address is +in this list (this is largely for european sensibilities). +18Jan99======================================================================== +1. added present(),presentish() and disconnect() to DXCron so that you can see +(easily) if a station is on the cluster anywhere and also disconnect them +locally. +2. added rcmd() to DXCron so you can send an rcmd to someone else from crontab. +3. Fixed create_sysop.pl so that longitude is spelt correctly +there as well made the update work properly. NOTE create_sysop +will only do what you expect if all cluster.pl and client.pl programs are +stopped. +4. DXCron wasn't reading in reliably on startup, this is now (hopefully) fixed. +the -M semantics are rather strange! +5. The -w switch is now standard on cluster.pl +6. Added last_connect() which gives the last connect time of a user (or now +if connected). +7. Added present_on(call, node) and presentish_on(ditto) which returns true if +the call is connected to the node. +8. incoming messages for users will now send a 'new message' message (instead +of merely generating the message)[who wrote this rubbish?]. +9. Hooked $SIG{__WARN__} and $SIG{__DIE__} so we store these nasty error +messages. +10. Print the no of users on restricted protocol links if we have had PC50 +11. Had a go at making the sh/cl stats more accurate. +12. PC11 was trying to call Local::spot1 instead of Local::spot, no warning +previously. +13. Added a simple lockfile to prevent more than one cluster running at a time +17Jan99======================================================================== +1. fixed some permission problems on DXLog. +2. There is a circumstance in DXMsg which caused the cluster to stop on an +null ref pointer which I can't get to the bottom of but have bandaided out +for now. +3. Started filter and Database code. +4. Upper cased all the TO callsigns for sending to more than one station in +messages. 07Jan99======================================================================== 1. Fixed Geomag after emacs reformatted it wrong so sh/wwv works again. 2. Added more range checking in WWV spots (they really are a heap of ...) +3. Changed create_sysop.pl so that you can update as well as create the user +file +4. Remove spotter's SSID from WWV spots 06Jan99======================================================================== 1. Do some range checking for spots and WWV in the future (got a WWV for Oct 2034 whhich caused a bit of confusion!)