Jarrod Johnson
265dc4215e
Correct issues with the attempted merge of crypto and configmanager
2013-11-02 17:35:58 -04:00
Jarrod Johnson
4eaaa0c1a9
Create particular exceptions and start using them
2013-11-02 17:32:48 -04:00
Jarrod Johnson
cf7ffe9de2
Merge crypto into configmanager
2013-11-02 17:26:52 -04:00
Jarrod Johnson
fc7d426d06
Address some problems caused by refactor
2013-11-02 17:21:34 -04:00
Jarrod Johnson
c242f32e73
Refactor configuration code into a distinct location
2013-11-02 16:58:38 -04:00
Jarrod Johnson
bb8c65fc34
Add definitions for standard messages to pass through pulig api
2013-11-02 14:52:32 -04:00
Jarrod Johnson
ec58c47bff
Restore console functionality
2013-11-02 13:40:53 -04:00
Jarrod Johnson
67fe18fe3f
Fix problem with an unhandled command without a default.
2013-11-02 13:30:29 -04:00
Jarrod Johnson
a8d0ec4c3c
Renome current console to consoleserver and refactor
2013-11-02 13:25:56 -04:00
Jarrod Johnson
3a3dbf9f41
Progress toward more strictly defined objects
...
messages and consoles get classes to guide developers toward consistency.
2013-11-02 13:06:48 -04:00
Jarrod Johnson
21ea762b46
Further progress state of tlvdata
...
Correct read to recv and add some more info that will be required.
2013-11-02 13:05:58 -04:00
Jarrod Johnson
35a5e9cbf0
Continue trying to flesh out socket api
2013-10-23 13:38:54 -04:00
Jarrod Johnson
adf52517fd
More cleanly handle unrecognized urls
2013-10-15 21:13:48 -04:00
Jarrod Johnson
126030b9db
Begin work to do authentication and authorization on socket api
2013-10-14 11:28:07 -04:00
Jarrod Johnson
8d21674ced
Implement unix domain socket in socket api
2013-10-14 09:21:55 -04:00
Jarrod Johnson
3d1e398977
Convert wsgi function to be generator
...
Since wsgi function returns iterable, it turns out to be easy to do it this way.
For now, hardcode json dumps, two things:
1: call out to module supporting HTML and JSON interpretation
2: in both cases, a header and footer must sandwich the responses in http
In socketapi, responses will come back without a container, but http
does not afford us such luxury. Create a containing json structure.
On first iteration, do not prepend with ,. prepend with , all other times.
2013-10-13 20:51:30 -04:00
Jarrod Johnson
49b3aed3e3
Add a tlvdata module
2013-10-12 21:19:15 -04:00
Jarrod Johnson
53ce6f054c
Add concept of defaulting plugin
2013-10-12 21:13:22 -04:00
Jarrod Johnson
97d3eebff6
Actually have httpapi able to start calling into the plugin api
2013-10-12 18:04:27 -04:00
Jarrod Johnson
4880de94e8
-Have master console multiplexer not crash because a handler would have crashed
...
-Have sockapi remove console session handler on client disconnect
2013-10-10 14:17:08 -04:00
Jarrod Johnson
9855f17d58
Fix socket test case to work multiple times
2013-10-09 20:14:34 -04:00
Jarrod Johnson
7f572fd164
Implement session cookie for optional use by clients to guard against attempts to slow session
...
Implement http and console session reaping in httpapi layer
2013-10-09 16:17:37 -04:00
Jarrod Johnson
dd111ffef5
Flesh out auth to the point where set and check of password is plausible
2013-10-08 18:25:59 -04:00
Jarrod Johnson
b0855f7c88
Flesh out user password management
2013-10-08 17:49:38 -04:00
Jarrod Johnson
96ca623520
Replace PBKDF2 function with PyCrypto's version
...
Overlooked the existence of the servicable PBKDF2 function in PyCrypto.
Rectify that oversight (might break existing config db, but this
isn't even alpha code yet)
2013-10-08 14:03:04 -04:00
Jarrod Johnson
97a52ed775
Attempt to relocate convention for 'super tenant' to more definitively segregate the two concepts
2013-10-08 11:51:13 -04:00
Jarrod Johnson
4c68da0d3b
Change to eventlet.wsgi instead of patched flup scgi
2013-10-03 17:05:40 -04:00
Jarrod Johnson
c9762cb536
Rework commented out code a tad
2013-09-24 13:51:03 -04:00
Jarrod Johnson
44c8098906
Add commented code to allow easily getting at the debug socket, needs eventlet fix to work
2013-09-20 17:14:16 -04:00
Jarrod Johnson
982b438279
Have console sessions delete themselves after http client has gone away... probable
2013-09-20 14:36:55 -04:00
Jarrod Johnson
1d76dcf13d
Revert "Attempt to mitigate memory consumption"
...
This reverts commit e746d0dd3b .
2013-09-16 16:57:27 -04:00
Jarrod Johnson
e746d0dd3b
Attempt to mitigate memory consumption
2013-09-16 16:56:59 -04:00
Jarrod Johnson
807b5366ee
Begin some buffering tricks.
...
Here we start with buffering and using the buffer to
send a few bytes of history to new connections,
paying particular attention to the last 'clearscreen' event
2013-09-15 13:22:50 -04:00
Jarrod Johnson
782c1f9b9a
Have httpapi json dump try utf-8 first, but if the output is not utf-8, try cp1252
...
as it is a reasonable guess for firmware. In short, OSes are presumed to trend toward utf-8, and firmware toward cp1252
If both fail, then inject DECODEERROR for now.
2013-09-15 11:19:04 -04:00
Jarrod Johnson
3f46ffd25d
Fix syntax error in httpapi rework
2013-09-14 21:37:23 -04:00
Jarrod Johnson
4fee4082b9
Have sockapi properly run alongside httpapi
...
Have sockapi force TLSv1
2013-09-14 20:21:58 -04:00
Jarrod Johnson
2644801929
Create a test socket api layer
2013-09-14 11:08:48 -04:00
Jarrod Johnson
e9c6c549cb
Remove exploration output
2013-09-14 10:27:13 -04:00
Jarrod Johnson
d7db7041b2
Changes to get SOL console kind of working
2013-09-13 16:07:39 -04:00
Jarrod Johnson
fb8d042f48
Add monotic time util function
2013-09-13 14:33:03 -04:00
Jarrod Johnson
83db40da51
Implement urlencoded form data for the data into the console interface
2013-09-13 14:16:29 -04:00
Jarrod Johnson
1cbc16b22e
Actually implement enough to get some console traffic going.
...
This implements a protocol that should be compatible with shellinabox's
javascript client code.
2013-09-12 17:14:09 -04:00
Jarrod Johnson
a359ae5063
Add missing console core
2013-09-12 16:01:39 -04:00
Jarrod Johnson
39cd741845
Correct various issues and IPMI console session actually go through now
2013-09-12 15:52:34 -04:00
Jarrod Johnson
100c06e5a5
Fix problem where plugin api failed to access the node specific dict
2013-09-09 13:52:34 -04:00
Jarrod Johnson
f23e67618b
Correct problem where path element was not parsed correctly
2013-09-09 13:34:22 -04:00
Jarrod Johnson
5451fa65e5
Refine the authorization bit a tad
2013-09-06 16:40:40 -04:00
Jarrod Johnson
596692a033
Put missing file under git tracking
2013-09-06 15:47:39 -04:00
Jarrod Johnson
39c17330f3
Add user functions to config db
2013-09-06 15:49:04 -04:00
Jarrod Johnson
cad7db237c
Refactor plugin api code into its own module
2013-09-04 15:44:28 -04:00