Commit Graph

432 Commits

Author SHA1 Message Date
Latif Khalifa
5922fbc84c * Update tracked avatar texture from AvatarAppearancePacket
* Only wait for uploads to complete when we have something to wait for
* When sim requests rebake, only sent AgentSetAppearance once

git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2851 52acb1d6-8a22-11de-b505-999d5b087335
2009-06-06 17:25:35 +00:00
Jim Radford
436e9621a2 LIBOMV-578 Typo missing closing )
git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2847 52acb1d6-8a22-11de-b505-999d5b087335
2009-06-04 20:03:45 +00:00
Jim Radford
ab1a7ed5ef LIBOMV-578 Sets folder owner to Library owner during ParseInventorySkeleton at Login time for the library, Agents Inventory Folders set to the Agents ID.
git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2846 52acb1d6-8a22-11de-b505-999d5b087335
2009-06-04 20:02:44 +00:00
Jim Radford
97d4d38aa5 LIBOMV-578 Sets folder owner to Library owner during ParseInventorySkeleton at Login time. Thank you Thoys for the patch
git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2845 52acb1d6-8a22-11de-b505-999d5b087335
2009-06-04 19:17:05 +00:00
John Hurliman
e8c9edae87 * Removing asset parameter from CB region_info structure
* Adding CB delete_asset message (LLIDL for now)

git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2844 52acb1d6-8a22-11de-b505-999d5b087335
2009-06-03 20:56:39 +00:00
Jim Radford
066b5ae91b LIBOMV-501 Cleaning up some compile time warnings
git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2843 52acb1d6-8a22-11de-b505-999d5b087335
2009-06-03 20:42:44 +00:00
Jim Radford
4dfc376536 LIBOMV-572 Increases ZeroCode buffer to 8192 bytes
git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2842 52acb1d6-8a22-11de-b505-999d5b087335
2009-06-03 20:07:43 +00:00
Latif Khalifa
62c8c84951 LIBOMV-575 Add Sphere effect to agent manager that creates a swirl of particles around a target
git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2841 52acb1d6-8a22-11de-b505-999d5b087335
2009-06-03 16:19:51 +00:00
John Hurliman
0142396d03 Changing variant blocks to use abstract class definitions instead of interfaces. Hooray for sharing common members between definitions
git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2840 52acb1d6-8a22-11de-b505-999d5b087335
2009-06-01 23:32:56 +00:00
John Hurliman
24df6dda11 * Added OpenMetaverse.Messages.CableBeachMessages.GetAssetMetadataMessage
* Removed a noisy debugging line from the EventQueue server

git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2839 52acb1d6-8a22-11de-b505-999d5b087335
2009-06-01 23:25:42 +00:00
Jim Radford
b615d52b67 LIBOMV-573 Handles exception thrown due to mono platform not supporting SIO_UDP_CONNRESET flag
git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2835 52acb1d6-8a22-11de-b505-999d5b087335
2009-06-01 06:57:02 +00:00
Jim Radford
3fb43f6bac LIBOMV-566 Adds SurfaceInfo block to Grab/DeGrab/GrabUpdate methods in AgentManager + Overloads for API Compatibility. Thanks to Doug Miles for the bug report
git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2833 52acb1d6-8a22-11de-b505-999d5b087335
2009-05-30 23:14:31 +00:00
Jim Radford
0ab5af5860 LIBOMV-562 Remove verbose debug information from last commit
git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2831 52acb1d6-8a22-11de-b505-999d5b087335
2009-05-29 07:50:37 +00:00
Jim Radford
12dd05d436 LIBOMV-562 Fixes cast exception being thrown when inventory-skeleton is parsed and item name is an integer
git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2830 52acb1d6-8a22-11de-b505-999d5b087335
2009-05-29 07:42:00 +00:00
John Hurliman
d48c7f4431 Attempted fix UDPBase (in server mode) becoming unresponsive when a client forcefully disconnects. The next packet the server sent would receive an ICMP destination unreachable response which causes the next call to BeginReceiveFrom() to throw an exception (see http://support.microsoft.com/kb/263823). This fix sets the SIO_UDP_CONNRESET flag to false as well as running a loop to try and recover the socket (in case the fix doesn't work on Mono)
git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2828 52acb1d6-8a22-11de-b505-999d5b087335
2009-05-28 21:05:26 +00:00
Robin Cornelius
a4dd9930dc Fix ChatterBoxSessionAgentListUpdates, the transition member was taken from the wrong part of the OSD Map
git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2827 52acb1d6-8a22-11de-b505-999d5b087335
2009-05-28 21:02:20 +00:00
Jim Radford
7fc4df27cb LIBOMV-553 Fix for exception being thrown in TexturePipeline due to event argument being instantiated each time during a foreach loop, Thanks to Dahlia for the bug report!
* Made lockerObject an instance variable

git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2826 52acb1d6-8a22-11de-b505-999d5b087335
2009-05-28 00:58:52 +00:00
John Hurliman
7a8938c5fd * Fixed incorrect Length calculations for variable fields and variable blocks
* Don't generate ToBytesMultiple() routines that create corrupted packets. This means no automatic packet splitting for AgentSetAppearance, SimStats, AvatarGroupsReply, and CoarseLocationUpdate packets

git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2823 52acb1d6-8a22-11de-b505-999d5b087335
2009-05-27 22:24:11 +00:00
John Hurliman
250dd512b2 Porting a fix for old tar files in OAR loading from OpenSim
git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2822 52acb1d6-8a22-11de-b505-999d5b087335
2009-05-27 21:40:13 +00:00
John Hurliman
084d2de86a * Added a required lock in the UDP ACK management (thanks lkalif)
* Added Cable Beach OpenSim attributes for wearable items

git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2820 52acb1d6-8a22-11de-b505-999d5b087335
2009-05-27 21:15:14 +00:00
John Hurliman
1955f08a8d Removing unused manual XML-RPC serialization routines from LoginResponseData
git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2819 52acb1d6-8a22-11de-b505-999d5b087335
2009-05-27 19:57:52 +00:00
John Hurliman
447d4db366 Allow appended ACKs to be attached to resent and/or unreliable packets
git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2817 52acb1d6-8a22-11de-b505-999d5b087335
2009-05-27 17:24:28 +00:00
John Hurliman
1ea4221f11 * Moved ACK handling to PacketReceived instead of after the incoming packet queue. This reduces average round trips (on the loopback connection) from ~200ms to ~15ms
* Added a more efficient collection for tracking already received packets

git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2816 52acb1d6-8a22-11de-b505-999d5b087335
2009-05-27 16:54:05 +00:00
Latif Khalifa
09377c682e [Appearance]
* Added support for the new hair bake
* Fixed ForceRebakeAvatarTextures()
* Some additional debug info

git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2815 52acb1d6-8a22-11de-b505-999d5b087335
2009-05-27 09:46:18 +00:00
Jim Radford
90c34d0901 Added several additional decoders to PacketToString class, Some minor cleanups, made default decoder output a string if it can
git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2814 52acb1d6-8a22-11de-b505-999d5b087335
2009-05-27 07:26:12 +00:00
John Hurliman
baaf1fb1f4 * Only append ACKs to outgoing packets if one or more ACKs are successfully dequeued
* Commented out noisy CAPS debugging messages
* Added a test (under packet tests for lack of a better place) to measure Environment.TickCount resolution and fail if the resolution is not consistently under a 10ms variance

git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2813 52acb1d6-8a22-11de-b505-999d5b087335
2009-05-27 00:29:43 +00:00
Jim Radford
b49d0736cc LIBOMV-557 Adds sanity check to CoarseLocationHandler to fix IndexOutOfRangeException, Underlying problem is the packet being sent from Simian
git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2811 52acb1d6-8a22-11de-b505-999d5b087335
2009-05-26 16:24:00 +00:00
Jim Radford
7ba41deb9a Added several additional decoders to PacketToString class
git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2810 52acb1d6-8a22-11de-b505-999d5b087335
2009-05-26 08:50:58 +00:00
Jim Radford
131bf95f45 LIBOMV-512 Adds SpecialDecoder for handling EstateOwner message paramaters
git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2809 52acb1d6-8a22-11de-b505-999d5b087335
2009-05-26 04:13:11 +00:00
John Hurliman
2f0aea84b0 * Sanity check for invalid response data during login in libomv and GridClient
* Couple of tiny fixes here and there

git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2806 52acb1d6-8a22-11de-b505-999d5b087335
2009-05-25 19:33:20 +00:00
Jim Radford
de8c3131a1 LIBOMV-492 WinGridProxy - Automatically colorize packet details in view
* Log Viewer built into WinGridProxy
* New Decoder system supports the ability to do custom decoding on packet fields, PacketToString moved from Helpers to its own class.
* GridProxy library now uses log4net library to do logging, WinGridProxy logging configuration added to make use of this.
LIBOMV-512 WinGridProxy decodes KeyValue pairs

* Added Invert & Mirror flags to sculptType enum
* Converted SoundManager to use the SoundFlags enum in the AttachedSound callback
* TestClient "who" command now shows agents logal ID

git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2805 52acb1d6-8a22-11de-b505-999d5b087335
2009-05-25 19:00:28 +00:00
31cc322c68 Resolves LIBOMV-555: Too thin lock in ObjectManager.GetAvatar/GetPrimitive
git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2803 52acb1d6-8a22-11de-b505-999d5b087335
2009-05-24 02:42:07 +00:00
John Hurliman
3015a7a271 Minor cleanup
git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2801 52acb1d6-8a22-11de-b505-999d5b087335
2009-05-22 21:47:28 +00:00
John Hurliman
f1e8fd4fe8 Major rewrite of the packet sending code:
* Automatic packet splitting. You can send packets with any number of blocks and the networking layer will split them up automatically
* Less memory is allocated for outgoing packet buffers
* Memory is only allocated for zerocoding (outgoing and incoming) when it is needed
* A lockless queue is used to hold outgoing ACKs
* ACKs are stuffed into packets until they hit the MTU
* All outgoing packets are serialized exactly once, instead of serializing every resend
* Improved the clarity of the networking layer (I will upload a flow chart of packet sending soon)

git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2800 52acb1d6-8a22-11de-b505-999d5b087335
2009-05-22 19:54:00 +00:00
Latif Khalifa
dcb7da5a24 * [LIBOMV-549] Added Packet.ToBytesMultiple() class that will automatically split a packet with variable blocks up into multiple packets that fit in the MTU (1200). Unit test is included. This is not actually being used by the library anywhere (yet), but hopefully it will be soon
git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2799 52acb1d6-8a22-11de-b505-999d5b087335
2009-05-22 00:09:22 +00:00
John Hurliman
c82459c323 * Removed the unnecessary overflow check when setting packet sequence number. Interlocked.Increment() handles wrapping for us
git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2798 52acb1d6-8a22-11de-b505-999d5b087335
2009-05-21 22:25:25 +00:00
John Hurliman
0c0e99af4a Removed all thread synchronization from UDPBase. Instead, try/catch blocks are used to handle shutdown
git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2797 52acb1d6-8a22-11de-b505-999d5b087335
2009-05-21 19:03:34 +00:00
John Hurliman
94f881085a Fixing pending ACK locking problems mentioned in [LIBOMV-551] and [LIBOMV-548]
git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2796 52acb1d6-8a22-11de-b505-999d5b087335
2009-05-21 17:44:39 +00:00
Latif Khalifa
f18d1a6472 LIBOMV-550 Allow LLSD serialization of prims that don't have name/description properties
git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2795 52acb1d6-8a22-11de-b505-999d5b087335
2009-05-21 17:27:19 +00:00
John Hurliman
44547ead18 Recursive locking fix, should address [TC-67] and part of [LIBOMV-548]
git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2793 52acb1d6-8a22-11de-b505-999d5b087335
2009-05-21 16:37:13 +00:00
John Hurliman
5f20603374 * Small performance tweaks to packet classes
* Fixed a recursive locking problem when running UDPBase in server mode

git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2788 52acb1d6-8a22-11de-b505-999d5b087335
2009-05-20 19:21:30 +00:00
John Hurliman
032ce35729 Replacing networking stats tracking code with thread-safe calls
git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2784 52acb1d6-8a22-11de-b505-999d5b087335
2009-05-19 17:27:43 +00:00
Latif Khalifa
f2399326ce LIBOMV-546 Removing comments that are no longer true
git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2783 52acb1d6-8a22-11de-b505-999d5b087335
2009-05-19 09:07:37 +00:00
Latif Khalifa
40c7faf1c2 LIBOMV-546 Fix XML-RPC login on login redirects
git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2782 52acb1d6-8a22-11de-b505-999d5b087335
2009-05-19 09:05:34 +00:00
John Hurliman
14cb071e68 Switched back to async UDP sending, but still not wasting cycles firing PacketSent() callback. We should remove this callback entirely
git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2779 52acb1d6-8a22-11de-b505-999d5b087335
2009-05-18 22:27:08 +00:00
Jim Radford
a892026414 LIBOMV-544 Adds set accessor to Type property for sculpted prims
git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2777 52acb1d6-8a22-11de-b505-999d5b087335
2009-05-17 07:41:13 +00:00
Jim Radford
9f77df039b LIBOMV-544 Corrects implementation of previous commit, Invert and Mirror are now properties of a Sculpted Prim Patch courtesy of Douglas Miles
git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2776 52acb1d6-8a22-11de-b505-999d5b087335
2009-05-17 07:33:49 +00:00
Jim Radford
0cf52c5214 LIBOMV-544 Adds Invert and Mirror properties for sculpted prims, Patch courtesy of Douglas Miles
git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2775 52acb1d6-8a22-11de-b505-999d5b087335
2009-05-17 02:44:15 +00:00
John Hurliman
2520b6d0ea * Adding a LocklessQueue collection to OpenMetaverseTypes
* Fixing minor compile warnings

git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2772 52acb1d6-8a22-11de-b505-999d5b087335
2009-05-16 09:12:12 +00:00
John Hurliman
8014afcc3e * Added ReaderWriterLockSlim.cs to OpenMetaverseTypes from the Mono SVN
* Prebuild will now define the VISUAL_STUDIO symbol in .csproj files while leaving NAnt files alone
* A conditional was added to use the .NET ReaderWriterLockSlim for VS compiles and the one in OpenMetaverseTypes for Mono compiles. This is a kludge until everyone is running Mono 2.6 or later (hah)

git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2769 52acb1d6-8a22-11de-b505-999d5b087335
2009-05-16 01:34:41 +00:00