Commit Graph

849 Commits (234d4e11059fb2e1fc9dbe879054bd84e95b502b)

Author SHA1 Message Date
Mike Mazur bdf95e54a2 A few updates necessary for load balancer.
- handle GetUser request for nonexistent user gracefully
- include throttle levels in ClientInfo
- code to save/restore throttles in client stack
- only update/send updates to active clients
- make animation classes serializable
2009-02-25 00:32:26 +00:00
Charles Krinke 8f55b9d735 Mantis#3218. Thank you kindly, TLaukkan (Tommil) for a patch that:
* Added log4net dependency to physxplugin in prebuild.xml.
* Added missing m_log fields to classes.
* Replaced Console.WriteLine with appropriate m_log.Xxxx
* Tested that nant test target runs succesfully.
* Tested that local opensim sandbox starts up without errors.
2009-02-22 20:52:55 +00:00
MW 89006da793 Added a check to LLClientView.RegisterInterface<T>(T iface), so that it can't try to add duplicate interfaces and cause a exception. 2009-02-21 14:30:17 +00:00
lbsa71 1cadad9ec6 * Applied a patch that: Added estate ban table to migration scripts and nhibernate mapping. Refactored property getters and setters for estate ban object to support NHibernate.
* Added estate ban table to migration scripts of all supported databases.
* Added nhibernate mapping for EstateBans property of EstateSettings
* Refactored property accessors for EstateBan object.
* Added comments for EstateBan properties.
* Ensured that NHibernate tests pass with NUnitGUI.
* Ensured that nant test target passes.  

This fixes mantis #3210. Thank you, tlaukkan!
2009-02-21 09:39:33 +00:00
Melanie Thielker 863556f2cc Thank you, Snowdrop, for a patch that makes the callback ID parameter
usable. Applied with formatting changes, please don't introduce
K&R style indentations into OpenSim
Fixes Mantis #3190
2009-02-19 03:09:56 +00:00
Melanie Thielker 3130784934 Re-add the objectID field to the anim pack, that was deemed unneccessary
and dropped nonths ago, because it is required to get smooth region
crossings with AO running. Without it, in some corner cases, anims will
continue to run in an unstoppable state.
2009-02-17 04:16:42 +00:00
Mike Mazur 76c0935ec7 - remove the Metadata property from AssetBase and return all previous
properties as before
- prefix private variables with m_ in AssetBase.cs
- related to Mantis #3122, as mentioned in
  https://lists.berlios.de/pipermail/opensim-dev/2009-February/005088.html
- all services will likely need to be upgraded after this commit
2009-02-17 01:36:44 +00:00
Justin Clarke Casey 42bd38960c * Apply http://opensimulator.org/mantis/view.php?id=3149
* If the texture does not contain any discard levels the last image packet was not sent
* Thanks Snowdrop
2009-02-13 17:02:26 +00:00
Justin Clarke Casey 88b273bc71 * refactor: Move export map function to world map module from scene 2009-02-13 16:43:20 +00:00
lbsa71 801da4346a * optimized usings. 2009-02-12 09:53:12 +00:00
diva 5dae1ddb5a Fixes mantis #3121. 2009-02-12 01:09:51 +00:00
diva b6e7e5ed42 Enforce estate bans on Teleports. 2009-02-11 21:07:41 +00:00
Justin Clarke Casey 8645c7482d * Change SendBulkUpdateInventory from two methods to one which accepts an InventoryNode 2009-02-11 19:57:45 +00:00
Dr Scofield 180be7de07 this is step 2 of 2 of the OpenSim.Region.Environment refactor.
NOTHING has been deleted or moved off to forge at this point.  what
has happened is that OpenSim.Region.Environment.Modules has been split
in two:

- OpenSim.Region.CoreModules: all those modules that are either
  directly or indirectly referenced from  other  OpenSim packages, or
  that provide functionality that the OpenSim developer community
  considers core functionality:

      CoreModules/Agent/AssetTransaction
      CoreModules/Agent/Capabilities
      CoreModules/Agent/TextureDownload
      CoreModules/Agent/TextureSender
      CoreModules/Agent/TextureSender/Tests
      CoreModules/Agent/Xfer
      CoreModules/Avatar/AvatarFactory
      CoreModules/Avatar/Chat/ChatModule
      CoreModules/Avatar/Combat
      CoreModules/Avatar/Currency/SampleMoney
      CoreModules/Avatar/Dialog
      CoreModules/Avatar/Friends
      CoreModules/Avatar/Gestures
      CoreModules/Avatar/Groups
      CoreModules/Avatar/InstantMessage
      CoreModules/Avatar/Inventory
      CoreModules/Avatar/Inventory/Archiver
      CoreModules/Avatar/Inventory/Transfer
      CoreModules/Avatar/Lure
      CoreModules/Avatar/ObjectCaps
      CoreModules/Avatar/Profiles
      CoreModules/Communications/Local
      CoreModules/Communications/REST
      CoreModules/Framework/EventQueue
      CoreModules/Framework/InterfaceCommander
      CoreModules/Hypergrid
      CoreModules/InterGrid
      CoreModules/Scripting/DynamicTexture
      CoreModules/Scripting/EMailModules
      CoreModules/Scripting/HttpRequest
      CoreModules/Scripting/LoadImageURL
      CoreModules/Scripting/VectorRender
      CoreModules/Scripting/WorldComm
      CoreModules/Scripting/XMLRPC
      CoreModules/World/Archiver
      CoreModules/World/Archiver/Tests
      CoreModules/World/Estate
      CoreModules/World/Land
      CoreModules/World/Permissions
      CoreModules/World/Serialiser
      CoreModules/World/Sound
      CoreModules/World/Sun
      CoreModules/World/Terrain
      CoreModules/World/Terrain/DefaultEffects
      CoreModules/World/Terrain/DefaultEffects/bin
      CoreModules/World/Terrain/DefaultEffects/bin/Debug
      CoreModules/World/Terrain/Effects
      CoreModules/World/Terrain/FileLoaders
      CoreModules/World/Terrain/FloodBrushes
      CoreModules/World/Terrain/PaintBrushes
      CoreModules/World/Terrain/Tests
      CoreModules/World/Vegetation
      CoreModules/World/Wind
      CoreModules/World/WorldMap

- OpenSim.Region.OptionalModules: all those modules that are not core
  modules:

      OptionalModules/Avatar/Chat/IRC-stuff
      OptionalModules/Avatar/Concierge
      OptionalModules/Avatar/Voice/AsterixVoice
      OptionalModules/Avatar/Voice/SIPVoice
      OptionalModules/ContentManagementSystem
      OptionalModules/Grid/Interregion
      OptionalModules/Python
      OptionalModules/SvnSerialiser
      OptionalModules/World/NPC
      OptionalModules/World/TreePopulator
2009-02-10 13:10:57 +00:00
Sean Dague 8088802c21 From Alan Webb <awebb@linux.vnet.ibm.com>
These changes replace all direct references to the AssetCache with
IAssetCache. There is no change to functionality. Everything works as
before.

This is laying the groundwork for making it possible to register
alternative asset caching mechanisms without disrupting other parts of
OpenSim or their dependencies upon AssetCache functionality.
2009-02-09 21:47:55 +00:00
Dahlia Trimble 8cc327cfa3 send group name in binary bucket in chatterbox invitation eventqueue message 2009-02-08 10:50:22 +00:00
Dr Scofield 9b66108081 This changeset is the step 1 of 2 in refactoring
OpenSim.Region.Environment into a "framework" part and a modules only
part. This first changeset refactors OpenSim.Region.Environment.Scenes,
OpenSim.Region.Environment.Interfaces, and OpenSim.Region.Interfaces
into OpenSim.Region.Framework.{Interfaces,Scenes} leaving only region
modules in OpenSim.Region.Environment.

The next step will be to move region modules up from
OpenSim.Region.Environment.Modules to OpenSim.Region.CoreModules and
then sort out which modules are really core modules and which should
move out to forge.

I've been very careful to NOT BREAK anything. i hope i've
succeeded. as this is the work of a whole week i hope i managed to
keep track with the applied patches of the last week --- could any of
you that did check in stuff have a look at whether it survived? thx!
2009-02-06 16:55:34 +00:00
Mike Mazur 0c03a48fb2 - add OpenSim.Framework.AssetMetadata class. AssetBase is now composed of it
- trim trailing whitespace
2009-02-04 00:01:36 +00:00
diva 360eb239b3 Hopefully fixes mantis #3063. 2009-01-31 00:15:13 +00:00
Dahlia Trimble c747990187 Send groups list via event queue 2009-01-27 06:14:11 +00:00
Dahlia Trimble 4dace03696 add a definition for a parcel properties CAP
send parcel properties via eventqueue rather than UDP to facilitate libomv clients - see Mantis #3040
2009-01-26 10:42:24 +00:00
Dahlia Trimble fa99f01378 more eventqueue IM nonsense 2009-01-26 08:04:12 +00:00
Teravus Ovares 76206543e8 * Adds console command, 'predecode-j2k <number of threads>' to load all of the texture assets from the scene and decode the j2k layer data to cache. The work is split between the number of threads you specify. A good number of threads value is the number of cores on your machine minus 1.
* Increases the number of ImageDataPackets we send per PriorityQueue pop and tweak it so that the number of packets is ( (2 * decode level) + 1 ) * 2, and (((2 * (5-decode level)) + 1) * 2).  The first one sends more data for low quality textures, the second one sends more data for high quality textures.
2009-01-25 04:34:00 +00:00
Justin Clarke Casey c277440e73 * minor: remove mono compiler warning 2009-01-23 20:44:35 +00:00
Dahlia Trimble 68978e6e2a add event queue code for sending group IM for future group support 2009-01-23 01:49:32 +00:00
Teravus Ovares 178fd97bd0 * Fixing a group title 2009-01-23 00:08:35 +00:00
Teravus Ovares 28ddc38deb * Remove a few unnecessary locks to try and prevent lock contention in LLImageManager 2009-01-22 18:28:32 +00:00
Teravus Ovares 9ebba37a7c * discovered! darn! Removing I <3 OpenSimulator from firstname 2009-01-22 10:04:15 +00:00
Teravus Ovares a7ccbb3de0 * Added some more comments
* Fixed up an outgoing packet
* I <3 OpenSimulator
2009-01-22 09:31:01 +00:00
Justin Clarke Casey 37fa677548 * refactor: Extract caps related code from scene and put into a region module
* No functional changes in this revision
2009-01-21 21:14:17 +00:00
Justin Clarke Casey d2d273aebe * minor: move connection success log message so that it doesn't get printed again if a duplicate use circuit code packet comes in 2009-01-21 18:46:44 +00:00
Justin Clarke Casey 22aeda3ba1 minor: find in existing senderUUID field for chat messages originating from a client 2009-01-21 17:56:25 +00:00
Teravus Ovares 68baf9096a * Another image packet edge case. Thanks nebadon for printing a log of it 2009-01-19 21:29:44 +00:00
Teravus Ovares 4823f2ae8e * Set SVN Properties 2009-01-19 18:33:25 +00:00
Teravus Ovares 8e01f75784 * Progressive texture patch + PriorityQueue put into the LLClient namespace.
* Updates LibOMV to r2362
2009-01-19 17:11:57 +00:00
Justin Clarke Casey eca6442bae * Rig up enough infrastructure to actually perform a successful 'standalone' teleport unit test with checks that the scene presence disappeared from sceneA and appeared in
sceneB
* However, I'm not convinced that the actual process in the test completely reflects reality, and a lot of stuff had to be rigged up (which should get resolved over time)
2009-01-16 21:56:13 +00:00
Justin Clarke Casey 093adb2113 * Add new unit test for simple teleport in a standalone.
* Does not yet check results.
2009-01-15 21:27:55 +00:00
Justin Clarke Casey 75ea84f3d2 * minor: Change around more debugging messages 2009-01-14 18:46:33 +00:00
Justin Clarke Casey 6ae1b80d20 * Do some log tweaking to better see incoming connection success (and failure) 2009-01-14 17:34:04 +00:00
Justin Clarke Casey 1e365df495 * minor: Stop friendship termination crashing the client thread if the friend to be terminated could not be found 2009-01-13 16:49:01 +00:00
Justin Clarke Casey efcf6ff095 * Extend current stub packet handler test into a really basic one that checks that a sent in packet ends up on the client queue ready for processing 2009-01-12 20:42:44 +00:00
Justin Clarke Casey ade107f04f * Separate starting a client thread into a separate Start() method (which matches the existing Stop() and Restart() methods) 2009-01-12 19:37:56 +00:00
Justin Clarke Casey d4d2c19594 * Extend PacketHandlerTest to fire in a packet.
* Can't test result yet since the Client thread handles it with unpredictable timing
2009-01-12 18:45:03 +00:00
Justin Clarke Casey 6e9d5e4ea7 * refactor: move packet handler interface into a separate class 2009-01-12 17:31:30 +00:00
MW e1eb1b2cfa a little bit more work on LLFileTransfer.cs, from over the christmas/new year period. Still not working/in use but hopefully I can finish it soon. 2009-01-12 10:16:33 +00:00
Justin Clarke Casey 7cd8748096 * minor: Put in stub LLPacketHandler testing code 2009-01-09 21:05:53 +00:00
Melanie Thielker 7c7ea57c5c Finish dwell sending, adding the forgotten method body.
Add UserInfo and a dummy reply to enable Hippo Viewer users to
disable IM logging (option was greyed out in OpenSim before)
2009-01-09 02:59:56 +00:00
Justin Clarke Casey 17f783457b * refactor: move code for sending a message to all users in a region to the DialogModule 2009-01-08 18:50:46 +00:00
Justin Clarke Casey a31792ee5c * prune and regrade log messages relating to client login and logout 2009-01-06 21:39:55 +00:00
Adam Frisby 3b0eb958a8 * Another minor GenericMessage fix - If we assume the method names are case-insensitive, we should process them as such. 2009-01-04 19:41:55 +00:00
Adam Frisby 00a0f4a286 * Added some information to HandleGenericMessage to indicate that it's not the packet that isnt being processed, but instead the method-type. 2009-01-04 19:39:17 +00:00
Adam Frisby f0864b5154 * Minor tweak to crash logger to copy ini with log if save-to-dir is on.
* Added BinaryGenericMessage handler for cases where GenericMessage isnt transmitting pure-utf8 characters.
2009-01-04 19:09:22 +00:00
Melanie Thielker 7beb8a5abb Plumb the remaining dwell packets 2009-01-03 20:45:33 +00:00
Teravus Ovares e9cef70f89 * Updates the sim stats module. Cleans out some of the rot.
* Adds a prototype web stats module which is disabled by default.  It's functional with one report right now, however, the database structure may change, so I don't recommend enabling this to keep actual stats right now.  I'll let you know when it's safe.
* Adds Prototype for ajaxy web content
* removed a warning or two.
2009-01-03 03:30:03 +00:00
Melanie Thielker a7708413ee Plumb in dwell in a couple of places 2009-01-03 00:03:41 +00:00
Justin Clarke Casey a3af0e61eb * Add Nini.Config and System.Xml references to MockScene for Windows compilers 2009-01-02 20:11:20 +00:00
Jeff Ames 2be0f7a6f0 Update svn properties, minor formatting cleanup. 2008-12-30 01:08:07 +00:00
Melanie Thielker 23844a9073 Plumb the profile reply packets for picks, classifieds and notes 2008-12-25 20:28:13 +00:00
Melanie Thielker 3b6ffd9e41 Plumb yet another groups packet 2008-12-25 18:22:50 +00:00
Melanie Thielker 318de200bd Plumb in EventNotification* and EventGodDelete 2008-12-23 23:41:46 +00:00
Melanie Thielker fc053a6af8 Plumb in the 4 missing classified events and the 3 packet methods 2008-12-23 18:16:30 +00:00
Justin Clarke Casey cce1b096db * refactor: Replace part of SceneObjectPart with the identical sound playing code in the SoundModule 2008-12-23 17:54:13 +00:00
Teravus Ovares 119104e35b * Re-implement packet tracking in IClientAPI so we can see what's going on in the client network in the simstats manager. This makes packets in per second, packets out per second, and unacked bytes work again in the simulator stats section. 2008-12-21 00:11:54 +00:00
Justin Clarke Casey 899f2a80d7 minor: remove mono compiler warning 2008-12-19 19:50:46 +00:00
lbsa71 56f1b03cd0 * Added "show queues" command that shows throttling queues for all clients.
*** This only works for LLCLientView at the moment ***
2008-12-18 13:16:41 +00:00
Melanie Thielker a9e38bcafc Reapply the packet optimization patch, with changes 2008-12-17 21:00:18 +00:00
Melanie Thielker 2bcf315ea2 Revert 7754 and 7755 pending a rework 2008-12-17 20:34:37 +00:00
Melanie Thielker 5320f0f33c Stop packets that may be resent from being returned to the packet pool.
FWIW
2008-12-17 20:21:48 +00:00
Justin Clarke Casey 2108d328df * revert r7724 so that PresenceChildStatus() starts throwing NRE's again
* apparantly logout code relies on this happening in certain circumstances.  Really, the root issue needs to be investigated.
2008-12-17 19:12:56 +00:00
Melanie Thielker 7ef5a79fef Change the PacketQueue to use the stored size as well 2008-12-17 19:01:47 +00:00
Melanie Thielker 0d3a9b45ae Marry AckData to LLQueItem, and store packet data and length there for
use everywhere. Each packet gets serialized only once now in PacketHandler
2008-12-17 18:56:47 +00:00
Justin Clarke Casey ab77b22f0f * Only serialize packets once for the length calculation for throttle queues rather than twice 2008-12-17 17:33:57 +00:00
Melanie Thielker 35ec496f98 Revamp packet handler to smooth out the stream of resent packets.
Eliminates the bursting in resends observed in the prior implementation
2008-12-17 17:19:14 +00:00
Justin Clarke Casey 72ff5322f5 * Replace manually zeroing with Array.Clear(). Thanks cmickeyb 2008-12-17 17:18:52 +00:00
Melanie Thielker 8e5fe0257c Mantis #2850
Applying the patch to reduce the load caused by the throttle loop even more
2008-12-17 17:05:12 +00:00
Justin Clarke Casey 2e79fd0f0c * minor: Minor documentation and small minor change on LLPacketThrottle to remove some unnecessary lines 2008-12-17 17:01:02 +00:00
Justin Clarke Casey b4680f653d * Implement 'Save Object Back to My Inventory'. On the Linden client this is in the Tools menu available when editing an object
* This facility allows you to save changes to an object that you've rezzed into a region back into their original inventory item without having to take a copy of the rezzed 
object.
2008-12-17 16:11:03 +00:00
Melanie Thielker a5343c5404 Add repecting the min and max values back in 2008-12-17 09:55:10 +00:00
Melanie Thielker e394e1c06f Remove a major bottleneck in throttling code. 2008-12-17 09:52:52 +00:00
Melanie Thielker 02a28a6992 Avoid checking the throttle limit for empty queues 2008-12-17 09:30:56 +00:00
MW 1110ee877f More work on moving Xfer file transfer handling code to the Client stack from the various region modules that it is currently in.
Still not enabled yet.
2008-12-15 21:46:57 +00:00
Justin Clarke Casey 41ad030a5a * minor: method documentation and miscellaneous tidy 2008-12-15 20:32:49 +00:00
Melanie Thielker 008e1fe8df Plumb the TP-Sending packets 2008-12-14 05:49:07 +00:00
Charles Krinke e6eb571c1d Mantis#2725. Thank you kindly, Diva, for a patch that:
Adds missing protocol pieces for EstablishAgentCommunication
event which allows the client to activate CAPS and the EQ for 
child agents.
2008-12-14 02:17:12 +00:00
MW 40bbf886f2 more work on moving FileTransfer code to the clientstack.
Still not enabled.
2008-12-13 15:04:24 +00:00
Jeff Ames 8929bfc369 Add copyright headers. 2008-12-13 12:30:46 +00:00
Jeff Ames 4f9d5d955b Update svn properties. 2008-12-13 12:22:52 +00:00
MW e0765fa6c8 more work on moving FileTransfer code to the clientstack.
Although its still not enabled.
2008-12-12 22:20:13 +00:00
MW 6e07ef9cb9 Add OpenSim.Framework.IClientFileTransfer. 2008-12-12 21:17:49 +00:00
MW e9d905f48c Started to move xfer file transfer code to the LLClientStack, rather than having it in a region module (like it was).
Note:None of this is enabled yet.
2008-12-12 21:08:23 +00:00
Justin Clarke Casey 557567dcf8 * minor: remove some old logging messages 2008-12-09 16:16:16 +00:00
Homer Horwitz 6ab09bc139 Send the creation-date of items to the viewer. This fixes Mantis#2769. 2008-12-06 22:51:41 +00:00
Justin Clarke Casey 5ffbba9a8f * minor: Take out some of the test log output I accidentally left in a couple of commits ago 2008-12-04 21:06:25 +00:00
Justin Clarke Casey 38ca31b37a * Put in the code necessary to allow inventory transfer of whole folders (and their contents) between agents, not just single items
* However, this is not currently activated since it's not absolutely fully tested and there's a bug lurking in there to do with the sending of the BulkInventoryUpdate packets
2008-12-04 19:57:36 +00:00
Jeff Ames 077314cdd3 Update svn properties. Add copyright header. Minor formatting cleanup. 2008-11-30 00:51:40 +00:00
Melanie Thielker ef4a80eeaf Should have tried with something other than attachments. Make normal prim
render again :)
2008-11-29 03:18:06 +00:00
Melanie Thielker 287c724b55 A try to better attachment crossing. 2008-11-29 01:33:10 +00:00
Teravus Ovares c9a5215d6d * Fixes Location == Location, and Location != Location 2008-11-28 20:37:21 +00:00
Justin Clarke Casey dfbec673a4 * simplify AddNewClient since making this root without using MakeRootAgent() no longer sets everything up properly 2008-11-28 20:11:17 +00:00
Teravus Ovares 414bf2aaf1 * The equals override of 'Location' is not working as expected. This caused sim restarts to fail because the test that searches for and shutsdown the UDP server listener for that region never found and shutdown the udp server. hence the error message, "only one listener on port".
* This is a high profile candidate for a unit test. (big)
2008-11-28 19:44:44 +00:00
Justin Clarke Casey df9b0e9e11 * refactor: Replace derez destiation magic numbers with an enumeration 2008-11-28 17:18:10 +00:00
Melanie Thielker d20a3c6e5a Cause attachment nibbles to be swapped in terse object updates, too.
This error may have been the root cause of the head attachment bug.
2008-11-27 22:30:54 +00:00
Justin Clarke Casey 8ba6b2b11a * minor: remove mono compiler warnings 2008-11-27 19:51:11 +00:00
Charles Krinke 921692a15f Thank you kindly, Nlin for a patch that:
Adds a new method to IClientAPI to allow adding message handlers 
for GenericMessages (of which "autopilot" is one). Part 2 adds a 
specific autopilot handler in ScenePresence.cs.
2) Removing unused variables and functions.
3) Simplifying the navigation logic in ScenePresence.cs. The 
original patch was somewhat complex because it included orientation
logic for a future enhancement of orienting the avatar to point 
towards the direction being walked. Currently this isn't working, 
though, so I removed the orientation code, which leaves just the 
smaller and hopefully simpler-to-understand movement code.
2008-11-27 05:16:47 +00:00
Justin Clarke Casey 7c2f8e2ee9 * Get rid of the phenomena where the avatar sometimes reverts to the stand animation when flying across borders
* Applies to both standalone and grid mode
* The slight retardation on border cross remains - this is a separate issue
2008-11-26 16:56:57 +00:00
Homer Horwitz 1148d9a11c Removing some direct console output for outputting ImprovedInstantMessage packets. 2008-11-22 17:42:23 +00:00
Melanie Thielker c71863d83e First stage group permissions plumbing 2008-11-22 01:58:36 +00:00
Melanie Thielker ba723a4cf6 Refactor: Scene.ExternalChecks -> Scene.Permissions. Also make all
the internals of the permissions module adapter sane
2008-11-21 22:14:57 +00:00
Justin Clarke Casey 915593bfbc * refactor: Rip out SOP inventory from the partial into a separate class
* SceneObjectPartInventory.cs isn't a particularly good name but it's probably not got a long life
* A proper inventory interface to follow
* Parallel changes for other inventory partial classes to follow at a later date
2008-11-21 21:16:42 +00:00
Jeff Ames ecac5c9c5a Update svn properties, minor formatting cleanup. 2008-11-21 18:44:48 +00:00
Melanie Thielker e9ad6f7913 Plumb in the list if user IDs to the land module to allow selection
of objects by owner name
2008-11-21 04:41:39 +00:00
Charles Krinke 164ed57ad3 Mantis#2638. Thank you kindly, Sacha Magne for a patch that:
Implementing "Play sound inworld". Currently a WIP .
2008-11-19 18:41:10 +00:00
Melanie Thielker f518ca7feb Reapply r7369 r7367 r7366 r7370 r7381. This brings it back up to the new
libOMV.
2008-11-19 06:25:34 +00:00
Melanie Thielker 3234472d62 Reverting the texture sending patch and the new libOMV. This makes this
release a direct descendant of the stable 7364, with all the features and
none of the issues.
This omits the following patch chain: r7383 r7382 r7381 r7377 r7375 r7373
r7372 r7370 r7369 r7368 r7367 r7366
2008-11-19 06:15:21 +00:00
Adam Frisby 434afaf717 * Added and removed debug information relating to client connections
* Minor client fixes
* Added the ability for a client to login without a UserProfile, allowing certain alternate clients to connect to the region.
2008-11-18 00:47:30 +00:00
Melanie Thielker 2b8915d679 Make newly created prims be the correct group 2008-11-17 23:43:46 +00:00
Justin Clarke Casey c25a0ea792 * Update libOMV to r2359. This is necessary for the progressive texture patch
* Update libopenjpeg as well for this patch.
* Appears to be okay on a very short sniff test
* Source code will be placed in opensim-libs shortly
2008-11-17 21:00:34 +00:00
Melanie Thielker 0a01826843 Change some comments that have been superseded 2008-11-17 18:16:08 +00:00
Justin Clarke Casey 558704be8b * Remove the TransferRequest and hip debugging console output that crept in recently 2008-11-17 16:14:23 +00:00
Melanie Thielker 4d23d22fb1 Remove a redundant parameter 2008-11-16 23:25:36 +00:00
Melanie Thielker 5e2e05a1c1 Megapatch. Completely remove the multiparameter IM methods. Remove the insecure
fromAgentSession field.
2008-11-16 22:04:01 +00:00
Melanie Thielker 27e557eb98 Introduces the message transfer module. It splits the transfer mechanics off
the IM module and makes it into a module of it's own, which can be used by
all other modules. Removes some ugly hacks. Refer to the IM module to see
how it's used. Also fixes the persistence issue (Mantis #2598)
2008-11-16 00:47:21 +00:00
Justin Clarke Casey 2bb4b45626 * Move test scene construction infrastructure methods to a separate class for future common use 2008-11-14 20:06:44 +00:00
Melanie Thielker d66f3993de Add group permissions to agent inventory.
Contains a migration. May contain nuts.
Please back up your inventory data store. This revision changes the interface
version!! No older regions can connect to these new UGAIM, and the new regions
can't connect to the old UGAIM. Fixes a long-standing issue of permissions loss
Currently persisted on MySQL only.
2008-11-14 18:54:38 +00:00
Teravus Ovares 3e4b094921 * Implements terrain raw upload. You can now upload your .raw terrain files using the Estate Tools.
* Could this be extended in the future to support .oar uploads too?  Only time will tell!
2008-11-14 14:42:00 +00:00
Melanie Thielker 4f91da2488 More groups plumbing 2008-11-14 05:18:39 +00:00
Justin Clarke Casey e2ab576572 * Stop locking the scene presences dictionary for the entire agent crossing part of the login sequence
* This may alleviate a little the freezing experienced by existing avatars when a new client logs in
* Race condition risks look minimal since one wouldn't expect another thread to start fiddling with that presence
2008-11-12 18:12:18 +00:00
Melanie Thielker 47a5d71b7e Prevent pieces from other people's HUDs from displaying at the center of
every user's HUD
2008-11-11 19:08:59 +00:00
Adam Frisby 1493f7349f * Minor typing fixes in AssetCache - now uses base types for nearly everything.
* Code Cleanliness Fixes in LLClientView
* Using field instead of local variable for handlerUpdatePrimGroupRotation (if you notice any new oddities with prim group rotation after this patch, please mantis)
2008-11-11 17:48:36 +00:00
Mike Mazur 32b9975468 If the proxy is on, we need to ignore the extra 6 bytes in the packet. 2008-11-11 03:41:28 +00:00
Melanie Thielker 302d65569f Allow gods to terraform without limits. Respect the Allow Others To
Terraform flag in land.
2008-11-11 01:47:40 +00:00
Teravus Ovares d145700115 * Commit allows downloading of the .raw terrain from the estate tools.
* Implements the SendInitiateDownload method in IClientAPI 
* Uses the ITerrainModule Interface to write a terrain file to disk then uses a FileStream to read the binary file from the disk and put it in a byte array. and save to the xFer list.
* It then tells the client to download the file and the client initiates an Xfer request.
2008-11-10 23:56:58 +00:00
Johan Berntsson 22b70495ab The region proxy for the load balancer module works again. The incoming proxy messages were not properly decoded. 2008-11-10 09:50:05 +00:00
Melanie Thielker 298ab2f9cb Prevent updates about other people's HUD objects being sent 2008-11-09 22:52:00 +00:00
Adam Frisby c43e466301 * Enabled GTCache for AssetCache
* Items will now be locally cached for only 24 hours from last access. (Rather than until restart)
* Caveat: Implementing the new caching mechanism means statistics gathering on AssetCache is no longer functional. (Justin - you might want to take a look and see if you can somehow get that back and running if you still need it)
2008-11-09 15:00:26 +00:00
Jeff Ames 8da726c3a8 Update svn properties. Add copyright headers. Minor formatting cleanup. 2008-11-09 01:31:38 +00:00
Melanie Thielker bdf9add8d1 Reintroduce transactionID to the parameter list for SendInstantMessage.
It is required by group IM and also for a proper implementation of item
give, group notice attachments and offline IM.
2008-11-09 01:16:42 +00:00
Adam Frisby ddca72530d * Quick test for Dahlia, returns Packet Processing Loop to Infinite Loop. 2008-11-08 23:17:30 +00:00
Adam Frisby 7308f35a96 * Fixed issue where incorrect braces nesting resulted in a section of PacketQueue getting disabled.
* This means the recent memory fix should now be working correctly - so the current largest memory leak should be fixed. AssetCache still needs to be addressed however.
2008-11-08 21:08:01 +00:00
Adam Frisby fb2a1a6b7c * Fixed a major memory leak in packet processing - PacketQueue.Close is never called, causing the PacketQueue for dead clients to be preserved (including it's contents).
* This patch is highly experimental and may cause clients to not be able to connect, if this is the case, it will be rolled back in approximately 5 minutes.
2008-11-08 20:52:48 +00:00
Adam Frisby 4e94989106 * Added IClientChat to IClientCore
* Updated LLClientView
* Removed defunct SendChatMessage(bytes[]...) method, see http://opensimulator.org/wiki/OpenSim_0.6_IClientAPI#Porting_Guide
2008-11-08 19:29:35 +00:00
Adam Frisby cf0a14bec9 * Added IClientIM to IClientCore interfaces
* Changed SendInstantMessage, dropped fromAgentSession and imSessionID as security precaution, see http://opensimulator.org/wiki/OpenSim_0.6_IClientAPI#Porting_Guide for details on porting.
* Removed unused usings from Framework.*
2008-11-08 17:20:54 +00:00
Adam Frisby b0a90642de * Made ClientLoop non-infinite, ClientLoop will now disengage when the client has logged out.
* Cleaned up a section of LLClientView
* Removed unused 'using' from HTTPServer 
* Please test this patch.
2008-11-08 16:22:36 +00:00
Adam Frisby 6d5248441d * Implementing first of the 0.6 IClientAPI Changes
* Introducing IClientCore - this will be the key replacement for IClientAPI in the long run, it has a very minimal set of methods designed to allow you to access specialist API's.
* See https://lists.berlios.de/pipermail/opensim-dev/2008-September/003049.html for the early discussion on this.
2008-11-08 16:09:15 +00:00
Justin Clarke Casey bf9384d594 * Apply http://opensimulator.org/mantis/view.php?id=2582
* Send prim flags as booleans from LLClientView rather than in the native LL array
* Thanks idb
2008-11-07 22:57:32 +00:00
Melanie Thielker 48c6d052d9 Attachments, attachments, and, did I say attachments?
Too many fixes to list.
2008-11-07 05:48:44 +00:00
Teravus Ovares f0bf3df024 * Fix half of the issue behind the long standing 'UseCircuitCode' packet spam from libOMV clients. AckPacket.Header.Sequence was 0. This caused LibOMV to ignore it.
* There's another patch over at http://jira.openmv.org/browse/LIBOMV-415 to fix the 'resend forever' issue.
2008-11-07 01:05:22 +00:00
Jeff Ames 486ac1e12f Update svn properties, minor formatting cleanup. 2008-11-06 22:24:34 +00:00
Justin Clarke Casey c6dad833f5 * minor: remove some mono compiler warnings 2008-11-06 21:01:16 +00:00
Justin Clarke Casey d31d02c373 * refactor: Split BeginRecieve() into BeginReceive() and BeginRobustReceive() 2008-11-06 20:10:39 +00:00
Justin Clarke Casey 5a852321e0 * Stop passing along epSender explicitly where we are really using the constantly reused ep sender field 2008-11-06 19:59:59 +00:00
Justin Clarke Casey 427a80bba5 * test: Add assert checking that the circuit which trigger the socket exception has been closed 2008-11-06 19:52:06 +00:00
Justin Clarke Casey 29691a3d36 * Test to ensure that the udp server stays active after receiving a SocketException on BeginReceive 2008-11-06 19:35:57 +00:00
Justin Clarke Casey 8477aab8e0 * refactor: factor out test packet send method in client stack unit tests 2008-11-06 18:27:56 +00:00
Justin Clarke Casey f7f448bc78 * Fix capitalization typoes in packet throttle that happened to be the name of existing fields
* This should (hopefully) allow TestClient and stuff built on top of it to work again
* Will probably come back later and change variable names to stop this happening again
2008-11-05 22:17:47 +00:00
Justin Clarke Casey 892e7bf9fb * Properly use the default value if the LindenUDP.ClientStack section exists by the client throttle setting does not
* Old behaviour was to throw an exception on startup
* Print out client stack setting temporarly for debug purposes
2008-11-05 20:42:37 +00:00
Justin Clarke Casey fc36d7fdf2 * Set default client throttle multiplier to 2 (old value was effectively 8). See OpenSim.ini.example for details as to what this means
* Really this should be 1, but I think that this would be too slow compared to a Second Life server until we improve our ability to send textures of variable quality
* This may improve one aspect of sim performance where there are many avatars.  However, there are still other performance problems that are unrelated to this change
* Value may be further tuned
* Removed temporary decals since the multipler setting will stick around now
2008-11-05 19:23:59 +00:00
Justin Clarke Casey 4ff0c39153 * Expose a client_throttle_multiplier setting in OpenSim.ini. This multiplier is applied to all the client throttle settings received by the client
* This should probably be 1, but currently by default it is 8, to reflect what was being eon3 in OpenSim before this revision.  So if the client requested a maximum throttle 
of 1500 kilobits per second, we would actually send out 1500 kilobytes per second
* Adjusting this multiplier down towards 1 may improve your OpenSim experience, though in other situations it may degrade (e.g. if you're using a standalone over high bandwidth 
links)
* This is currently a user setting because adjusting it down may currently reveal other OpenSim bugs.
2008-11-03 21:09:30 +00:00
Justin Clarke Casey 8dbd0118a8 * Pull client throttle multipler setting out of config source. Not an adjustable setting yet (and then only for debug purposes) 2008-11-03 19:02:44 +00:00
Justin Clarke Casey 6ea24799dd * minor: don't need to null check config source in clientstack settings since this is always non null 2008-11-03 18:49:25 +00:00
Justin Clarke Casey 8c71954e08 * Use nini to pass config information to the client stack, rather than the ClientStackUserSettings class
* This conforms better to other module usage
2008-11-03 18:33:35 +00:00
Adam Frisby 4c24b1bc9b * Massive cleanup of LLClientView, removed a few hundred unnecessary value initialisers, etc. 2008-11-01 22:34:04 +00:00
Homer Horwitz 38e8853e57 Megapatch that fixes/adds: friend offer/deny/accept, friendship termination,
on-/offline updates, calling cards for friends.
This adds methods in the DB layer and changes the MessagingServer, so a full
update (incl. UGAIM) is necessary to get it working. Older regions shouldn't
break, nor should older UGAIM break newer regions, but friends/presence will
only work with all concerned parts (UGAIM, source region and destination
region) at this revision (or later).
I added the DB code for MSSQL, too, but couldn't test that.
BEWARE: May contain bugs.
2008-11-01 22:09:48 +00:00
Justin Clarke Casey b03e34dd2d * Fix http://opensimulator.org/mantis/view.php?id=2517
* Don't save attachments on saving oar, which stops them coming back as ghost prims
2008-11-01 21:28:52 +00:00
Justin Clarke Casey 465a931c05 * In the client stack, if the BeginReceive() throws an exception then do print this out to the log once
* This may help us detect if mysterious UDP disconnects are happening because of this.
* Shouldn't be any functional change but I would appreciate a buddy check from Teravus if he has time (as for all client stack changes)
2008-10-31 19:41:07 +00:00
Justin Clarke Casey 5feaff8524 test: Extend malformed packet test to actually check that a valid packet can get through after the malformed ones have been sent 2008-10-30 22:32:23 +00:00
Justin Clarke Casey 419775c72b * test: Test that the client stack doesn't completely blow up if a client passes it malformed data 2008-10-30 20:17:30 +00:00
Justin Clarke Casey 2fb8089d8c * Slightly tweak to teardown test, try a circuit which never existed in the first place 2008-10-30 19:46:52 +00:00
Justin Clarke Casey 22ec3e7952 * minor: spacing adjustment before next commit 2008-10-30 19:43:58 +00:00
Justin Clarke Casey bc1b69b2fd * test: fill out circuit teardown test 2008-10-30 19:42:25 +00:00
Justin Clarke Casey 80e87747f3 * test: Refactor test infrastructure for future client teardown test 2008-10-30 19:26:38 +00:00
Justin Clarke Casey 8a3157aa6a * Check in (disabled) results of not persisting avatar textures but rather sending ImageNotFound to clients if avatar textures are missing
* Whilst this does automatically get the client to rebake, on crossing a region border the 'local' assets are left behind
* There may be a cunning solution (such as squirting the assets on region crossing, or having them fetched from the original region) but 
instead I'm going to opt for the easy solution of keeping them in the asset database, for now
2008-10-29 18:38:10 +00:00
Melanie Thielker f9eb3712ed Remove a debug output 2008-10-29 00:32:41 +00:00
Melanie Thielker 766269a59b Plumbing along.... 2008-10-29 00:15:39 +00:00
Justin Clarke Casey 1ff9709ea3 * Possibly fix grey avatar appearance problems
* And hopefully rebaking all the time should no longer be necessary now
* It turns out that when the client baked the texture, the uploaded asset had the Temporary flag to true (Temporary is actually deprecated).  
* It also had the StoreLocal flag set to true, which signifies that the asset should be stored locally.  If it disappears we should reply to the asset request with 
ImageNotInDatabasePacket
* However, last time this was enabled some clients started crashing.  This may well no longer be the case and needs to be tested, but in the mean time we will store 
the asset instead.
* This needs to be resolved in a better way, possibly by starting to send the ImageNotInDatabase packet again instead
2008-10-28 21:31:23 +00:00
Justin Clarke Casey 247b806134 * minor: Add documentation to some of the appearance methods, change some logging messages 2008-10-28 17:35:36 +00:00
Jeff Ames b2d6b0a3d4 Update svn properties, minor formatting cleanup. 2008-10-27 01:43:59 +00:00
Melanie Thielker f7e44250bf Committing a small fix for EventData along with more plumbing work 2008-10-26 19:32:41 +00:00
Melanie Thielker c49e1b8fb6 A few more bots to yesterday's plumbing: change instant message method
signature
2008-10-25 13:53:17 +00:00
Melanie Thielker 26643c4a9d More plumbing and some wires 2008-10-25 01:42:43 +00:00
Melanie Thielker f85be9b39a Fix a leak in the plumbing 2008-10-24 23:55:28 +00:00
Melanie Thielker 64f9f03e9a Plumb some more 2008-10-24 23:04:55 +00:00
Justin Clarke Casey c519b80680 * minor: eliminate some mono compiler warnings 2008-10-24 21:40:05 +00:00
Justin Clarke Casey 7b224677c1 * Stop passing in unnecessary pameters to CreateNewCircuit 2008-10-24 21:34:18 +00:00
Justin Clarke Casey 3340a579e7 * Stop creating a circuit if the client fails authentication (i.e. the region server wasn't told that it was coming)
* This moves authentication from the client thread (where failure was difficult to detect) to the particular thread handling that packet
* I've kept the authentication outside of the crucial clientCircuits lock (though any delay here is probably swamped by the other delays associated with login)
* Also added more to the unit test to ensure this doesn't regress
2008-10-24 21:22:54 +00:00
Justin Clarke Casey 91c2e53277 * Change AddClient test such that we now successfully authenticate
* The fact that the assert passed even when authentication failed reveals a bug in the code that will be corrected soonish
2008-10-24 19:40:45 +00:00
Justin Clarke Casey 9fa7264c73 * minor: refactor out AddUser test setup to common method 2008-10-24 19:10:25 +00:00
Melanie Thielker a9b1119e49 Remove a debug output dump 2008-10-24 15:04:35 +00:00
Melanie Thielker 6775b7d02d Lotsa plumming :) 2008-10-24 14:53:13 +00:00
Justin Clarke Casey 369aa8f46b * minor: Remove unused public PacketServer variable.
* If this was important to you please reinsert and we can put it in a recognized interface.
2008-10-23 20:10:19 +00:00
Justin Clarke Casey c379c66c7c * Reenable assert for the add circuit test
* This checks that a client circuit is established when the udp server is given a use client circuit code packet
* And checks that other circuit codes do not exist
2008-10-23 19:51:10 +00:00
Justin Clarke Casey 6101202403 * Revert to executing existing setup if an added circuit did not already exist
* Not sure why things still worked in the presence of this bug - possibly the problem is compensated for later on.  If you are having udp session problems this bug fix may help 
(though no guarantees).
2008-10-23 19:25:40 +00:00
Justin Clarke Casey d30a596989 * Add missing file from last commit. Yay for continuous integration! 2008-10-23 19:16:33 +00:00
Justin Clarke Casey f4ad99f89d * Introduce a basic udp circuit test for adding a client
* Temporarily disabled assert because it just picked up an existing bug.  Yay for tests!
2008-10-23 19:08:54 +00:00
Justin Clarke Casey ee3c428040 * Refactor LLUDPServer slightly so that unit tests can pass in data synchronously. Shouldn't be any functional change 2008-10-23 17:16:13 +00:00
Melanie Thielker f44742f75f Pare the groups module down to basics. Adjust dependent files so that a
real groups module can even be implemented.
2008-10-21 22:54:31 +00:00
Justin Clarke Casey 923f9fb749 * minor: remove mono warnings 2008-10-19 18:45:41 +00:00
Teravus Ovares ed8a20dd60 * Fixed UDP server (again)
* Guys, there's an endless loop there *ON PURPOSE*.  Please don't try to *fix* it.  We must continue to process the UDP stream buffer on clients that disconnected nastily until it ends or the UDP server accept thread will die a horrible death.
2008-10-19 17:02:39 +00:00
Homer Horwitz 1ee10d919a Added calling cards. Fixes Mantis#2409 and part of #1515. 2008-10-19 16:49:10 +00:00
Teravus Ovares 6362760d30 * Null check before UseCircuitCode Check or the server crashes on packet loss! 2008-10-19 01:06:50 +00:00
Melanie Thielker efe3f3eb2a Megapatch. :) Fix skull attachment editing. Streamline Object terse updates.
Add rezzing time to objects. Add Object return and traffic fields to land
database. Add plumbing for auto return. Implement auto return.
Contains a migration. May contain nuts.
2008-10-18 05:51:36 +00:00
Justin Clarke Casey 739f1591da * Remove mono warnings 2008-10-17 20:45:07 +00:00
Justin Clarke Casey 400314e884 * Finally, don't worry about doing containment checks on other dictionaries if we are adding a client
* Regarding an earlier change, I think it would be possible to eliminate the creation of new IPEndPoints on every end receive if we did the client circuit lookup before starting 
the next receive.  However, this would be a performance trade off and hence not worth trying without performance testing
2008-10-17 20:38:00 +00:00
Justin Clarke Casey 4ccac88cf6 * Don't worry about trying to populate the other dictionaries if a client's circuitcode is already found in the first one 2008-10-17 20:30:50 +00:00
Justin Clarke Casey 90d69a0523 * close two potential race conditions where a new asynchronous UDP recieve could overwrite an existing endpoint that had not yet been used by the previous thread
* in practice these race conditions were probably pretty rare
2008-10-17 20:14:31 +00:00
Justin Clarke Casey 84492fee01 * Temporarily resume creation of IPEndPoint on every call
* This widened what I think is an existing race condition where asynchronous recieves could potentially stomp on each other's end points (though this must occur very rarely, if at 
all, in reality)
2008-10-17 19:08:53 +00:00
Justin Clarke Casey 7891f821e2 * Instead of creating a new IPEndPoint on every udp packet receive, reuse the existing one
* This requires copying details into a new endpoint when it needs to be stored in client/circuit code hashes
2008-10-17 17:57:18 +00:00
Justin Clarke Casey e4b8912296 * reverse part of a change that accidentally crept in with the last revision 2008-10-17 17:08:14 +00:00
Justin Clarke Casey 138bcf6fff * Apply a modified version of http://opensimulator.org/mantis/view.php?id=2290
* This allows multiple user profile providers to be specified in OpenSim.ini separated by commas
* If multiple providers are specified then a request for a user profile will query each in turn until the profile is either found or all have been queried
* Unfortunately I don't believe this order can currently be specified, which if true is something that will need to be fixed.
* Thanks to smeans for the original patch.
2008-10-17 16:44:05 +00:00
Justin Clarke Casey 82b7374ed2 * minor: get rid of pointless ipeSender 2008-10-16 19:50:12 +00:00
Justin Clarke Casey 98fdf504d9 * Truncate outgoing media and music urls to 254 characters.
* Hopefully this will resolve http://opensimulator.org/mantis/view.php?id=2383
2008-10-15 20:24:44 +00:00
Justin Clarke Casey 230835dbaa * refactor: Remove OutPacket from the IClientAPI
* I believe this is reasonable since code outside the Linden client stack shouldn't be aware of the packet format being used
* I would love to have made the method protected, but the LoadBalancerPlugin is still calling it and resolving that would require more work
2008-10-15 17:06:47 +00:00
Justin Clarke Casey 87e85489f3 * refactor: move viewer effect packet into LLClientView 2008-10-15 16:52:48 +00:00
Justin Clarke Casey 9324c3f110 * refactor: Move error logging from GetUserDetails up to callers, since there are some circumstances in which not finding a user is not an error 2008-10-15 16:35:27 +00:00
Justin Clarke Casey 2226626fec * refactor: move code concerned with creating a subsequent image packet to LLClientView 2008-10-15 15:30:27 +00:00
Justin Clarke Casey 063ba29ff8 * refactor: rename SendImagePart to SendImageFirstPart since this is more descriptive of its actual function 2008-10-15 14:56:58 +00:00
Justin Clarke Casey b70a285373 * Send an avatar update to other clients when an avatar rotates, as well as when it moves
* This should fix a long standing issue where you often wouldn't see other people simply turn around without moving at all
* Arguably lastPhysRot (to mirror lastPhysPos) is not a good name, may change variable names later
2008-10-14 20:28:34 +00:00
Justin Clarke Casey 58f8c042f6 * minor: change m_debug to m_debugPacketLevel since that's what it is 2008-10-14 18:53:56 +00:00
Justin Clarke Casey 3b9400bcea * refactor: rename SendKiPrimitive to SendKillObject since this appears more descriptive of what it actually does 2008-10-14 14:43:46 +00:00
Justin Clarke Casey 8ab50fe3ee * Make KillObjectPackets reliable
* This may help http://opensimulator.org/mantis/view.php?id=2377 where large linksets do not always correctly delete - since a lost kill packet to the client could result in 
the symptoms described
2008-10-14 14:27:00 +00:00
Homer Horwitz f52c5febd3 Add EventInfoRequest and EventInfoReply packets.
Note: New file, run prebuild.
2008-10-12 16:29:29 +00:00
Adam Frisby d7aedf343a * Small fix for when PacketPool is disabled to prevent it from crashing immedietly. 2008-10-12 01:09:58 +00:00
Adam Frisby dcdfde834f LLUDP Client View
* Experimenting with the PacketPool mechanism.
* It's still disabled in the code, however there's now a flag to enable it.
* Converted to use Generic Collections vs Hashtables, also now uses a list of 'OK to pool' packets, starting with the high volume PacketAck packet.
2008-10-12 00:56:54 +00:00
Homer Horwitz bed6c763a5 * Rework llParcelMediaCommandList
* Add missing PARCEL_MEDIA_COMMAND_* constants
* Fix a copy/paste error in SendParcelMediaUpdate
llParcelMediaCommandList should work now
2008-10-11 15:18:55 +00:00
Melanie Thielker 544daf1c76 Plumb the remaining search packets and replies. 2008-10-11 05:59:12 +00:00
MW 0644977819 added a list of SurfaceTouchEventArgs to the IClientAPI.OnGrab event, for the new surface touch parameters in 1.21 viewers. 2008-10-10 17:05:43 +00:00
MW 5be7442736 added a list of SurfaceTouchEventArgs to the IClientAPI.OnGrabUpdate event, for the new surface touch parameters in 1.21 viewers.
TODO: add the touch args to OnGrabObject and OnDeGrabObject.
2008-10-10 16:01:59 +00:00
Melanie Thielker 5c5a640aba A bit more estate fudging 2008-10-10 02:06:34 +00:00
Justin Clarke Casey 7bdfc16535 * fix windows build break - it helps if one actually puts in using statements and spells dlls correctly 2008-10-09 21:43:43 +00:00
Justin Clarke Casey 997eec671a * minor: get rid of an unecessary casting and logic check 2008-10-09 20:02:40 +00:00
Justin Clarke Casey 8ad0249969 * refactor: separate process of extracting packet from received data from actually processing that packet 2008-10-09 18:09:25 +00:00
Justin Clarke Casey 285ae803e2 * minor: initialize udp server in unit test 2008-10-09 18:00:38 +00:00
Justin Clarke Casey 919d907a3d * Create project for LindenUDP ClientStack tests
* No functional tests yet
2008-10-09 16:52:33 +00:00
Justin Clarke Casey db0d90c737 * minor: very small doc addition 2008-10-09 16:23:11 +00:00
Teravus Ovares ac674ccbfc * Fixes simstats reporter. I'm sure this issue caused all sorts of things related to regionflags and capacity. I'm sorry, the object capacity that you dialed is not valid.. please check the number and dial again. 2008-10-09 11:44:26 +00:00
Charles Krinke ac443559d1 Mantis#2354. Thank you kindly, Tglion for a patch that:
The average-value of modify.ModifyBlock.Height in LLClientView.cs:4170 
seem to be incorrect or it isn't the average? Mhhh...
So the terrain build -> Flaten Sphere is unuseable.
I have put in a patch that contains a workaround while 
the main problem is not solved.
2008-10-08 14:51:55 +00:00
Justin Clarke Casey 4ed6e78d1a * Comment out debug throttle output that I had accidentally left in 2008-10-07 21:44:29 +00:00
Justin Clarke Casey 914c733505 * Temporarily revert r6714 which changed agent throttle number interpretation
* I suspect the restriction stopped the very large number of packet resends that occur on certain operations, which led to other failures.
2008-10-07 20:04:43 +00:00
Justin Clarke Casey 48d86fb23f * Apply http://opensimulator.org/mantis/view.php?id=1207
* Implmements llModifyLand() and a check for the "Allow others to terraform flag"
* Thanks tglion!
2008-10-07 14:49:12 +00:00
Justin Clarke Casey cb7a9eaa09 * Stop the sim stats reporter reusing the same SimStatsPacket for all clients
* I believe this was the cause of the remaining packet_out_of_order messages in the Linden client logs
* There were race conditions where multiple clientstacks would overwrite each other's sequence numbers
2008-10-06 19:52:54 +00:00
Justin Clarke Casey d18aff3310 * restore Header.Resent field setting for resent packets
* without this, the client appears to reset the sequence of packets its expecting
2008-10-06 16:57:58 +00:00
Justin Clarke Casey 33d957207c * Change interpretation of asset throttle values to bits per second rather than bytes per second
* Changing network bandwidth in the preferences will now have a much more noticeable effect - a user may want to increase this if data is being slow to download from opensim
2008-10-06 16:48:41 +00:00
Melanie Thielker d834996bbe Implement Parcel -> ForceOwnerToMe god mode packet 2008-10-06 08:19:18 +00:00
Charles Krinke e575ef7ad2 Revert r6697 patch as the build fails. 2008-10-06 00:58:43 +00:00
Charles Krinke 4f6cdc08d6 Mantis#1207. Thank you, TGlion for a patch that addresses:
Implementation of llModifyLand() and There is a bug on 
permission-check of land-terraforming: x an y-coordinates 
are interchanged on function-call ExternalChecksCanTerraformLand.
Correct: x is west, and y is north. 2) Missing check of 
"Other allow to terraform-flag" (Parcel.ParcelFlags.AllowTerraform)
2008-10-06 00:46:27 +00:00
Melanie Thielker 6ab5b523f8 Implements ObjectOwner god mode packet (Set Owner To Me admin option) 2008-10-06 00:09:49 +00:00
Teravus Ovares f8acdeb437 * Green dots on the mainmap for avatar.
* Initial implementation
* You'll only be able to seen green dots on regions on the map that have been updated.
2008-10-06 00:00:55 +00:00
Melanie Thielker a3136d2bb1 Revert the packet resend timing changes. They caused login issues in primmy
regions.
2008-10-05 16:43:58 +00:00
Melanie Thielker c84987426b Craters, take 2. Remove old discard logic and absolute discard timer.
Introduce a resend counter on the ack queue. The header "Resent" field is
now obsolete. Implement 3 resends on reliable packets, variable.
Increase default resend timeout to 3000ms and default silence threshold
to 350ms.
2008-10-05 14:44:26 +00:00
Teravus Ovares a243a4aaf5 * An update to the UDP Packet handler which might make the giant sized craters go away. 2008-10-05 13:06:03 +00:00
Melanie Thielker e5929f4a1c Remove a console debug output 2008-10-05 05:00:30 +00:00
Melanie Thielker 2cb89124c7 Small bug fix 2008-10-05 03:01:19 +00:00
Melanie Thielker 13e3ffada3 Plumb in the DirPlacesReply packet 2008-10-05 02:25:53 +00:00
Melanie Thielker f52d779550 Plumb packet DirPlacesQuery for search module 2008-10-04 22:29:37 +00:00
Melanie Thielker c28e8fcd67 Unclutter rezzing methods by removing the ad hoc permissions parameters.
Thise were client supplied untrusted values we never used anyway.
2008-10-04 15:54:21 +00:00
Melanie Thielker 74f89fb22d Add "Drop" functionality to pie menu 2008-10-04 01:09:22 +00:00
Justin Clarke Casey 4920e52f11 * oops, fix build break.
* refactoring
2008-10-03 19:42:35 +00:00
Justin Clarke Casey 743e336bf3 * Put in some infrastructure to allow tweaking of packet queue throttle values for the total throttle (the one that throttles all packet output)
* Not complete yet
2008-10-03 18:06:45 +00:00
Justin Clarke Casey 70124a3213 * refactor: make startup a template method 2008-10-03 15:11:29 +00:00
Dr Scofield 5c0a0bc2e0 This changeset changes the way chat from client is routed:
old way: each region module interested in chat from client had to
     	 - subscribe to scene.EventManager.OnNewClient
	 - then in its OnNewClient delegate it would subscribe to
           client.OnChatFromViewer to capture chat messages coming

     new way: ChatModule is the only region module that uses the "old
         way" approach but is now forwarding all client chat via
         scene.EventManager.OnChatFromClient
	 - each region module interested in chat from client now only
           subscribes to scene.EventManager.OnChatFromClient

this not only simplifies code, but also allows us to substitute
ChatModule with derived classes (ConciergeModule is going to be one
example).

Also, this changeset changes ChatFromViewer to ChatFromClient as it
doesn't necessarily have to be a viewer that is a chat source.

i've taken great care to only comment out those OnNewClient delegates
that were only used for getting at the client chat --- hope it's not
breaking anything.
2008-10-03 14:53:11 +00:00
Justin Clarke Casey 8c55f3eaa6 * minor: remove warnings (the code cleaners strike again) 2008-10-03 14:18:17 +00:00
Melanie Thielker 7f007d8ed0 Mantis #1360
Thank you, idb, for a patch to implement the packet and plumbing for
the material settings.
2008-10-03 12:00:13 +00:00
Teravus Ovares 8de395d379 * EventQueueGet is now working.
* Switched it on by default
* Updated OpenSim.ini.example to reflect this
* Caught a UDP Server issue that occurs when the network pipe is saturated
* Still experimental :D
2008-10-03 09:53:49 +00:00
Homer Horwitz 423d950a69 - Fixed a small off by one error in sending MapBlocks
- Removed MapBlockData.Flags; it isn't used anywhere (maybe MapBlockData.RegionFlags replaced it?)
2008-10-02 22:14:34 +00:00
Homer Horwitz b1c1de2fbe - Added SendScriptTeleportRequest to IClientView and classes implementing it.
- Implemented llMapDestination.
2008-10-01 21:30:48 +00:00
Justin Clarke Casey 7e35e4c816 * minor: oh, and comment out the now unused logger as well 2008-10-01 20:56:34 +00:00
Justin Clarke Casey 231b8c2a67 * minor: Comment out temporarily statistical counter I accidentally left in from the last commit 2008-10-01 20:55:09 +00:00
Justin Clarke Casey cbb9693ef4 * Try bumping packet resend timeout up to 2 seconds instead of 1
* This actually probably doesn't make a huge difference.  We still end up resending a massive number of packets in quite a few situations, but it's not easy to consistently 
reproduce this.
* Might really need some throttling of packet send to the client on the OpenSim end.
2008-10-01 20:54:28 +00:00
Justin Clarke Casey 4d32cd34e8 * refactor: rename interface to put standard I prefix in front 2008-10-01 20:30:30 +00:00
Justin Clarke Casey 95a3d6372d * Fix bug in LLPacketHandler where the tickcount when a packet was approximately sent was not being stored in the ack record
* This meant that acks were being sent out every 250ms when the ack timer fired, rather than when they had actually aged past m_ResendTimeout
2008-10-01 17:18:20 +00:00
Justin Clarke Casey 75b6011a24 * minor: remove warning 2008-09-29 19:11:48 +00:00
Charles Krinke 04be8726d3 Mantis#296. Thank you kindly, Idb for a patch that resolves:
Estate/ Manager Owner Uses the Region/Estate Menu Region TAB, 
and uses "Teleport Home All Users..." (Action Button), the 
action will complete but no one will be teleported and all 
users still function in the region ok.
2008-09-28 22:01:37 +00:00
Melanie Thielker 1d5b2bb8bc Add some methods to allow modules so set client view options 2008-09-28 19:45:42 +00:00
Melanie Thielker 95c3e0883c Mantis #2288
Correct a typo in namespace declaration
Also adds a new flag to the PacketManager to force retention of packets
marked reliable (default off)
2008-09-28 18:07:06 +00:00
Teravus Ovares 07b32c9320 * Replace a generic error handler. 2008-09-27 22:06:51 +00:00
Teravus Ovares 98632ee594 * Event queue is now polling..
* returns FAKEEVENT instead of the connection returning a 502.   It doesn't like our 502's for some reason..  so, in leau of this..    send it a fake event.
* Once again, this is still 'really early' code, so please don't blame us if you have no more threads left.
2008-09-27 22:05:36 +00:00
Teravus Ovares 16b6738cda * Patch from JHurliman
* Updates to libomv r2243, 
* Remove lots of unnecessary typecasts
* Improves SendWindData()
Thanks jhurliman. 
* Will update OpenSim-libs in 10 minutes..
2008-09-26 17:25:22 +00:00
Justin Clarke Casey 97323345ee * minor: remove warnings 2008-09-26 15:28:14 +00:00
Teravus Ovares 6b13730bc7 * Wind updates. Still random.. but in 4 directions instead of two!
* It seems kind of silly to be building a 256x256 array just to use two 16 float blocks..  but for now the layerdata routine requires it so we'll go along with that.
* We only fill a 32x16 area of the 256x256 float array with data.
* We use patches 0,0 and 0,1 for the first and second patch to determine the direction and magnitude of the wind.
2008-09-26 12:56:17 +00:00
Charles Krinke 339671afc6 Mantis#2017. Thank you kindly, Tyre, for a patch that solves:
Check the client dialog box (from top menu) WORLD / REGION ESTATE 
/ REGION tab. The client dialog box seems to have a hard limit of 
about 32 characters per line available for displaying the region 
version number. Our regions are sending a string which is greater 
than the limit, causing the client to wrap the text and look ugly.
2008-09-25 14:57:40 +00:00
Teravus Ovares 4004172106 * Adds some Wind
* A little wind wouldn't hurt anyone, right?    This is the 'slightly breezy' setting..    hopefully you won't notice 'much' of a difference.
* It turns out the terrain patch routine is similar enough to the wind version that it can be used to hack together a breeze generator with a few mods.
* Not much configuration..   yet.  You only get breeze updates in the general vicinity of your camera now to keep bandwidth usage down.. and we're not talking about 'much' movement at the moment.
* initial version...      could use improvement I'm sure.
2008-09-25 11:46:05 +00:00
Melanie Thielker f3c8963c86 Convergence is almost complete. This brings the diff between the API to < 10k
and makes it use a common set of types in both engine. Fixes the issues with
running both engines and HTTP requests / listens / timers etc..
Also fixes a couple of minor Scene issues and a CTB by nullref.
2008-09-25 05:13:44 +00:00
Dr Scofield 201805172f cleanups, fixing REST appearance services. 2008-09-24 11:39:08 +00:00
Jeff Ames 3f79e6b3e7 Update svn properties, formatting cleanup. 2008-09-23 23:14:00 +00:00
Melanie Thielker 70d264ee6c Update the permissions system to handle scripts and notecards the way
it was meant to. No functional changes, just better code
2008-09-23 03:36:16 +00:00
Melanie Thielker 48672c7fd6 Move script and notecard open perms checks from ClientView to the
perms module
2008-09-22 22:33:00 +00:00
Dr Scofield 7def786ef4 cleanups in inventory REST code. also, disables digest authentications
for inventory REST calls for the time being, as firefox, curl, and
also python's urllib2 cannot authenticate using digest auth.

fix permission checking for prim inventory to be the same as for
normal edit ops.
2008-09-22 11:20:09 +00:00
Justin Clarke Casey 1a71a3a567 * Fix http://opensimulator.org/mantis/view.php?id=2189
* Allow a grid mode region simulator to properly shutdown even if the grid service is offline
2008-09-21 16:58:14 +00:00
Justin Clarke Casey 23ea8f5221 * refactor: remove unnecessary packet null check in LLClientView
* if a packet was really null it would be caught by the general exception handler at the top of the client thread, which would also provide more information and attempt a clean 
shutdown
2008-09-20 19:05:00 +00:00
Justin Clarke Casey 5fb7b485b2 * Only allow logins on standalone when the sim has completed it's initial startup (script startup doesn't count here)
* There was a small window where region logins were allowed before modules were loaded - avatars logins that hit this window could have caused bad things to happen.
* A similar change will follow for grid mode sometime soon
2008-09-19 17:41:21 +00:00
Dr Scofield e3a3ce7628 code formatting cleanup. 2008-09-18 15:54:27 +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
Adam Frisby e946b40fdd * Minor fixes and cleanups around code being used for Rex Module work. 2008-09-14 01:49:47 +00:00
Jeff Ames b4141f9e56 Formatting cleanup. 2008-09-13 22:07:07 +00:00
Melanie Thielker 8830b8b72c Mantis #2018
Read animation data from avataranimations.xml to allow default animations
to be started and stopped by name from scripts.
2008-09-13 19:51:56 +00:00
Justin Clarke Casey 62d1eba3b2 * Patch http://opensimulator.org/mantis/view.php?id=2167
* Force ClickAction persistence even if other object properties are not edited 
* Thanks nlin!
2008-09-12 20:42:04 +00:00
Melanie Thielker ecc24c3c63 Revert 6242 because of a possible licensing issue 2008-09-12 00:33:24 +00:00
Melanie Thielker 7a63fe7c07 Add the UUIDs of the standard animations. Thanks, Ewe Loon! 2008-09-12 00:23:41 +00:00
Jeff Ames b9b996be38 Update svn properties, minor formatting cleanup.
Fix unreachable code due to typo in llDetectedGroup.
2008-09-10 05:17:28 +00:00
Mike Mazur e0d092ec53 Thanks, nlin, for a patch implementing persistence for "When Left Clicked"
object property. Fix issue 2149.
2008-09-10 00:19:36 +00:00
Adam Frisby c95bdb83c0 * Adds OnGenericMessage and SendGenericMessage functionality to IClientAPI.
* Please don't break the build. *fingers crossed*
2008-09-09 05:25:29 +00:00
Jeff Ames fae34bb10c Update svn properties, formatting cleanup. 2008-09-09 01:26:48 +00:00
Melanie Thielker 490ac0be00 Implement proper persistence of the following prim properties:
Floating text, Rotation, Texture animation, Particle System
This will make "Eye Candy" scripts work without modification in
XEngine. The use of the CHANGED_REGION_RESTART hack is no longer
needed. Implemented in MySQL only, hovertext also in SQLite.
2008-09-08 02:40:20 +00:00
Justin Clarke Casey 815278531a * Improve login failure handling.
* Now it should properly inform the user and stop a login if a region server could not be contacted in order to expect a user (the last commit didn't actually quite work correctly)
2008-09-07 05:07:57 +00:00
Justin Clarke Casey 78f831ef52 * minor: Clean up of logging messages to make following the client login process easier
* documentation
2008-09-07 03:22:33 +00:00
Justin Clarke Casey ea8c18f63d * minor: just minor doc and tidy up 2008-09-07 00:47:08 +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
Melanie Thielker a7e2d14454 Rolling back #6139 because there is no consensus on it's application.
Reverted pending further discussion.
2008-09-06 04:35:33 +00:00
Melanie Thielker b6b1e9e214 Mantis #624
Thank you, openlifegrid, for a patch to move new user connections to
thread pool threads.
Reworked by me to fit current trunk.
I believe that that patch may be beneficial in reducing the cases
in which regions become unresponsive and will no longer accept
new logins.
2008-09-06 04:21:36 +00:00
Charles Krinke 24a95507d4 Mantis#2104. Thank you kindly, Godfrey for a patch that:
If the parcel pointed to by the landmark has nothing in the 
Description field (of the General tab in About Land...), a 
NullReferenceException is thrown and the client is logged out.
I added a check to the calls to Helpers.StringToField() in OpenSim.Region.ClientStack.LindenUDP.SendParcelInfo to avoid 
this issue.
2008-09-05 23:04:20 +00:00
Melanie Thielker dba779862d Mantis #2107
Thank you, lulurun, for a patch to fix a possible crash when a received
packet contains a quaternion with all members zeroed.
2008-09-03 11:25:11 +00:00
Charles Krinke e044d83679 Mantis#2106. Thank you kindly, HomerHorwitz for a patch that:
The attached patch fixes connectivety checking of root- and
child-agents. If an agent's client isn't sending any packets 
for some time (not even to StartPingCheck packets), we assume 
that we lost connection and try to log them out.
2008-09-03 03:35:54 +00:00
Justin Clarke Casey c713ec8223 * Committed patch in mantis 623
* Unpatched code certainly looks bizarre - attempts to add a new client if we encountered a failure in processing a packet.  No apparant ill effects on a sniff test.
* Thanks openlifegrid
2008-08-30 21:33:55 +00:00
Justin Clarke Casey 8f31c47f2f * Apply patch in mantis 2083
* TimeStamp field of the AgentMovementCompletePacket in LLClientView.MoveAgentIntoRegion contained a fixed number. The attached patch changes this to a current 
timestamp.
* Thanks HomerHorwitz
2008-08-30 17:51:12 +00:00
Jeff Ames 3bf8858727 Update svn properties, formatting cleanup. 2008-08-28 14:41:54 +00:00
Teravus Ovares 43ab833be0 Documentation, headers and all the normal stuff 2008-08-25 23:31:50 +00:00
Justin Clarke Casey 4a475ca2be * minor: refactor thread report into a method that returns a string rather than displays information directly 2008-08-25 23:21:07 +00:00
Justin Clarke Casey ba2130046f * minor: Comment out the remaining unhandled packet messages in LLClientView, except for unidentified packets
* These make it more difficult to read the logs, and I don't think they help all that much
2008-08-25 22:01:51 +00:00
Justin Clarke Casey 3d2069f3d9 * zap compilation warnings 2008-08-25 21:35:22 +00:00
Justin Clarke Casey 7402c2d288 * Deal with a WebException thrown if a grid server cannot be contacted for region information 2008-08-25 21:26:58 +00:00
Jeff Ames 41f616627f Update svn properties. 2008-08-25 14:40:10 +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
Melanie Thielker 63b6ab467a Implements 80% of object buy (prim vendor). You can't buy the object yet,
and the for sale setting doesn't survive a sim restart, but this is most
of the plumbing.
2008-08-24 00:51:21 +00:00
Justin Clarke Casey f0ffbf5b38 * Allow an exception generated in ProcessOutPacket to travel up the stack
* It is dealt with correctly further up, at which point the user is also notified and the failure recorded as a statistic
2008-08-22 21:41:05 +00:00
Melanie Thielker f206ffd5a8 Mantis #2003 - thank you, SachaMagne, for a patch that implements
the first part of gesture persistence.
----------------------------------------------------------
Attachments no longer vanish on walking crossing. Teleport is still
problematic, but will now be blocked with message "Inconsistent
attachment state" rather than losing the attachment. Detach to be
able to TP in that case.
2008-08-20 01:48:51 +00:00
Melanie Thielker 5cb0d4fcac Packet type exclusion (Mantis #2004)
Exclude SimStats packets from ack appending.
2008-08-19 19:44:49 +00:00
Jeff Ames bea7d4d81a Update svn properties, formatting cleanup. 2008-08-19 02:59:27 +00:00
Justin Clarke Casey 9650632cd1 * It appears that sometimes some IClientAPI reference is not being released, resulting in continual execution of the CheckConnectivity timer method
* For now, just turn off this timer when we close the connection
* Also some minor help refactoring creeps in to this revision.
2008-08-18 21:14:38 +00:00
Melanie Thielker 6614eee4d4 Change LowpriorityTask to be ThrottleType.Task | ThrottleType.LowPriority to make the flag nature of this value more clear. 2008-08-18 18:59:06 +00:00
Jeff Ames 6ef9d4da90 Formatting cleanup. 2008-08-18 00:39:10 +00:00
Justin Clarke Casey c602d76b79 * Insert a new 'set log level [level] command on the console'
* The primary immediate use is to provide a means of temporarily reducing log output on the console when executing console commands
* Changing the log level on the console is not permanent and does not affect the log information being put into OpenSim.log
* This could have been done by putting in a threshold level on the Console appeneder in OpenSim.exe.config and implementing config watching in the code.
* But I think that it's a little more user friendly to make this doable via the console.
2008-08-16 20:24:08 +00:00
Charles Krinke 7a90385f1c Mantis#1970. Thank you kindly, HomerHorwitz for a patch that:
This patch improves fetching of inventory from several minutes 
to a few seconds.
2008-08-16 19:37:30 +00:00
Charles Krinke d9cc908471 Mantis#1965. Thank you kindly, HomerHorwitz for a patch that:
Places touched:
- Added two events for in-packets to LLCLientView: RegionHandleRequest and
  ParcelInfoRequest
- Added sending of two out-packets to LLCLientView: RegionIDAndHandleReply and
  ParcelInfoReply.
- Scene handles the RegionHandleRequest, LandManagementModule the
  ParcelInfoRequest
- Added inter-region request for LandData by RegionHandle and local position.
  This was implemented as XML-RPC request. The returned LandData isn't
  complete, it only contains the data necessary for answering the
  ParcelInfoRequest
- Added new CAPS (0009) for RemoteParcelRequest and some methods for LandData
  handling to LandManagementModule
- Added methods for fake parcelID creation and parsing to Util
- Fixed missing implementation of interface methods.
- Added new file:
    OpenSim/Framework/Communications/Capabilities/LLSDRemoteParcelResponse.cs
  NOTE: This is part of the patch, too.
Due to the many places touched, I would consider this patch as experimental.
2008-08-16 19:20:14 +00:00
Jeff Ames 6fa26f5b41 Update svn properties, minor formatting cleanup. 2008-08-16 17:26:25 +00:00
Melanie Thielker 72b8c1af1c Plumb the user flags all the way through to the profile. userFlags in
the database is now intepreted as follows: low byte = user flags.
Next byte, low nibble: Deternines the text (Resident, Lifetime, etc)
shown. No customn text support yet.
2008-08-15 19:19:24 +00:00
Melanie Thielker dfc553d0a4 Fix up master avatar handling for estate owners. Introduces a new
hierarchical rights structure. MasterAvatar: Owner of the region server
(may be null), net gods (users with GodLevel 200), Estate owner
(from database). Look at Opensim.ini.example to enable net gods.
Estate owner will default to master avatar.
2008-08-15 13:13:39 +00:00
Jeff Ames dde21314e7 Update svn properties, formatting cleanup, fix a couple compiler warnings. 2008-08-15 10:24:04 +00:00
Melanie Thielker c2f1771c63 Make the estate owner work. Changes permissions checks to allow the
estate owner user the ability to add and remove estate managers,
and have EM rights outside of that.
2008-08-14 18:08:22 +00:00
Melanie Thielker e3157e61aa Mantis #1946
Thank you, HomerHorwitz, for a patch that corrects and improves TP
to landmark and home position handling.
2008-08-14 00:04:37 +00:00
Justin Clarke Casey fb4eb05ae1 * minor: make it clear on the console when a client is being logged out because that client has not responded to pings 2008-08-13 21:45:17 +00:00
Melanie Thielker fa9afd4c91 Fix data format for last commit 2008-08-12 23:15:51 +00:00
Melanie Thielker b0fbef81d0 Minor patch: fix an instance where the estate name, as displayed on the
Covenant page of the estate dialog, could be shown as the master avatar's
name, or even as Test User
2008-08-12 22:55:47 +00:00
Justin Clarke Casey 4e555b87f3 * Stop warnings about non existent scene presences/entities being removed on client log off
* This is being done by preventing close from being called twice on child agent closure (nres which would have been thrown are being swallowed).  
* However, it should be possible to do much better cleanup on this code in the future
2008-08-12 19:00:13 +00:00
Jeff Ames f894f5d87b Minor formatting cleanup. 2008-08-12 00:08:41 +00:00
Melanie Thielker 9b7e66ceda Attempt to address Mantis #1905, #1909
Prevent re-sequencing of resent packets. Thanks, ckrinke, for
catching that, it is what was happening.
2008-08-10 16:37:45 +00:00
Justin Clarke Casey d0480a87c3 * Remove warnings 2008-08-09 21:24:27 +00:00
lbsa71 d4b8e06d55 * Added a little more log info in LLUDPServer 2008-08-09 18:37:20 +00:00
lbsa71 6849f45660 * Shielded against various forms of Malformed data crashes - if there is an error in packet creation, we just log and ignore it
* If there's a Socket.AlreadyInProgress, just silently ignore this one
* Tried to refactor the Reset and BeginRecieve logic into something a little more readable, little less duplicated
2008-08-09 05:26:33 +00:00
Melanie Thielker eaff580abe Patch #9160
Refactor proxy encode/decode methods out of the PacketPool into
their own class.
2008-08-08 11:04:24 +00:00
Mike Mazur 97d5b5a1eb De-coupling the IClientAPI interface and ClientManager class from the
libsl/libomv Packet, as other client stacks could use other data types to pass
packets around. Starting with InPacket() here, more to come.
2008-08-08 09:19:23 +00:00
Jeff Ames 657af5e611 Update svn properties, minor formatting cleanup. 2008-08-08 06:39:35 +00:00
Melanie Thielker 39e68833b2 Patch #9159
Complete the support for dupe tracking. Eliminate one of the "Eternal
caches".
2008-08-07 15:32:39 +00:00
Melanie Thielker 51f90af4b7 Patch #9158
Refactor packet sending into LLPacketHandler. Change packet sequencing
and ack lists to ensure packet sequences conform to wire order.
2008-08-07 14:48:45 +00:00
Jeff Ames 0718aa0b7f Minor formatting cleanup. 2008-08-07 12:55:46 +00:00
Justin Clarke Casey 6b1a5c33af * Fix probable cause of one of the bugs seen in the osgrid office hours today
* If a text string is too long we actually need to truncate to 254 chars rather than 255, since the Helpers.StringToField conversion will stick a \0 on the end
2008-08-05 20:34:34 +00:00
Melanie Thielker 12c5bfa3e0 Estate series, patch 9 (#9157)
Adds the new access semantics and the new flag (allow only age verified)
Plumbs in the abuse email address from sim to viewer. The other way around,
libomv appears to be lacking support for the data field in the packet.
Includes a migration, run prebuild!
2008-08-01 21:08:00 +00:00
Justin Clarke Casey 3fc942558e * start tracking viewer session threads 2008-08-01 20:16:28 +00:00
Justin Clarke Casey 5350cec0b3 * minor: log message twiddling 2008-08-01 20:05:26 +00:00
Melanie Thielker c441a03ea3 Thank you, HomerHorwitz, for a patch that implements llSetCameraParams/llClearCameraParams.
Fixes Mantis #1867
2008-07-31 12:31:31 +00:00
Melanie Thielker c80493ed4d Prevent acks from being appended to viewer effect packets, since
that has been known to cause an exception in libomv ^^
2008-07-29 22:40:23 +00:00
Melanie Thielker 839e9c94e8 Prevents Mantis #1829
Add array size check to packet from viewer to prevent OOB exception
2008-07-27 19:12:40 +00:00
Dr Scofield 24e15088ea renaming the increasingly ill-named ChatFromViewerArgs to OSChatMessage 2008-07-25 10:05:50 +00:00
Melanie Thielker 06e0e513cf Add GetGroupPowers() and a dictionary to hold them to ClientView and
IClientAPI. No user functionality
2008-07-25 03:45:17 +00:00
Justin Clarke Casey 11385c53e6 * minor: eliminate warnings from LindenUDP 2008-07-24 16:03:17 +00:00
Melanie Thielker 740a9a7374 Thank you, Neopallium, for a patch that addresses ack issues in the
client stack. Committed with changes, see Mantis #1810 for details.
2008-07-24 15:52:36 +00:00
Jeff Ames a4ad6a67b7 Update svn properties. Minor formatting cleanup. 2008-07-24 15:20:47 +00:00
Melanie Thielker cc5d49d9c1 Addresses Mantis #1810
Collapses two locks into one to avoid a situation were a List is
cloned under two different locks, resulting in a bad index in
.NET code.
2008-07-24 01:38:58 +00:00
Sean Dague cf317f5c33 refactor TaskInventoryItem Mask -> Permissions to be consistant with how things
are stored in the db.
2008-07-23 22:14:29 +00:00
Sean Dague 090159defc refactored LandData to use properties, and cleaned up the naming on
the properties a bit to be more consistant with other objects (having things
like .Name .Description, etc).
2008-07-23 15:50:32 +00:00
Melanie Thielker 76d8cceb92 Fix a race causing a buffer overflow under moderate load 2008-07-23 14:26:08 +00:00
Jeff Ames 80d8e2889e Update svn properties. Formatting cleanup. Remove a compiler warning. 2008-07-23 13:24:25 +00:00
MW 9b51bb545e Changed it so the avatar's rotation is now sent as part of a full avatar update.
This should fix the wrong rotation on existing sitting avatar when logging in bug.
2008-07-23 11:07:59 +00:00
Melanie Thielker e1c6563174 Guard against wrong packet types being passed into AddNewClient.
Actually, the exception handler seems to be a valid execution
path here, this needs some love.
2008-07-23 01:16:01 +00:00
Melanie Thielker e09ff343fb Make QueuePacket() lock free. Eliminates an unneeded lock() 2008-07-22 22:49:13 +00:00
Melanie Thielker 7fb103d374 Change one packet optimization to cover a case where the resend
queue may block indefinitely when a single packet is not acked
by the viewer and no others cwfromfor that region are pending.
2008-07-22 22:21:20 +00:00
Melanie Thielker f112cebde2 Refactor the packet scheduling out of ClientView. Add intelligent
resending, timeouts, packet discarding. Add notification event for
packet discarding. Add priority scheduling for packet queues.
Add outgoing duplicate detection facility. Correct packet sequencing.
Make provisions for automatic server side throttle adjustments (comes
in next installment)
2008-07-22 17:58:42 +00:00
Jeff Ames 186f83692c Update svn properties. Squash a couple of warnings. 2008-07-22 15:01:04 +00:00
MW 6784cebf57 added support so that the packet tracker can resend packets itself as well as triggering a event. Next step to change the terrain packet resending to use these feature. 2008-07-21 16:21:59 +00:00
MW fb096dfbd5 added experimental packet tracker (LLPacketTracker.cs), which can be told to track a packet and if it hasn't been acked within a set time, trigger a IClientAPI event, that the application/scene can handle. Currently only terrain packet tracking is finished, Tracking for initial Prim packets (first full update for a prim) is being worked on. Future improvements would be to make it a more generic packet tracker with callback delegates instead of events.
Add a test event handler (which would fire after a minute if a terrain packet hadn't been acked) to scene to handle the OnUnackedTerrain event, which currently just resends the terrain patch.
The idea of this packet tracking is for the region level application to be able to know if the client stack gave up on sending a packet.
2008-07-21 15:13:34 +00:00
lbsa71 9dbb6f28bc * eliminated some warnings and added some const and readonlies
* refactored some member names for readability and ccc (code convention conformance)
* took away two refs from Rest.Inventory since
   * System.IO is part of System
   * System.Xml.Serialization is part of System.Xml
2008-07-21 10:02:55 +00:00
Melanie Thielker 263633e274 Patch #9151
Makes the estate dialog fully functional. Implements all client facing functionality. Moves estate data from estate_settings.xml, which is used to provide defaults, to the region data store. Creates one estate for each region, and places the region in it. Converts all region bans to estate bans.
2008-07-18 02:40:47 +00:00
Melanie Thielker 07bd749ac5 Patch #9150
Patch 7 of the region patches. Finish off the region parts of the estate dialog. Full user functionality. Terrain textures, heights, water, avatar counts, prim bonus, debug settings and region toggles can now be set from the dialog on a per-region basis. Estate stuff defaults to sane values where there are no defaults, to estate_settings.xml otherwise. Sun still b0rked :(
2008-07-14 01:39:36 +00:00
Charles Krinke d0fb5e8c90 Mantis#1638. Thank you kindly, Salahzar for a patch that:
Addresses an unused field in the asset server but never get filled up. 
It also makes working the recent items tab in inventory :))))
2008-07-13 18:57:13 +00:00
Melanie Thielker 9e20318667 Patch #9145 (Mantis #1723)
Allows direct viewing of library scripts from inventory again
2008-07-12 13:42:32 +00:00
Melanie Thielker f629fdb88d Patches #9143 and #9144 (Mantis #1723)
Changes the permissions module to make scripts permissive only when intended
Adds security checks to asset transfers to prevent hacked clients fron
requesting script sources.
Adds security checks to llClientView to verify all aspects of ownership
and permissions for inventory based script retrieval.
2008-07-12 06:24:43 +00:00
Justin Clarke Casey da68f18a6b * Guard against a null point passed to RemoveClientCircuit (odd that this happens at all)
* Patch from Kurt Taylor (IBM) in http://opensimulator.org/mantis/view.php?id=1720
* Thanks Kurt!
2008-07-11 17:58:26 +00:00
Charles Krinke 1472cee72f Mantis#1005. Thank you kindly, Mircea for a two patches that:
Addresses both locale issues and setting the waterHeight correctly.
2008-07-11 15:40:56 +00:00
MW 7db2e19500 corrected the params types on IClientAPI.SendParcelMediaCommand. the command parameter should be set to the the ParcelMediaCommandEnum value. While flags seems to need to be set to (uint)(1<<[value of the command enum]) 2008-07-09 11:01:26 +00:00
lbsa71 b7fc172254 * Added experimental SendParcelMediaCommand and SendParcelMediaUpdate to IClientAPI. These methods have not been tested, but feel free to start wiring them to llParcelMediaCommandList. 2008-07-08 14:17:59 +00:00
lbsa71 6c13d68489 * Changed casing of some archaic methods to conform with code standards 2008-07-08 11:30:08 +00:00
lbsa71 b1b529f94e * Moved script packet handlers from 'unimplemented' to 'Script Packets' 2008-07-08 11:02:53 +00:00
Dr Scofield 2dadbc2f70 mini-warnings-safari, plus cleanup of IUserServices method naming. 2008-07-04 10:19:58 +00:00
Justin Clarke Casey 8251508412 * On client login, send only one terrain patch at a time (with pauses) instead of 4 at a time
* Certain terrains which are fine went patches are sent singly cause a libsecondlife failure when patches are sent in batches
* See http://opensimulator.org/mantis/view.php?id=1662 for more details
2008-07-03 23:04:12 +00:00
Charles Krinke 9a0ef22ed9 Mantis#1616. Applied Melanie's patch. This may or may
not break trunk.
2008-06-28 16:08:12 +00:00
Teravus Ovares e5649e0dd5 * Various documentation to some black magic parts of LLClientView
* Added IClientAPI.SendTexture stub.
2008-06-28 00:33:17 +00:00
Dr Scofield 748f72326d last round of warning squashing. calling it a day now. 2008-06-27 23:03:39 +00:00
Charles Krinke a58a47a759 Mantis#1597. Thank you, Melanie for a patch that:
Adds handlers for the reclaim land functionality, 
plus all needed permissions checks.
2008-06-26 13:45:36 +00:00
MW cf1cf73839 added the flag param to IClientAPI.SendMapBlock 2008-06-25 20:14:47 +00:00
MW 35e1a2fdfc first part of Requestmapblocks fixes: Adds uint flags param to the OnRequestMapBlocks event (and handler), as when a client sends a map block request it also sends what layer it wants it for 0,1,2. It will always send two requests, one of them being for layer 2 (the overlay layer) and the other one either 0 or 1 depending on the tab that is selected in the client worldmap window. We should also be sending what layer the reply is for in IClientAPI.SendMapBlock (current always set to 0). That will come in next part (most likely at the weekend). 2008-06-25 20:03:16 +00:00