Commit Graph

214 Commits

Author SHA1 Message Date
Cort Buffington 835011d1a8 Fixed formatting error in peer list 2013-07-31 13:58:53 -05:00
Cort Buffington 897540243a Peer List Print & More Validation 2013-07-31 12:33:31 -05:00
Cort Buffington 8f8608cbfc Started adding conditionals to validate messages
for example: if we haven't yet received a peer list from the master, we
should not be processing keep-alives from peers.
2013-07-30 11:50:29 -05:00
Cort Buffington 2e0f29fc97 Peer Validation - In Progress
Mostly done.. must find a way to allow master registration and
reception of peer list BEFORE validating incoming messages to the peer
list -- chicken and egg problem. Easily solved, but needs an EFFICIENT
solution since EVERY PACKET will be passed through this test.
2013-07-30 10:52:10 -05:00
Cort Buffington 9e049977fd log level change 2013-07-30 10:11:22 -05:00
Cort Buffington ca22654a13 Peer validation work 2013-07-29 21:12:12 -05:00
Cort Buffington 2d0c767c11 Begin adding valid peer and master checking… partial
Not yet completed, but done in a way to pass so the code works.
2013-07-29 21:06:25 -05:00
Cort Buffington c1f6442f07 Standardized use of binascii for hex conversions
Had been using a mix of unhexlify/hexlify and a2b_hex/b2a_hex. I
settled on the later as it's the most descriptive to me.
2013-07-29 20:51:21 -05:00
Cort Buffington 7650e7cc4d Remove Cruft in Logging 2013-07-29 13:38:59 -05:00
Cort Buffington 724f9299cb Added IPSC Authentication Validation Function
We can now pass the auth key, and a packet to this function and get a
pass/fail (True/False) return.
2013-07-29 13:23:37 -05:00
Cort Buffington 7c6899e49f Clean up debug logging for peer lists
Fixed the peer-list printing function so that it signals there is no
peer list if we've not yet received one.
2013-07-28 22:33:14 -05:00
Cort Buffington 440f3d61b4 Updated config data structure
… so it matches changes made in the last update a few minutes ago.
2013-07-28 22:25:25 -05:00
Cort Buffington 7518583e23 Moved peer-list processor to global scope
There was no reason for the IPSC class to contain the function for
processing a peer list. It makes the class more self-sustaining, but
the goal should be a *module* to handle connection maintenance. I moved
the peer list process, and built a mode decoder function from the
previos mode printing function, as well as added decoded mode items to
the data structure… and cleaned up the prining function so it doesn't
re-process the data.
2013-07-28 22:22:04 -05:00
Cort Buffington 8e7cdd7912 More naming cleanup
Making things read more easily.
2013-07-28 16:22:25 -05:00
Cort Buffington c34357e10d Cleaned Up Several Items...
Mostly references to my_ipsc_config data structure items that are
commonly used. These received shortened names within the IPSC class…
also makes it easier to read, and should be self explanatory. Some
cruft also removed - object aliases that were no longer used.
2013-07-28 15:53:56 -05:00
Cort Buffington 8d115875f3 Implemented Keep-Alive Timers for Master & Peers
These have been open issues. They are mostly completed. Now, once a
master or peer is registered, keep-alives start, and run every
(configurable) time, unless (configurable) times are missed, and then
it de-registers the peer. The outstanding counter still needs work, but
the important parts are there.
2013-07-26 17:29:47 -05:00
Cort Buffington 819848d17c Revert "Not sure why this is needed"
This reverts commit c00627033e.
2013-07-22 21:44:53 -05:00
Cort Buffington c00627033e Not sure why this is needed 2013-07-22 21:32:51 -05:00
Cort Buffington 961d459b58 Update requirements.txt 2013-07-22 08:20:05 -05:00
Cort Buffington fe7d44a2da Activated "ENABLED" Status Flag in Config
If the enabled setting for an IPSC is marked False, taht IPSC will not
be activated.
2013-07-20 22:20:27 -05:00
Cort Buffington b8e3b3f8c9 Added network name to all logging lines 2013-07-20 21:53:45 -05:00
Cort Buffington 040492c2e2 Fixed errors in the sample config
I missed a few commas in it. They are there now
2013-07-20 18:13:15 -05:00
Cort Buffington 9eddcf762b Change Logging Status
Moved most info items into debug to make it less chatty
2013-07-20 15:41:22 -05:00
Cort Buffington 8c4ad5628a Update requirements.txt 2013-07-20 08:35:40 -05:00
Cort Buffington b0e3b9ee3b Update README.md 2013-07-20 08:33:03 -05:00
Cort Buffington a99fa58a50 Lots 'O Comments, work on open issues
Work done on issues of timed actions for us to initiate relationships
with IPSC peers.

Tons of comments added so it likely actually makes sense to a reader
now.
2013-07-20 08:28:52 -05:00
Cort Buffington 30afe9041c Update README.md 2013-07-16 09:23:43 -05:00
Cort Buffington 44c6fa4759 Update README.md 2013-07-16 09:23:25 -05:00
Cort Buffington d74261c5ac Data Type Cleanup
In the data structures, I had kinda been storing things randomly. In
preparing to address more of the issues, it was clear this needed (and
still does) cleaned up. Other than a few mods along the way, the goal
has been to minimize conversions while processing "real" in/out network
traffic, and do as much as possible one-time (such as the peer list),
or in formatting for output -- which is really mostly debugging and
will go away.
2013-07-15 12:04:48 -05:00
Cort Buffington d4c1bfc630 Fixed Formatting From Last Update 2013-07-14 13:43:20 -05:00
Cort Buffington dd2fa1eda5 Added Flowcharts for Communication with Master and Peers
I tried to better explain the communcations with masters and peers by
adding flowcharts to document the states, timers and counters
associated with establishing and maintaining the relationships.
2013-07-14 13:31:32 -05:00
Cort Buffington b8581c75eb Minor Wording Changes 2013-07-14 11:31:27 -05:00
Cort Buffington 82ad3660c7 Added note about oddly formatted number-of-peers field 2013-07-14 11:30:20 -05:00
Cort Buffington 21bf42b3e3 Merge branch 'Version-.2-Reorganization' 2013-07-12 16:58:05 -05:00
Cort Buffington 2e32fe4881 Sample Configuration File
Currenlty, the configuration file is merely a python data structure of
nexted dictionaries and lists. Eventually it should be moved to a
regular text-based configuration file with a parser to build the data
structure.
2013-07-11 19:50:38 -05:00
Cort Buffington bd5b0a074d Initial Uplaod of Re-Org'd Files 2013-07-11 19:45:09 -05:00
Cort Buffington 6aef3febc6 Service Flags Updated
Figured out several of the flags previously unknown, and corrected an
error: the bits for data call or voice call were transposed.
2013-07-10 16:21:36 -05:00
Cort Buffington 82d02104ae Adding more packet type information 2013-07-08 15:41:44 -05:00
Cort Buffington 8e57fba529 More formatting updates - no content changes 2013-07-06 08:53:04 -05:00
Cort Buffington 2141307dd1 Fixed Formatting of Flags Section 2013-07-06 08:40:50 -05:00
Cort Buffington 4b91741de1 Add Message Types & Fix Timing
Added new datatypes (and changed the names on some that were figured
out). Fixed the master registration timing issue so that registrations
are attempted repeatedly until there is a reply, then keep-alives start.
2013-07-05 17:42:23 -05:00
Cort Buffington 4207a1c1de Addition of new packet types
0x61, 0x62, 0x9A -- unfortunately, the purpose of them is not yet know.
2013-07-03 14:48:30 -05:00
Cort Buffington f9a679ccc4 Updating packet types 2013-07-01 08:16:08 -05:00
Cort Buffington 1fc04b7acb Merge pull request #2 from adamfast/master
Python logging module, generic configuration loader.
2013-06-29 13:07:00 -07:00
Adam Fast 3413dee576 Attempt to load configuration from a module my_ipsc_config.py to allow leaving your systems configured without editing the main Python source file - and as that file is expected to have IPs / keys that may not be intended for the public, tell git to ignore that file. 2013-06-28 23:38:28 -05:00
Adam Fast 1253c7f405 Convert to Python logging module for greater flexibility in where / how things are displayed. 2013-06-28 23:36:39 -05:00
Adam Fast fec136d20e Standardize indentation with the rest of the module 2013-06-28 23:03:53 -05:00
Adam Fast d7eb9ebb22 Fix requirements file, trailing period not required 2013-06-28 23:03:29 -05:00
Adam Fast 7d1252e937 Add requirements file to track dependencies. 2013-06-28 23:03:10 -05:00
Adam Fast 903d6d6fad Typo fixes / spelling corrections. 2013-06-28 22:50:29 -05:00