Commit Graph

91 Commits

Author SHA1 Message Date
Justin Clarke Casey
2b9e115fd7 * minor: eat up some yummy warnings 2008-09-15 20:50:57 +00:00
Teravus Ovares
cdced699fb * Made Seed CAP response respect the SSL setting. 2008-09-14 23:39:35 +00:00
Teravus Ovares
dbbbec48df * This update makes configuring SSL a little easier on Windows XP. It also makes it possible to run a HTTPS server on the region. It also has a junk Certification authority for test purposes.
* There are still a lot of things that are hard coded to use http.   They need to be fixed.
* Also includes directions
* A standard junk PEM file to append to app_settings/CA.pem in the client so SSL will work
2008-09-14 18:39:17 +00:00
Adam Frisby
3476dd56ea * Converted a number of methods within the login processes from private to protected.
* Made several methods virtual to allow derivative overrides.
* Minor cleanups.
2008-09-14 04:13:15 +00:00
Melanie Thielker
9e545c9984 Mantis #2133
Thank you, Xugu Madison and ChrisDown, for a patch that
fixes linux filename extensions from .Xml back to .xml
2008-09-06 14:58:23 +00:00
Teravus Ovares
7d89e12293 * This is the fabled LibOMV update with all of the libOMV types from JHurliman
* This is a HUGE OMG update and will definitely have unknown side effects.. so this is really only for the strong hearted at this point.  Regular people should let the dust settle.
* This has been tested to work with most basic functions. However..   make sure you back up 'everything' before using this.  It's that big!  
* Essentially we're back at square 1 in the testing phase..  so lets identify things that broke.
2008-09-06 07:52:41 +00:00
Jeff Ames
3bf8858727 Update svn properties, formatting cleanup. 2008-08-28 14:41:54 +00:00
Teravus Ovares
d48d928858 * One more tweak to the application/xml vs application/llsd+xml routine 2008-08-26 06:05:43 +00:00
Teravus Ovares
1015ca3863 * It turns out that Mono doesn't currently support setting the Certificate validation handler, however, it throws a NotImplemented exception.
* Added Try/Catch/Message
2008-08-26 05:41:07 +00:00
Teravus Ovares
b3a6f8d688 * Workaround for application/llsd+xml requests coming in as application/xml
* When OGP is active, disable SSL certificate chain validation.  I'll add more options here to come, as well as a way to test against a group of known certificate subjects.
2008-08-26 05:20:46 +00:00
Teravus Ovares
2912aafe25 * This commit incorporates the heart of the OpenGridProtocol patch that is currently on Forge in a nice, friendly modular format.
* There are a lot of changes and this is quite experimental.  It's off by default, but you can turn it on by examining the bottom of the opensim.ini.example for the proper OpenSim.ini settings.    Remember, you still need an agent domain..  
* Furthermore, it isn't quite right when it comes to teleporting to remote regions (place_avatar)
2008-08-25 07:35:17 +00:00
Charles Krinke
4c40a680fa Mantis#2032. Thank you kindly, Tyre for a patch that:
This small patch provides the required changes to populate 
the columns agentIP and agentPort in table "agents"
Tested with mysql (but should work for all supported db engines)
2008-08-23 18:40:07 +00:00
Jeff Ames
6ef9d4da90 Formatting cleanup. 2008-08-18 00:39:10 +00:00
Dr Scofield
e6e01cee17 From: Richard Alimi <ralimi@us.ibm.com>
The following is a patch that disables the addition of the Content-Length
HTTP response header when a chunked response is being sent.
2008-08-15 07:09:48 +00:00
Justin Clarke Casey
43b2ff1d11 * Drop cached inventory from the local region when a user crosses out into a remote region
* May resolves inventory problems that occur when the user moves between two regions`
* e.g. if the user moves to a second region, adds an inventory item, moves back to the original region then tries to manipulate that item
* Not yet implemented for teleport
2008-08-01 18:49:48 +00:00
Dr Scofield
03efaff60e moving GridInfo application plugin into a common standalone/grid
service, adding a plain REST GET handler returning XML (no LLSD),
adding appropriate add handler calls to OpenSimBase and UserServer.
2008-07-28 12:18:48 +00:00
Dr Scofield
7025a8040e From: awebb
Further improvements to the REST handlers.
2008-07-25 09:56:35 +00:00
Dr Scofield
a6e2589537 force Culture to en-US in BaseHttpserver.HandleRequest() --- this
fixes mantis #1748 and #1771.
2008-07-18 14:40:07 +00:00
Dr Scofield
7692f3e18f further work in progress on the HttpServer side: XmlRpc handler path
almost complete and soon to be ready for testing; OSHttpResponse code
out.
2008-07-14 12:18:32 +00:00
Teravus Ovares
53c9ce46b3 * Enables binary data in BaseHttpServer with 'image' in content type.
* Enables regular jpeg map images to be served directly from the region.
* EX: http://192.168.1.127:9000/index.php?method=regionImagecc4583cd269b41bfa525dd198e19a5c5
* This is actually HTTP server address + port + index.php?method=regionImage<REGIONUUID, no dashes>
* The Webmap image location gets printed on the console when the simulator starts up.
* JPEG data is cached so we only create the webjpeg once.
2008-06-16 22:06:55 +00:00
Justin Clarke Casey
b799031010 * minor: Print out uptime as well as stats in periodic diagnostics logging, so it's easier to tell which isntances each print out of information is from 2008-06-13 16:58:24 +00:00
Jeff Ames
0462510956 Update svn properties. Formatting cleanup. 2008-05-30 08:35:57 +00:00
Sean Dague
22c7845e0c attempting to get to the bottom of unresponsive grids servers by
adding back in a few messages on exceptions.
2008-05-29 15:01:26 +00:00
Jeff Ames
5752c1f5c2 Formatting cleanup. 2008-05-28 03:44:49 +00:00
Jeff Ames
5d77625e9a Update svn properties. Formatting cleanup. 2008-05-25 23:27:38 +00:00
Dr Scofield
bdc792d319 here are further enhancements to the IHttpAgentHandler and to BaseHttpServer (from awebb)
i've added the OSHttpStatusCodes enumeration of HTTP status codes, have adapted 
BaseHttpServer to use those.

then RestPlugin now has proper Failure handling returning proper HTTP status
codes. Regions/POSTHandler is work-in-progress.
2008-05-22 12:00:01 +00:00
Dr Scofield
60ceef7ea2 my last "simplification" of the the if-then-else logic in BaseHttpServer placed the return in
the "if (request.UserAgent != null)" branch in the wrong place: as a result BaseHttpServer would not do 
anything if the user agent header field was present....ARGH! BAAAAAAD.
2008-05-20 12:58:27 +00:00
Dr Scofield
3e8adc0d78 (from awebb)
This patch adds an additional handler to the existing BaseHttpServer. 
It does not affect any of the existing behaviors except insofar as the 
new handler may be selected.

It is selected first because its Agent-oriented nature means that it 
should not be pre-empted.  The new handler type is defined by IHttpAgentHandler 
in Framework/Servers and has two interface methods: Match and Handle.

The Match function returns a boolean result based upon examination of 
information presented in the User-Agent header.

The Handle function expects to get the request and response instances 
associated with the flow. The handler is responsible for ALL activity 
associated with the request except in the event of an unhandled exception, 
in which case the HandleAgentRequest routine will generate a 500 status 
message and close the stream.

There are two immediateley apparent (and VERY easy to implement) 
improvements that could be made:

   1. The Match call could be allowed to operate over the entire 
      request context., rather than just agent identity.
   2. The Handler could return a boolean indication of whether or not 
      the request was actually handled, and if not, the remaining handler 
      mechanism could take a shot at it. This would eliminate issues 
      arising from pre-empted streams.
2008-05-19 17:35:29 +00:00
Dr Scofield
d725d1208b adding OSHttpRequest and OSHttpResponse which wrap HttpListenerRequest and HttpListenerResponse respectively.
enhancing IStreamHandler and IStreamedHandler interfaces so that OSHttp{Request,Response} get passed in, 
allowing RestHandlers to set response status code, redirections, etc.
2008-05-19 11:38:35 +00:00
Jeff Ames
65c5efe43b Formatting cleanup. 2008-05-16 01:22:11 +00:00
Jeff Ames
6a1b787436 More formatting cleanup. 2008-05-14 05:33:32 +00:00
Jeff Ames
c995d60d37 Formatting cleanup. 2008-05-14 05:11:23 +00:00
Justin Clarke Casey
550018f02d * As part of the region registration process, the grid service now requests the status of the region using the region http uri just passed in
* If the status cannot be retrieved, then the region startup will terminate.
* The aim of this is for earlier detection of situations where the region can send messages out but cannot accept incoming requests (often due to firewall issues)
* This is currently an extremely simplistic check which completely trusts whatever http uri is given by the region
* This contact may be problematic, though since the user service needs to be able to contact the region http uri, it doesn't seem unreasonable for the grid to have to be able to do so too at this stage
* This change will require a prebuild
2008-05-13 13:36:21 +00:00
Adam Frisby
76d8eaa406 * Thanks to Mic Bowman for inspiring me to look at that we are still using ASCIIEncoder in places we shouldn't. 2008-05-01 18:50:44 +00:00
Adam Frisby
01f31fd933 * Breaking all the code, breaking all the code..!
* Made a bunch more members static, removed some dead code, general cleaning.
2008-05-01 16:23:53 +00:00
Adam Frisby
fef3b36894 * Optimised using statements and namespace references across entire project (this took a while to run). 2008-04-21 07:09:17 +00:00
Justin Clarke Casey
70233d937f * Start catching rogue SocketExceptions which occur (at least on mono) when a response stream for a request which actually required no response, is closed 2008-04-19 22:48:06 +00:00
Charles Krinke
bf7e7b2c57 Thank you very much, Kmeisthax for:
This patch makes the "Show in Search" checkbox on the viewer work. Additionally, I also discovered that show-in-search objects use the JointWheel flag, so this patch currently uses that flag. LibSL needs to add a flag to enum LLObject.ObjectFlags, "IncludeSearch = 32768" so we aren't using a legacy flag.

Additionally this patch also contains a small fix to BaseHTTPServer that lets the response content-type to be something other than text/html. For some reason this didn't get submitted with the DataSnapshot merge.
2008-04-16 03:55:21 +00:00
Teravus Ovares
682f4e9257 * Fixes an issue with the BaseHttpServer in Linux
* Fixes an estate naming issue
* Fixes a land issue with the landobject not reporting the proper parcel prim.
* A few other tweaks.
2008-04-15 06:21:44 +00:00
Justin Clarke Casey
48fc4ee059 * Log exceptions which make it up to the top of the http request frame, rather than having them disappear off into the ether 2008-03-31 17:34:32 +00:00
Justin Clarke Casey
c1beb85315 * First draft resolution of mantis 777, 734, 389 - scripts do not save in non-home regions
* Should work in multi-region standalone and grid modes
* This should also solve other non-home region caps issues (map requests, RC client inventory requests, etc)
* We now pass CAPS information on to the destination region on region crossing, and set up a CAPS object when an agent becomes a master
* Current limitation is that this will only work if your http_listener_port is 9000
* This is a very early code cut (lots of bad practice, hard coding and inefficiency).  However, I wanted to get this out there for feedback and my own sanity.  Next few patches will clean up the mess.
2008-03-20 20:04:45 +00:00
Jeff Ames
47180080f0 Formatting cleanup. 2008-03-18 05:16:43 +00:00
Jeff Ames
6d774339d9 More compiler warning cleanup.
Removed verbose flag, since it doesn't do anything any more.
2008-02-29 10:51:40 +00:00
lbsa71
5b3897a4af * Caught HttpListenerException and swallowed if with output
* Moved Flush into Close since it's always done in that order.
* Minor renamings
* Reversed if for clarity
2008-02-25 15:36:24 +00:00
Tedd Hansen
7102ac7769 "threads" command now works. I've added manual tracking of threads (only if compiled in DEBUG mode)... Its ugly and even requires a separate thread to track the treads, but it will be very valuable in debugging. 2008-02-21 10:43:24 +00:00
lbsa71
bf42637ee8 * Caught 'OPTIONS' verb in BaseHttpServer that would otherwise explode.
(There are actually other non-content requests too, but I didn't know what we wanted to do with them)
2008-02-20 08:04:12 +00:00
Tedd Hansen
47c909ca0a Playing "Name that thread". Adding names and isbackground=true to all threads so it will be easier to debug. 2008-02-19 12:02:53 +00:00
Justin Clarke Casey
359f84ee43 * Output XmlRpc error message if user server gets a fault response from the region server on login
* This will make it more obvious if one accidentally starts one's region server in standalone rather than grid mode but then tries to login to a grid (as I am wont to do)
* We are now sending back a fault code (-32601) if no xmlrpc method is found rather than an ordinary message
2008-02-18 18:48:55 +00:00
Tedd Hansen
c62328950a More exception checks and crash hints
If no scriptengine is specified then don't try to load any.
2008-02-18 14:21:51 +00:00
Jeff Ames
6ed5283bc0 Converted logging to use log4net.
Changed LogBase to ConsoleBase, which handles console I/O.
This is mostly an in-place conversion, so lots of refactoring can still be done.
2008-02-05 19:44:27 +00:00