Commit Graph

61 Commits

Author SHA1 Message Date
Latif Khalifa
ae112d56fb Update copyright notices 2014-02-25 15:31:10 +01:00
Latif Khalifa
f37ae4b270 Check that we have caps before sending request
git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@3596 52acb1d6-8a22-11de-b505-999d5b087335
2011-12-03 17:14:53 +00:00
Latif Khalifa
f303511864 Fixed documentation
git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@3576 52acb1d6-8a22-11de-b505-999d5b087335
2011-08-14 11:54:08 +00:00
Latif Khalifa
5091d0e4f9 Patch by Revolution Smythe to add new privacy fields to parcel properties.
git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@3556 52acb1d6-8a22-11de-b505-999d5b087335
2011-07-12 23:15:58 +00:00
Latif Khalifa
a539f769d6 LIBOMV-853: Client.Parcels.Terraform Throwing Packet Errors
git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@3372 52acb1d6-8a22-11de-b505-999d5b087335
2010-06-29 12:41:12 +00:00
John Hurliman
9138fee6b0 * Handle "-0" values in wearable assets
* Login fix for Linux clients now that the null ID0 is blacklisted
* Change Parcel from a struct to a class (this object is huge!) and remove the redundant initializers in the constructor
* Moved Terrain and WindSpeed data from TerrainManager to the Simulator class
* Don't track wind data either if STORE_LAND_PATCHES is disabled

git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@3298 52acb1d6-8a22-11de-b505-999d5b087335
2010-04-21 00:00:54 +00:00
Latif Khalifa
b50958fc99 LIBOMV-819: Implemented support for resource usage limits
git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@3293 52acb1d6-8a22-11de-b505-999d5b087335
2010-03-31 11:47:52 +00:00
Jim Radford
b9b648c8d0 LIBOMV-783 Adds support for Linden Homes regions, specifically a ParcelFlags entry which was recycled to indicate a linden homes parcel
git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@3245 52acb1d6-8a22-11de-b505-999d5b087335
2010-02-12 21:59:13 +00:00
Jim Radford
1ecc9b70eb * Additional documentation clarification for Parcel struct
git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@3235 52acb1d6-8a22-11de-b505-999d5b087335
2009-11-30 23:09:25 +00:00
Jim Radford
94b169c222 Update Parcel struct documentation to make the various Count fields better understood
git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@3234 52acb1d6-8a22-11de-b505-999d5b087335
2009-11-30 22:49:35 +00:00
Jim Radford
95a87c7857 LIBOMV-686 Convert NetworkManager events/delegates to new patterns
* Remove INetworkManager interface (it was not being used for anything)

git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@3182 52acb1d6-8a22-11de-b505-999d5b087335
2009-10-28 08:01:52 +00:00
Jim Radford
e09e3f45b3 LIBOMV-686 Implements new event patterns based on the Microsoft Framework Design Guidelines in ParcelManager
* Changes some public method names to match patterns used through library, namely requests that have an event are named with Request as a prefix
* Add Key2Name TestClient command for resolving group and avatar names based on a UUID
* BREAKING CHANGE * this is a major shift in the way events are internally handled.

git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@3151 52acb1d6-8a22-11de-b505-999d5b087335
2009-10-17 05:50:51 +00:00
Jim Radford
a00b158dc0 LIBOMV-686 Implements new event patterns based on the Microsoft Framework Design Guidelines in FriendsManager
* BREAKING CHANGE * this is a major shift in the way events are internally handled.

git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@3149 52acb1d6-8a22-11de-b505-999d5b087335
2009-10-16 07:23:18 +00:00
Jim Radford
f1ff73cc46 * Updates to DirectoryManager, specifically Classified Ads that add missing adult rating functionality for queries, adds an enum to interpret flags in replies
* Adds additional documentation to both ParcelManager and DirectoryManager
* Adds Example TestClient command to search classified ads
* Updates to PacketDecoder to better interpret some additional flag fields

git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@3132 52acb1d6-8a22-11de-b505-999d5b087335
2009-10-07 20:13:33 +00:00
Jim Radford
3ffb4cb35d LIBOMV-325 Adds ParcelMediaCommand packet handler and Events, Thanks Douglas R. Miles for the patch
git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2954 52acb1d6-8a22-11de-b505-999d5b087335
2009-07-10 01:48:42 +00:00
Latif Khalifa
024c4b151d Proper implementation of messages related to RemoteParcelRequest capability
git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2926 52acb1d6-8a22-11de-b505-999d5b087335
2009-06-27 23:07:04 +00:00
Latif Khalifa
d02eb9027e LIBOMV-607: Implement ability to get remote parcel ID's
git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2911 52acb1d6-8a22-11de-b505-999d5b087335
2009-06-26 06:51:41 +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
John Hurliman
c5409af63f * [LIBOMV-506] Complete rewrite of CapsBase to use HttpWebRequest instead of our homebrewed WebRequest hack. We lose the upload progress callback but gain IOCP thread instead of System.Thread usage and Keep-Alive support
* Content-Types described in http://tools.ietf.org/html/draft-hamrick-llsd-00 are used for CAPS requests. This *may* be incompatible with the current SL grid, needs testing
* Modified CapsClient requests to require OSDFormat enum and timeout values

git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2680 52acb1d6-8a22-11de-b505-999d5b087335
2009-05-01 06:04:32 +00:00
Jim Radford
2ad91ceeb6 LIBOMV-477 Adds 3 known variants of ChatSessionRequestMessage to Message System
Adds a little documentation, and some naming cleanup


git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2660 52acb1d6-8a22-11de-b505-999d5b087335
2009-04-25 01:54:52 +00:00
Jim Radford
a9258c3cdc LIBOMV-477 Some minor fixes to messaging system, and some test updates to fix TeamCity Test Failure.
git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2652 52acb1d6-8a22-11de-b505-999d5b087335
2009-04-24 04:39:44 +00:00
Jim Radford
57b74be3a9 Fix some compile time warnings, clean out cruft EnableSimulatorHandler code
git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2634 52acb1d6-8a22-11de-b505-999d5b087335
2009-04-20 07:50:25 +00:00
John Hurliman
f918d41133 * Disable WinGridProxy filters until the proxy is running
* Rename CapsClient.StartRequest() to CapsClient.BeginGetResponse() to match HttpWebRequest
* Adding the blocking method CapsClient.GetResponse()

git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2611 52acb1d6-8a22-11de-b505-999d5b087335
2009-04-16 16:25:47 +00:00
Jim Radford
8d029fa3d5 LIBOMV-477 Fix a bug deserializing AgentGroupDataUpdateMessage, LL sends the AgentID in an Array
* Converted URLs in Parcel Properties messages back to string (having them as Uri's did not work for null/empty URLS)

git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2602 52acb1d6-8a22-11de-b505-999d5b087335
2009-04-14 05:32:20 +00:00
Jim Radford
afe715a30f LIBOMV-477 Adds several capabilities message classes
* Some cleanup of LindenMessages.cs class
* Tests for all messages encode/decode are implemented and included

git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2601 52acb1d6-8a22-11de-b505-999d5b087335
2009-04-14 04:47:55 +00:00
Jim Radford
e24d24a201 LIBOMV-477 Big Messaging system update:
* Adds new IMessage interface for messaging system
* Adds additional Caps Messages + Tests for most (All incoming caps messages should now be handled by new messaging system)
* Unit Tests for new messaging system only test that decoding and encoding work properly, they do not confirm proper formatting required by the simulator
* Switches EventQueueCallback to decode and send message to registered callbacks
* Switches several caps requests over to new messaging interface
Some in-process work is left commented and cluttering up in a few places. Will remove after more cleanup is done
* Update source header/copyright in several classes
Note: this commit features several breaking changes to existing clients. Much code that has been only lightly tested, please report bugs in jira.

git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2599 52acb1d6-8a22-11de-b505-999d5b087335
2009-04-13 09:32:25 +00:00
Jim Radford
62bb22000c * LIBOMV-477 Switches ParcelPropertiesReply to use new Messaging system
* Switches PrimOwnersReply to use new Messaging system
Corrects several minor decoding/encoding issues with new Message system.

git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2590 52acb1d6-8a22-11de-b505-999d5b087335
2009-04-10 21:34:59 +00:00
John Hurliman
f48c9922e9 * Added OpenMetaverse.Messages.Linden and OpenMetaverse.Messages.Simian namespaces to hold LLSD serialized messages. The dawn of a new era for libomv!
* Changing LLSD JSON serialization to match the draft at http://tools.ietf.org/html/draft-hamrick-llsd-00 (first breaking change since 0.6.0)
* Moving some enums out to OpenMetaverseTypes.dll
* Adding conversion methods to go to and from the newly moved enums
* Moved Parcel enums out to the main namespace

git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2588 52acb1d6-8a22-11de-b505-999d5b087335
2009-04-09 01:17:40 +00:00
John Hurliman
3ad7551a4a * Added Utils.EmptyBytes which is equal to new byte[0] and replaced all references of new byte[0] to Utils.EmptyBytes
* Added a CRC32 implementation to OpenMetaverseTypes.dll
* Added ToBytes() functions to most of the OMV types for writing bytes into an existing byte array

git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2470 52acb1d6-8a22-11de-b505-999d5b087335
2009-03-06 01:32:02 +00:00
Robin Cornelius
51a2768e90 Opensim does not yet send the MediaData section of ParcelProperties via LLSD, so make that block optional for compatability reasons.
git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2450 52acb1d6-8a22-11de-b505-999d5b087335
2009-02-21 09:54:19 +00:00
Jim Radford
7a5e63dbab LIBOMV-441 ParcelManager Update() method will now use capability if it exists on the simulator and fallback to the udp method if no capability exists.
git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2419 52acb1d6-8a22-11de-b505-999d5b087335
2009-01-27 23:06:31 +00:00
John Hurliman
4b1f441574 * Sanity check in DeserializeLLSDXml() to return an empty LLSD block instead of throwing an exception
* Removing redundant code from OpenMetaverse.Utilities
* Using System.Diagnostics.StopWatch instead of Environment.TickCount for rate limiting, and speeding up packet sending from 75ms gaps to 10ms (might be slightly too fast, but it works for me)
* Cleaning up the logic a big in RequestAllSimParcels()
* Try/catch block in GridProxy around packet delegates

git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2371 52acb1d6-8a22-11de-b505-999d5b087335
2008-12-05 01:34:24 +00:00
Jim Radford
c768eef6cc Removing Serializable attribute from ParcelInfo struct (was accidentally comitted previously and is unnnecessary)
git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2368 52acb1d6-8a22-11de-b505-999d5b087335
2008-12-01 21:18:34 +00:00
Jim Radford
f9701dcbd7 Adds check/warning for GetParcelLocalID method if ParcelMap/Dictionary has not been previously populated
git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2367 52acb1d6-8a22-11de-b505-999d5b087335
2008-12-01 21:13:24 +00:00
John Hurliman
aede2ea203 * Adding Packet.BuildPacket() function back, OpenSim uses it
* Converted ParcelAccessEntry.Flags to AccessList enum

git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2359 52acb1d6-8a22-11de-b505-999d5b087335
2008-11-17 20:29:13 +00:00
John Hurliman
bad3108ddf * Renamed LLSD to OSD. The LLSD-specific (de)serialization functions have been renamed to specify they use LLSD. Other serialization formats will be added in the future, along with better native support for vectors and unsigned integers
* Added Utils.SHA1()

git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2321 52acb1d6-8a22-11de-b505-999d5b087335
2008-10-30 01:50:59 +00:00
Jim Radford
21abeaec88 LIBOMV-398 Better yet, splits out AccessList into two lists, a WhiteList and a Blacklist in the Parcel object. This works much better for storing this information in our internal dictionaries and makes it less obscure for end library users to understand.
git-svn-id: http://libopenmetaverse.googlecode.com/svn/trunk@2302 52acb1d6-8a22-11de-b505-999d5b087335
2008-10-18 23:53:30 +00:00
Jim Radford
b59ce0c443 LIBOMV-398 Adds back individual ACL Entry specific flags field which is likely used for expiring bans
git-svn-id: http://libopenmetaverse.googlecode.com/svn/trunk@2301 52acb1d6-8a22-11de-b505-999d5b087335
2008-10-18 22:46:49 +00:00
Jim Radford
7cfab9b2a7 LIBOMV-398 Corrects incoming flag field on ParcelAccessListReply packet, Thanks MichelleZ
git-svn-id: http://libopenmetaverse.googlecode.com/svn/trunk@2300 52acb1d6-8a22-11de-b505-999d5b087335
2008-10-18 22:36:09 +00:00
bec96bc6a4 Fixed some param names in function documentation for ParcelManager.cs and UtilsConversions.cs
git-svn-id: http://libopenmetaverse.googlecode.com/svn/trunk@2273 52acb1d6-8a22-11de-b505-999d5b087335
2008-10-07 13:20:35 +00:00
John Hurliman
3e5fcb7fab * Moving conversion functions from Helpers to Utils (in OpenMetaverseTypes)
* Added GetLLSD() and FromLLSD() to Permissions
* Started on inventory persistence for Simian

git-svn-id: http://libopenmetaverse.googlecode.com/svn/trunk@2267 52acb1d6-8a22-11de-b505-999d5b087335
2008-10-06 22:34:38 +00:00
Jim Radford
09a0404860 LIBOMV-392 Adds sanity check to ParcelPrimOwnersReply packet, fires event with null values to mimic the behavior of the viewer
* removed extraneous debug message in ObjectManager when CreateSelected is flagged on prims

git-svn-id: http://libopenmetaverse.googlecode.com/svn/trunk@2260 52acb1d6-8a22-11de-b505-999d5b087335
2008-10-06 01:12:05 +00:00
Jim Radford
3fec38736b LIBOMV-392 * Switches ParcelObjectOwnersListReply packet to be directly handled instead of using our generic serializer. This was required do to an additional datablock/field being sent over CAPS which was not part of the original UDP packet
* Removed previously replaced handler for ParcelProperties that was switched over to CAPS months ago.

git-svn-id: http://libopenmetaverse.googlecode.com/svn/trunk@2259 52acb1d6-8a22-11de-b505-999d5b087335
2008-10-06 00:38:50 +00:00
John Hurliman
8e70446f3c * Added Utils.CopyBytes() to OpenMetaverseTypes, should be used any time a byte array is grabbed from a packet member and directly assigned to another variable
* Moved Simulator enums (RegionFlags and SimAccess) into the main OpenMetaverse namespace
* More comments

git-svn-id: http://libopenmetaverse.googlecode.com/svn/trunk@2233 52acb1d6-8a22-11de-b505-999d5b087335
2008-09-22 15:05:14 +00:00
John Hurliman
6b040fd03a * Moved ParcelManager enums out into the main OpenMetaverse namespace
* Removed some members from the Parcel struct that shouldn't be there

git-svn-id: http://libopenmetaverse.googlecode.com/svn/trunk@2232 52acb1d6-8a22-11de-b505-999d5b087335
2008-09-22 13:02:27 +00:00
John Hurliman
640ccaf2ee Added Parcel.LandingType enum, changed Parcel.LandingType to Parcel.Landing
git-svn-id: http://libopenmetaverse.googlecode.com/svn/trunk@2231 52acb1d6-8a22-11de-b505-999d5b087335
2008-09-22 08:49:34 +00:00
John Hurliman
451015b674 Removing ResendCount and TickCount from Packet class, moved to OutgoingPAcket struct. This is necessary to prevent big problems when sending the same packet to multiple destinations
git-svn-id: http://libopenmetaverse.googlecode.com/svn/trunk@2204 52acb1d6-8a22-11de-b505-999d5b087335
2008-09-08 23:57:31 +00:00
Jim Radford
78ef0621c9 LIBOMV-362 Adds some sanity checking and better logic to internal Parcel Dictionaries to prevent overloading the outbound packet queue with unnecessary requests.
git-svn-id: http://libopenmetaverse.googlecode.com/svn/trunk@2199 52acb1d6-8a22-11de-b505-999d5b087335
2008-09-06 10:19:46 +00:00
John Hurliman
07754f7016 OpenMetaverse:
* LLObject is gone, it is now merged into Primitive
* Avatar inherits from Primitive
Simian:
* Added SimulationObject to track prims
* Added IMeshingProvider and a connector to OpenMetaverse.Rendering plugins

git-svn-id: http://libopenmetaverse.googlecode.com/svn/trunk@2161 52acb1d6-8a22-11de-b505-999d5b087335
2008-08-24 05:06:51 +00:00
John Hurliman
175324af21 * Disabling the object pool while we debug various issues
* Fixing a race condition in PrimWorkshop
* Fixing a race condition in ParcelManager

git-svn-id: http://libopenmetaverse.googlecode.com/svn/trunk@2154 52acb1d6-8a22-11de-b505-999d5b087335
2008-08-22 02:39:46 +00:00