aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/ClientStack (unfollow)
Commit message (Collapse)AuthorFilesLines
2011-12-08Don't reply with an ack packet if the client is not authorized.Justin Clark-Casey (justincc)2-45/+31
2011-12-08Extend TestAddClient() to check that the first packet received is an ack packetJustin Clark-Casey (justincc)3-93/+116
2011-12-08Add OpenSim.Region.ClientStack.LindenUDP.Tests.dll back into the test suiteJustin Clark-Casey (justincc)1-1/+1
2011-12-08Reactivate BasicCircuitTests.TestAddClient()Justin Clark-Casey (justincc)3-109/+138
This checks that the initial UseCircuitCode packet is handled correctly for a normal client login.
2011-12-08Remove unnecessary AgentCircuitData null check from Scene.AddNewClient().Justin Clark-Casey (justincc)1-4/+4
The only caller is the LLUDP stack and this has to validate the UDP circuit itself, so we know that it exists. This allows us to eliminate another null check elsewhere and simplifies the method contract
2011-12-08On a new client circuit, send the initial reply ack to let the client know ↵Justin Clark-Casey (justincc)3-21/+46
it's live before sending other data. This means that avatar/appearance data of other avatars and scene objects for a client will be sent after the ack rather than possibly before. This may stop some avatars appearing grey on login. This introduces a new OpenSim.Framework.ISceneAgent to accompany the existing OpenSim.Framework.ISceneObject and ISceneEntity This allows IClientAPI to handle this as it can't reference OpenSim.Region.Framework.Interfaces
2011-12-07Stop also adding an ordinary http handler when we set up a poll http handler.Justin Clark-Casey (justincc)1-6/+0
It appears that this is entirely unnecessary since the poll http handlers are dealt with on a separate code path.
2011-12-06Stop accidentally setting up the UploadTexture caps handler with the same ↵Justin Clark-Casey (justincc)1-1/+1
url for all users This meant that if a user exited the region, the UploadTexture handler would be effectively removed for everyone, causing subsequent failures. This hopefully resolves the recent UploadTexture LLSD problems This was a regression in 5640f2e (Thu Dec 1 23:24:15 2011 +0000)
2011-12-05Implement IOSHttpRequest and IOSHttpResponse http interfaces and use instead ↵Justin Clark-Casey (justincc)1-3/+3
of OSHttpRequest/OSHttpResponse. This is required for the substitution of different HTTP servers or the newer HttpServer.dll without having to commit to a particular implementation. This is also required to write regression tests that involve the HTTP layer. If you need to recompile, all you need to do is replace OSHttpRequest/OSHttpResponse references with IOSHttpRequest/IOSHttpResponse.
2011-12-01refactor: Separate the upload baked texture handler out from BunchOfCapsJustin Clark-Casey (justincc)2-122/+113
2011-11-29On "show caps", stop excluding the seed cap but do exclude it elsewhereJustin Clark-Casey (justincc)1-1/+2
2011-11-29Improve some of the debug help messagesJustin Clark-Casey (justincc)1-0/+1
2011-11-29Correct mistake in "debug eq" helpJustin Clark-Casey (justincc)1-1/+1
2011-11-26Rip out unused Scene.HandleFetchInventoryDescendentsCAPS().Justin Clark-Casey (justincc)1-1/+0
This has been handled by WebFetchInvDescHandler.Fetch() for some time.
2011-11-26Use the same web fetch handler for every request from every avatar, since it ↵Justin Clark-Casey (justincc)1-3/+11
contains no instance code
2011-11-25Fix config so that you can have both WebFetchInventoryDescendents and ↵Justin Clark-Casey (justincc)1-1/+2
FetchInvnetoryDescendents2 caps active at once
2011-11-25Resolve error where an unknown asset type would cause the fetch inventory ↵Justin Clark-Casey (justincc)1-4/+1
descendents cap to fail. Introduced just a few commits ago in 0688861
2011-11-25Implement the FetchInventoryDescendents2 capability using the same code as ↵Justin Clark-Casey (justincc)1-17/+38
WebFetchInventoryDescendents. Enabling this by setting Cap_FetchInventoryDescendents2 = "localhost" in the [ClientStack.LindenCaps] section of OpenSim.ini downloads inventory via http rather than udp in later viewers.
2011-11-25Fix WebFetchInventoryDescendents cap to use ↵Justin Clark-Casey (justincc)1-0/+2
Utils.AssetTypeTostring/InventoryTypeToString to convert types to strings These cover a wider range of types.
2011-11-24When setting packet level logging via "debug packet", apply to all clients, ↵Justin Clark-Casey (justincc)1-7/+11
not just root ones. Also adds scene name and client type (root|child) to logged information.
2011-11-24comment out a noisy log line I accidentally left in from the last commitJustin Clark-Casey (justincc)1-1/+1
2011-11-24Stop passing a request handler to the initial caps.RegisterHandler in ↵Justin Clark-Casey (justincc)1-157/+162
EventQueueGetModule since this is immediatley replaced by a poll server handler. This allows us to comment out a bunch of code and simplify the codebase and readability.
2011-11-24Add a "debug eq" console command for debugging.Justin Clark-Casey (justincc)1-6/+79
This will log outgoing event queue message names if turned on.
2011-11-14If a friends identifier which is too short is given to ↵Justin Clark-Casey (justincc)1-0/+2
HGFriendsModule.GetOnlineFriends() then spit out a warning rather than failing on the String.Substring(). This is to progress http://opensimulator.org/mantis/view.php?id=5789
2011-11-11Restore sending of OutPacket() for object kills removed in commit c7dd7b1.Justin Clark-Casey (justincc)1-26/+20
OutPacket() must be called within the m_killRecord lock. Otherwise the following event sequence is possible 1) LLClientView.ProcessEntityUpdates() passes the kill record check for a particular part suspends before OutPacket() 2) Another thread calls LLClientView.SendKillObject() to delete the same part and modifies the kill record 3) The same thread places the kill packet on the Task queue. 4) The earlier thread resumes and places the update packet on the Task queue after the kill packet. This results in a ghost part in the sim that only goes away after client relog. This commit also removes the unnecessary m_entityUpdates.SyncRoot locking in SendKillObject.
2011-11-06Convert SendKillObject to take a list of uint rather than sending oneMelanie1-21/+32
packet per prim. More to come as we change to make use of this.
2011-11-02Changes UpdateFlag in SOP to an enumeration of NONE, TERSE and FULL.Dan Lake1-3/+4
UpdateFlag is now referenced/used only within SOP and SOG. Outsiders are using ScheduleFullUpdate, ScheduleTerseUpdate or ClearUpdateSchedule on SOP consistently now. Also started working toward eliminating those calls to ScheduleFullUpdate, ScheduleTerseUpdate or ClearUpdateSchedule from outside SOP in favor of just setting properties on SOP and let SOP decide if an update should be scheduled. This consolidates the update policy within SOP and the client rather than everywhere that makes changes to SOP. Some places forget to call update while others call it multiple times, "just to be sure". UpdateFlag and Schedule*Update will both be made private shortly. UpdateFlag is intended to be transient and internal to SOP so it has been removed from XML serializer for SOPs.
2011-11-01Removed redundant SceneContents property from Scene. It's the same as ↵Dan Lake1-1/+1
SceneGraph property.
2011-10-29Stop setting _position as well as m_taint_position in ODECharacter.PositionJustin Clark-Casey (justincc)1-2/+2
setting position at the same time as taint appears to undermine the whole purpose of taint testing doesn't reveal any obvious regressions in doing this
2011-10-27Don't blow our brains out if LLClientView.BulkInventoryUpdate() is wrongly ↵Justin Clark-Casey (justincc)1-1/+3
passed a null node reference. Addresses worst aspect of http://opensimulator.org/mantis/view.php?id=5752
2011-10-25Make OpenSim.Framework.Servers.HttpServer rely on OpenSim.Framework instead ↵Justin Clark-Casey (justincc)1-0/+1
of the other way around. This is necessary so that code in HttpServer can use framework facilities such as the thread watchdog for monitoring purposes. Doing this shuffle meant that MainServer was moved into OpenSim/Framework/Servers Also had to make OpenSim.Framework.Console rely on OpenSim.Framework rather than the other way around since it in turn relies on HttpServer MainConsole and some new interfaces had to be moved into OpenSim/Framework to allow this. This can be reverted if parts of OpenSim.Framework stop relying on console presence (cheifly RegionInfo)
2011-10-24Fix bugs in EventQueueGetModule.ClientClosed() and ↵Justin Clark-Casey (justincc)2-4/+22
BaseHttpServer.RemovePollServerHTTPHandler() that stopped existing code in ClientClosed() from actually tearing down the poll handler Actually doing the tear down appear to have no ill effects with region crossing and teleport.
2011-10-24separate out future common setup code from EventQueueTests.AddForClient()Justin Clark-Casey (justincc)1-8/+14
2011-10-24Add new EventQueueTests with basic test to check that adding a client ↵Justin Clark-Casey (justincc)2-1/+72
registers an http poll
2011-10-17refactor: Make IClientAPI.DebugPacketFormat a property rather than a setter ↵Justin Clark-Casey (justincc)1-15/+10
without a getter
2011-10-17Add avatar names to debug packet outputJustin Clark-Casey (justincc)1-2/+2
2011-10-14refactor: rename IClientAPI.SendPrimUpdate() to SendEntityUpdate() since it ↵Justin Clark-Casey (justincc)1-1/+1
sends entity updates (including presence ones), not just prims.
2011-10-13More method doc and formatting changes. Makes DestroyOdeStructures() privateJustin Clark-Casey (justincc)1-0/+6
2011-10-12Get rid of some traces of the old pre-ROBUST grid architecture configJustin Clark-Casey (justincc)1-1/+1
2011-10-12Bring LindenUDP.Tests back from the dead. No tests are running.Justin Clark-Casey (justincc)5-343/+282
Code drift means that most of this stuff doesn't compile but the structure is still useful.
2011-10-12minor: insert some commented out log lines which are a blunt but useful ↵Justin Clark-Casey (justincc)3-3/+12
instrument to see packet expiry and received acks
2011-10-12Improve some method doc for LLUDPClient, LLUDPServer and UnackedPacketCollectionJustin Clark-Casey (justincc)3-17/+39
2011-10-03Remove vestigal RegionStatus.SlaveScene.Justin Clark-Casey (justincc)1-15/+7
This appears to be code clutter since the code that uses this has long gone.
2011-10-03Remove usage of Linden packet types from inside Attachments Module and interfaceDan Lake1-3/+4
2011-09-24Improve locking when access queue in EventQueueGetModuleJustin Clark-Casey (justincc)1-14/+17
2011-09-22Reinstate option to land an npc when it reaches a target.Justin Clark-Casey (justincc)1-3/+3
This is moved into ScenePresence for now as a general facility
2011-09-15refactor: rename SOG/SOP.GetProperties() to SendPropertiesToClient() to ↵Justin Clark-Casey (justincc)1-2/+2
reflect what it actually does This also makes it consistent with some other methods that send data to the client.
2011-09-01Eliminate pointless checks of SOG.RootPart != nullJustin Clark-Casey (justincc)1-2/+0
It's never possible for SOG to have no RootPart, except in the first few picosends of the big bang when it's pulled from region persistence or deserialized
2011-09-01Remove pointless cluttering SOP.ParentGroup != null checks.Justin Clark-Casey (justincc)1-5/+2
The only times when ParentGroup might be null is during regression tests (which might not be a valid thing) and when scene objects are being constructed from the database. At all other times it's not possible for a SOP not to have a SOG parent.
2011-08-31Fix a bug where the non-root parts of rezzed objects that had previously ↵Justin Clark-Casey (justincc)1-1/+12
been attachments were sending their old attachment values to the client. The root part state is the canonical value, so always send that instead. Sending conflicting attachments states for non-root parts of a rezzed object is enough to crash the client. Fixes http://opensimulator.org/mantis/view.php?id=5664. Many thanks to mewtwo0641 for some fantastic qa work on this one.