Commit Graph

116 Commits

Author SHA1 Message Date
John Hurliman
f11dd21677 * Forced struct alignment to 4-bytes for openjpeg-dotnet on Windows
* Removed padding hack from openjpeg
* Added sanity check to Simian when copying texture data
* Ignore common unused login parameters in Simian

git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2357 52acb1d6-8a22-11de-b505-999d5b087335
2008-11-17 19:08:50 +00:00
John Hurliman
f68e6c9477 Pre-sort extensions in ExtensionLoader if a whitelist is specified. Makes interface assignment work as expected and client extension starting code much easier
git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2352 52acb1d6-8a22-11de-b505-999d5b087335
2008-11-15 00:47:24 +00:00
John Hurliman
f6628a86e7 * Sanity checks in DoubleDictionary.Add()
* Added DoubleDictionary indexing operators
* ExtensionLoader now prints out compile errors for .cs files
* ExtensionLoader silently skips assemblies that fail to load instead of throwing an exception

git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2351 52acb1d6-8a22-11de-b505-999d5b087335
2008-11-14 20:10:41 +00:00
John Hurliman
99b3b74cd6 * More cleanup to acking and resending in libomv and Simian
* Fixed typo in Simian.ini that was disabling connection management
* Replaced several unnecessary foreach loops in Simian with dictionary lookups
* Simian now uses the last detected system IP address instead of the first

git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2342 52acb1d6-8a22-11de-b505-999d5b087335
2008-11-10 18:00:05 +00:00
John Hurliman
1f527a843b Fixing up Simian's regular expressions to get login working again
git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2332 52acb1d6-8a22-11de-b505-999d5b087335
2008-11-07 18:32:45 +00:00
John Hurliman
126ccc79bb * Added a List<string> extensionList param to ExtensionLoader.LoadAllExtensions() to only load whitelisted extensions (used in conjunction with .ini file support)
* Modified ExtensionLoader .ini support to allow values with no keys by default
* Added Simian .ini file config support
* Merged Simian's CoarseLocationUpdates extension into AvatarManager

git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2328 52acb1d6-8a22-11de-b505-999d5b087335
2008-11-06 23:41:07 +00:00
John Hurliman
61c8451fac * Allow HttpServer AddHandler() and RemoveHandler() while the server is running
* Simplified HttpServer calback exception handling
* Fixed a recently introduced typo in LLSD binary serialization
* Allow LLSD binary serialization to work with any Stream instead of only MemoryStream
* Improved Utils.HexStringToBytes(), changed function signature
* Added an efficient Utils.EnumTryParse<T>()

git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2323 52acb1d6-8a22-11de-b505-999d5b087335
2008-11-05 01:50:24 +00:00
John Hurliman
f53aee6fa8 Renaming LLSDParser to OSDParser since it will encompass more than just LLSD parsing in the future
git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@2322 52acb1d6-8a22-11de-b505-999d5b087335
2008-10-30 16:54:17 +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
John Hurliman
3243e3153d * Added contentType parameter to new HttpListener.AddHandler() overload
* Updated Simian to use the simplified HttpListener.AddHandler() overload

git-svn-id: http://libopenmetaverse.googlecode.com/svn/trunk@2317 52acb1d6-8a22-11de-b505-999d5b087335
2008-10-29 20:19:08 +00:00
John Hurliman
dad28f767a * HttpRequestSignature uses regular expressions for the path now
* Added a simplified HttpListener.AddHandler() overload
* Lots of improvements in ExtensionLoader, simplified interface
* Updated Simian to latest ExtensionLoader

git-svn-id: http://libopenmetaverse.googlecode.com/svn/trunk@2316 52acb1d6-8a22-11de-b505-999d5b087335
2008-10-29 20:11:28 +00:00
8b2875f0d7 Simian: Fixed "bouncing" when jump button is held. A new jump is now started each time the avatar lands.
git-svn-id: http://libopenmetaverse.googlecode.com/svn/trunk@2297 52acb1d6-8a22-11de-b505-999d5b087335
2008-10-12 16:17:45 +00:00
d68cc44214 Simian: Fixed link/unlink math by using Vector3.Transform
git-svn-id: http://libopenmetaverse.googlecode.com/svn/trunk@2296 52acb1d6-8a22-11de-b505-999d5b087335
2008-10-12 14:49:23 +00:00
John Hurliman
046a778b09 Applying [LIBOMV-395] from Jeff Ames to comment out dead code and fix lots of compiler warnings
git-svn-id: http://libopenmetaverse.googlecode.com/svn/trunk@2284 52acb1d6-8a22-11de-b505-999d5b087335
2008-10-09 16:48:44 +00:00
John Hurliman
29026f68f0 * Implemented asset and appearance persistence in Simian
git-svn-id: http://libopenmetaverse.googlecode.com/svn/trunk@2283 52acb1d6-8a22-11de-b505-999d5b087335
2008-10-09 04:50:03 +00:00
John Hurliman
003eb8a220 * Added a download command to TestClient to download non-texture assets
* ls -l in TestClient now also prints AssetIDs
* Removed ExportOutfit and ImportOutfit, they didn't work
* Added default eyes and more clothing textures to Simian. Appearance is working for me now. Appearance won't persist until we have a persistent asset store

git-svn-id: http://libopenmetaverse.googlecode.com/svn/trunk@2282 52acb1d6-8a22-11de-b505-999d5b087335
2008-10-09 01:55:46 +00:00
John Hurliman
e180f7a612 * Added Helpers.SplitBlocks() that calculates how to split multiple blocks into multiple packets
* Fixed a typo in TestClient login command usage
Simian:
* Asset uploads were returning the TransactionID instead of the AssetID causing uploads to seemingly fail
* Added ISceneManager.AvatarAppearance and OnAvatarAppearance
* Added UI sounds from OpenSim and sound asset loading
* Split up FetchInventoryReply and InventoryDescendents into multiple packets when necessary

git-svn-id: http://libopenmetaverse.googlecode.com/svn/trunk@2281 52acb1d6-8a22-11de-b505-999d5b087335
2008-10-08 22:10:14 +00:00
John Hurliman
599605ea25 * Bug fix in ExtensionLoader, will now properly throw an exception if all assignable interfaces do not have an extension assigned
git-svn-id: http://libopenmetaverse.googlecode.com/svn/trunk@2276 52acb1d6-8a22-11de-b505-999d5b087335
2008-10-07 22:28:20 +00:00
John Hurliman
419f4485a7 Simian:
* Cleaned up ImageDelivery
* Implemented CopyItemInventory
* Serialize with indented XML
* Only read an inventory skeleton if the login succeeded

git-svn-id: http://libopenmetaverse.googlecode.com/svn/trunk@2274 52acb1d6-8a22-11de-b505-999d5b087335
2008-10-07 19:12:06 +00:00
John Hurliman
6e52169c9d * MoveInventoryItem, MoveInventoryFolder, and PurgeInventoryDescendents added to Simian. Untested
git-svn-id: http://libopenmetaverse.googlecode.com/svn/trunk@2272 52acb1d6-8a22-11de-b505-999d5b087335
2008-10-07 06:22:27 +00:00
John Hurliman
df47694569 * Fixed Simian packet resend bug, agents should properly time out now
* Force Simian inventory permissions to full for now
* Small LoginResponseData.ToXmlRpc() improvements

git-svn-id: http://libopenmetaverse.googlecode.com/svn/trunk@2270 52acb1d6-8a22-11de-b505-999d5b087335
2008-10-07 02:06:29 +00:00
John Hurliman
731c22045d Small fix in Simian's AuthFreeForAll to get persistent inventory functioning. Make sure to delete simian-data.xml and your SL cache first
git-svn-id: http://libopenmetaverse.googlecode.com/svn/trunk@2269 52acb1d6-8a22-11de-b505-999d5b087335
2008-10-07 01:05:19 +00:00
John Hurliman
b3380d2c11 * Add exclusion of UtilsConversion.cs to prebuild.xml, should fix the build
* First stab at working inventory persistence

git-svn-id: http://libopenmetaverse.googlecode.com/svn/trunk@2268 52acb1d6-8a22-11de-b505-999d5b087335
2008-10-07 00:42:05 +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
John Hurliman
0f792a1404 * Changed AgentThrottle documentation to bits instead of bytes, thank you justincc
* Reduced memory usage in Simian ParcelManager by storing parcel overlay as 4x4 blocks

git-svn-id: http://libopenmetaverse.googlecode.com/svn/trunk@2265 52acb1d6-8a22-11de-b505-999d5b087335
2008-10-06 19:11:32 +00:00
John Hurliman
644d415e60 * Added ExtensionLoader, a generic plugin system with internal, external assembly, and source file plugin loading as well as interface binding
* Switched Simian over to ExtensionLoader

git-svn-id: http://libopenmetaverse.googlecode.com/svn/trunk@2258 52acb1d6-8a22-11de-b505-999d5b087335
2008-10-05 22:05:18 +00:00
cfff91f0b9 Simian: Fixed crash when linking several prims together caused by oversized ObjectProperties and UpjectUpdate packets. Cleaned up some unnecessary "using" statements.
git-svn-id: http://libopenmetaverse.googlecode.com/svn/trunk@2256 52acb1d6-8a22-11de-b505-999d5b087335
2008-10-03 22:14:18 +00:00
6c1e9a0e7b Simian: Added support for prim texturing
git-svn-id: http://libopenmetaverse.googlecode.com/svn/trunk@2255 52acb1d6-8a22-11de-b505-999d5b087335
2008-10-03 08:11:32 +00:00
John Hurliman
86679aa74d Working image delivery server (first correct implementation ever)
git-svn-id: http://libopenmetaverse.googlecode.com/svn/trunk@2253 52acb1d6-8a22-11de-b505-999d5b087335
2008-10-01 00:19:53 +00:00
John Hurliman
02ebca8b02 Simian:
* OutgoingPacket fixes, needs more testing with slow/disconnected clients
* Switch AvatarPropertiesRequestHandler to use actual profile data
* Switch AvatarWearablesRequestHandler to use actual wearables data
* Respond to AgentCachedTexture inquiries with empty cache data
* Improve UUIDNameRequest performance

git-svn-id: http://libopenmetaverse.googlecode.com/svn/trunk@2252 52acb1d6-8a22-11de-b505-999d5b087335
2008-10-01 00:17:49 +00:00
John Hurliman
eaaef001fb Simian:
* Added more profile fields to Agent
* Removed inventory hack from AccountManager
* Create an inventory skeleton in AuthFreeForAll
* Simplify logout process with DisconnectClient()
* Handle FetchInventory
* Added CreateFolder and CreateRootFolder to IInventoryProvider

git-svn-id: http://libopenmetaverse.googlecode.com/svn/trunk@2251 52acb1d6-8a22-11de-b505-999d5b087335
2008-10-01 00:12:59 +00:00
John Hurliman
a23f41fdca Simian:
* First pass at persistence support
* Fixed a chat crashing bug
* Remove avatars from the scene on logout
* Sanity check before adding objects to the scene in ObjectAdd
* Sanity check in CompleteAgentMovementHandler if the avatar is already in the scene
* Added ContainsKey() to DoubleDictionary

git-svn-id: http://libopenmetaverse.googlecode.com/svn/trunk@2245 52acb1d6-8a22-11de-b505-999d5b087335
2008-09-28 21:28:10 +00:00
John Hurliman
44e49f8195 * Reverted the Simulator.ParcelOverlay change to an array of enums, Buffer.BlockCopy and Array.Copy both barf. Added a comment that you can typecast afterward to decode the byte
* Finished TerrainManager.DecompressWind() and added TerrainManager.WindSpeeds. Holds a 16x16 array of Vector2s, each one representing the wind speed at a 16x16m area
* Added a WindCommand to TestClient to print the wind speed where the avatar is standing

git-svn-id: http://libopenmetaverse.googlecode.com/svn/trunk@2241 52acb1d6-8a22-11de-b505-999d5b087335
2008-09-26 13:11:00 +00:00
John Hurliman
e7ce3997dc Adding AuthFreeForAll and AccountManager extensions to Simian to return things back to the original functionality. Additionally, user accounts are stored, passwords are checked after the first login, and the pieces are moving into place for account persistence to XML
git-svn-id: http://libopenmetaverse.googlecode.com/svn/trunk@2239 52acb1d6-8a22-11de-b505-999d5b087335
2008-09-24 15:06:59 +00:00
John Hurliman
4d45aa3a13 Simian:
* Adding IAuthenticationProvider and IAccountProvider interfaces to let extensions handle authenticating logins and creating/removing/storing account information

git-svn-id: http://libopenmetaverse.googlecode.com/svn/trunk@2238 52acb1d6-8a22-11de-b505-999d5b087335
2008-09-24 15:04:35 +00:00
John Hurliman
8eef021fa7 Simian:
* Added lots of members to Agent, preparing for serialization
* Added Clear() and Count to DoubleDictionary
* Moved CreateCircuit and unassociatedAgents functionality out of Simian core and into UDPServer extension

git-svn-id: http://libopenmetaverse.googlecode.com/svn/trunk@2237 52acb1d6-8a22-11de-b505-999d5b087335
2008-09-24 14:55:52 +00:00
John Hurliman
1e9ee1f5b6 Simian:
* Moved water height to ISceneProvider
* Removed + 3m hack for prim placement
* Added ParcelPropertiesUpdate handler. Media textures are working now

git-svn-id: http://libopenmetaverse.googlecode.com/svn/trunk@2235 52acb1d6-8a22-11de-b505-999d5b087335
2008-09-22 16:33:42 +00:00
John Hurliman
858b230e6b * Added IParcelProvider and ParcelManager that provide very basic parcel information
* More sane default flags in Simian RegionHandshake

git-svn-id: http://libopenmetaverse.googlecode.com/svn/trunk@2234 52acb1d6-8a22-11de-b505-999d5b087335
2008-09-22 15:11:39 +00:00
cbf46e562e Changed Simian ping timeout to 60 seconds instead of 10.
Removed unnecessary references to System.Threading.
Fixed missing i++ in UUIDNameReply response loop.
Added preliminary support for friendships (still needs to reference the proper calling card folder)

git-svn-id: http://libopenmetaverse.googlecode.com/svn/trunk@2230 52acb1d6-8a22-11de-b505-999d5b087335
2008-09-21 18:10:17 +00:00
76bbff3c66 Fixed Simian instant message functionality between avatars (AgentID was not set in the AgentData block)
git-svn-id: http://libopenmetaverse.googlecode.com/svn/trunk@2226 52acb1d6-8a22-11de-b505-999d5b087335
2008-09-16 00:11:22 +00:00
John Hurliman
805fb7c18d Simian:
* Decode layer boundaries when storing a texture asset
* Started fleshing out correct texture downloading
* Add avatars to the scene along with prims

git-svn-id: http://libopenmetaverse.googlecode.com/svn/trunk@2224 52acb1d6-8a22-11de-b505-999d5b087335
2008-09-15 23:17:21 +00:00
John Hurliman
b10804c725 * Added ObjectDuplicate support to Simian
* Improved Simian PrimFlags handling for newly created objects

git-svn-id: http://libopenmetaverse.googlecode.com/svn/trunk@2220 52acb1d6-8a22-11de-b505-999d5b087335
2008-09-14 08:12:11 +00:00
John Hurliman
9fda90f2a0 Simian:
* Added IAssetProvider interface, converted AssetManager to new interface
* Some prep work to get ready for proper image delivery

git-svn-id: http://libopenmetaverse.googlecode.com/svn/trunk@2206 52acb1d6-8a22-11de-b505-999d5b087335
2008-09-09 00:41:55 +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
John Hurliman
9e243fd131 * Added a copy constructor for Primitive
* Changed Simian ISceneProvider model to run all scene modifications through function calls, and give callbacks access to previous and new data
* Added copy constructor for Simian's SimulationObject

git-svn-id: http://libopenmetaverse.googlecode.com/svn/trunk@2202 52acb1d6-8a22-11de-b505-999d5b087335
2008-09-08 18:23:16 +00:00
John Hurliman
53072cf669 * Adding GetHashCode override to Permissions
* Adding PrimFlags.None back (for OpenSim), marking as obsolete
* Slowly transitioning ISceneProvider to become the central resource of Simian (instead of the Simian class). The callbacks are going to change soon

git-svn-id: http://libopenmetaverse.googlecode.com/svn/trunk@2200 52acb1d6-8a22-11de-b505-999d5b087335
2008-09-06 18:02:38 +00:00
John Hurliman
f656d185a3 * Removed unused AgentManager.AgentMovementCallback
* Added Avatar.ControlFlags (not used by libomv directly)
Simian:
* Added ISceneProvider interface
* Fixed ObjectSelect crash (due to a packet block not being filled out if the selected object was missing)
* Simplified BuildFullUpdate()

git-svn-id: http://libopenmetaverse.googlecode.com/svn/trunk@2196 52acb1d6-8a22-11de-b505-999d5b087335
2008-09-04 21:09:44 +00:00
1fb845c9d4 Fixed Simian agent object not being removed immediately on logout
git-svn-id: http://libopenmetaverse.googlecode.com/svn/trunk@2193 52acb1d6-8a22-11de-b505-999d5b087335
2008-08-31 02:03:13 +00:00
698718460b Fixed de-linking of prims in Simian
git-svn-id: http://libopenmetaverse.googlecode.com/svn/trunk@2192 52acb1d6-8a22-11de-b505-999d5b087335
2008-08-31 00:44:11 +00:00
7e07cf44f4 Added support for linked sets in Simian (unlinking is not yet supported). Moved static BuildFullUpdate and related functions to SimulationObject.cs
git-svn-id: http://libopenmetaverse.googlecode.com/svn/trunk@2190 52acb1d6-8a22-11de-b505-999d5b087335
2008-08-30 22:48:37 +00:00