Commit Graph

122 Commits

Author SHA1 Message Date
John Hurliman
2b39ff0a39 Merged master into prioritization 2009-10-21 16:24:17 -07:00
Melanie
2a886fd76c Really make module port selection work. Implement port setting in
LLProxyLoginModule.
2009-10-21 02:19:45 +01:00
John Hurliman
233e16b99c * Rewrote the methods that build ObjectUpdate and ImprovedTerseObjectUpdate packets to fill in the data more accurately and avoid allocating memory that is immediately thrown away
* Changed the Send*Data structs in IClientAPI to use public readonly members instead of private members and getters
* Made Parallel.ProcessorCount public
* Started switching over packet building methods in LLClientView to use Util.StringToBytes[256/1024]() instead of Utils.StringToBytes()
* More cleanup of the ScenePresences vs. ClientManager nightmare
* ScenePresence.HandleAgentUpdate() will now time out and drop incoming AgentUpdate packets after three seconds. This fixes a deadlock on m_AgentUpdates that was blocking up the LLUDP server
2009-10-18 20:24:20 -07:00
John Hurliman
fdb2a75ad3 Committing the second part of Jim Greensky @ Intel Lab's patch, re-prioritizing updates 2009-10-17 18:01:22 -07:00
Melanie
cdcbd22ba8 Merge branch 'master' into prioritization 2009-10-17 14:51:17 +01:00
Melanie
c7da13eb23 Adds SendAvatarInterestsUpdate to IClientAPI
Thank you, Fly-Man
2009-10-17 14:50:21 +01:00
John Hurliman
4b75353cbf Object update prioritization by Jim Greensky of Intel Labs, part one. This implements a simple distance prioritizer based on initial agent positions. Re-prioritizing and more advanced priority algorithms will follow soon 2009-10-15 16:35:27 -07:00
John Hurliman
dc11643c00 * Consolidated adding / removing ClientManager IClientAPIs to two places in Scene
* Added some missing implementations of IClientAPI.RemoteEndPoint
* Added a ClientManager.Remove(UUID) overload
* Removed a reference to a missing project from prebuild.xml
2009-10-13 17:33:45 -07:00
John Hurliman
23a334b9f5 * Rewrote ClientManager to remove Lindenisms from OpenSim core, improve performance by removing locks, and replace LLUDPClientCollection
* Removed the confusing (and LL-specific) shutdowncircuit parameter from IClientAPI.Close()
* Updated the LLUDP code to only use ClientManager instead of trying to synchronize ClientManager and m_clients
* Remove clients asynchronously since it is a very slow operation (including a 2000ms sleep)
2009-10-13 14:50:03 -07:00
Diva Canto
36dcfd2b80 * Changed logic of enabling LLProxyLoginModule to follow the new style -- true/false on the name, rather than gridmode=true.
* Better error messages on Add/Remove clients.
2009-10-11 10:23:16 -07:00
John Hurliman
2519f071f2 Fixing a few compile errors in the previous commit 2009-10-06 02:50:59 -07:00
Diva Canto
362e94a022 * KeepAlive set to false in expect_user and log_off.
* Check for null SP in PermissionsModule.
2009-10-04 16:30:12 -07:00
John Hurliman
29a4614529 * MySQL data tests now pass by fixing a bad fix for a bad cast on the asset Local member in MySQLAssetData
* First pass at applying the using(){} pattern to IDisposable objects. Always use the using pattern on IDisposable objects whenever possible, do not manually call .Close() or .Dispose() unless there is no other way to write the code. This pass mostly covers OpenSim.Data.MySQL, and should have no functional change (tests still pass)
2009-10-04 13:57:51 -07:00
Melanie
6878b26b0d Merge branch 'diva-textures-osgrid' 2009-10-04 05:49:16 +01:00
Diva Canto
b2cdee5a14 Better error handling to diagnose login problems. 2009-10-03 19:08:56 -07:00
John Hurliman
387e9f7a7f * Creates Util.UTF8 and switches some references of Encoding.UTF8 to Util.UTF8 (not all references were switched since not all OpenSim libraries reference OpenSim.Framework)
* Shrinks the largest in-memory object, the LLRAW.HeightmapLookupValue struct (only used for exporting to LLRAW terrain files), to the minimum possible size. This seems to have the odd side effect of cutting the size of the two double[256,256] terrain objects in half. Possibly an alignment optimization?
2009-10-02 18:31:08 -07:00
Melanie
31d8cec0f8 Merge branch 'master' into diva-textures 2009-10-02 08:23:38 +01:00
John Hurliman
5dfd2643df * Change the signature of the agent set appearance callback to prevent unnecessary serialization/deserialization of TextureEntry objects and allow TextureEntry to be inspected for missing bakes
* Inspect incoming TextureEntry updates for bakes that do not exist on the simulator and request the missing textures
* Properly handle appearance updates that do not have a TextureEntry set
2009-09-30 15:53:03 -07:00
Melanie
400abed271 Add RebakeAvatarTexturesPacket to the client view 2009-09-30 21:33:20 +01:00
Jeff Ames
ee205e7e81 Formatting cleanup. 2009-10-01 01:17:47 +09:00
Diva Canto
902279f0fd Moved the property RegionLoginsEnabled from GridComms to the Scene -- not the scene itself but SceneCommunicationService, for now. Beginning to clear the code from using Region.Communications. grid stuff. 2009-09-25 08:39:09 -07:00
Teravus Ovares (Dan Olivares)
c605509da3 * Lock timers when Calling Start() and Stop() when the Thread Context is murky. This affects Mono only. 2009-09-09 16:20:19 -04:00
Justin Clark-Casey (justincc)
d649194be3 minor: formatting and comments 2009-08-28 12:52:40 +01:00
Adam Johnson
a42569d896 Thanks dmiles for a patch that adds PacketType.RequestMultipleObjects Packet Handler - ref mantis #4010 2009-08-16 15:06:06 +09:00
Teravus Ovares (Dan Olivares)
18634e9dd8 minor: comments 2009-08-12 23:18:00 -04:00
Melanie
eba23048ca Replace the Replaceable modules name 2009-08-10 23:08:22 +01:00
Teravus Ovares
08819bcbea * Created a way that the OpenSimulator scene can ask the physics scene to do a raycast test safely.
* Test for prim obstructions between the avatar and camera.  If there are obstructions, inform the client to move the camera closer.  This makes it so that walls and objects don't obstruct your view while you're moving around.   Try walking inside a hollowed tori.   You'll see how much easier it is now because your camera automatically moves closer so you can still see.
* Created a way to know if the user's camera is alt + cammed or just following the avatar.
* Changes IClientAPI interface by adding SendCameraConstraint(Vector4 CameraConstraint)
2009-07-19 02:32:02 +00:00
MW
acea31518b fixed the bug where changing the rotation of a selection of prims in a linkset, made each of those prims rotate around its own centre rather than around the geometric centre of the selection like they should do (and like the client expects).
This involved adding a new OnUpdatePrimSingleRotationPosition event to IClientAPI so that we can get the changed position from the client. 
Btw adding new events to IClientAPI is really tedious where you have to copy the change across to at least 5 or 6 other files. 
[Note this doesn't fix the bug where any rotation changes to the root prim (but not the whole linkset) cause rotation errors on the child prims.]
2009-07-17 14:58:54 +00:00
Melanie Thielker
8ecfc9a717 Committing the interface change and the addition to the modules to get
the ball rolling on replacable modules. No user functionality yet
2009-07-10 20:17:13 +00:00
Melanie Thielker
c310fb11f4 Remove all references to HttpServer from CommsManager (all incarnations)
Change all uses of the HttpServer properties to use the new singleton
2009-07-10 02:22:26 +00:00
Melanie Thielker
3564271c2d Restore the functionality that was removed in r9928. This lets the load
balancer plugin work again. Create a new method, GetClientEP, to retrieve
only the EndPoint for script usage. Marked the purpose of the method
in IClientAPI.cs with a warning. Also restored the corresponding SetClientInfo
functionality.
2009-07-01 15:47:52 +00:00
Dahlia Trimble
147c9bcd45 Make cleartext authentication case sensitive. Thanks jhurliman for spotting this. 2009-06-27 07:49:10 +00:00
Sean Dague
1adeb8ad77 From: Chris Yeoh <yeohc@au1.ibm.com>
This patch ensures that the touch positions are set during touch_end
events (currently only working for touch_start and touch events).
2009-06-19 12:21:20 +00:00
Arthur Valadares
f243dddc04 * Corrected CAPS namespaces
* "luke, use the sed"
2009-06-18 14:33:35 +00:00
Justin Clarke Casey
45342067f5 * Move standalone login setup in LLStandaloneLoginmodule to RegionLoaded() from AddRegion()
* This is necessary to avoid a dependency problem where LLStandaloneLoginModule references IInventoryService before the LocalInventoryServiceConnector is registered
* Correct some copypasta log messages in LocalInventoryServiceConnector
2009-06-12 15:41:53 +00:00
diva
156604e28e InterServiceInventoryService references *almost* completely removed from the simulator. Only a couple left, not important. Also updated the login tests -- Justin, this time I was able to fix this by myself :) 2009-06-11 03:00:25 +00:00
Arthur Valadares
eb330f71be * Making silent logoff of old hung sessions for new connections default for
StandAlone users. Not touching grid.
2009-06-01 18:34:40 +00:00
Arthur Valadares
d0084f08f2 * Allows standalone region users to skip the "You must wait 5 minutes to log again" message and
allow the region to kick the old user and log the new one without reporting any failure.
Default is still to show message and fail login
2009-05-29 22:38:18 +00:00
Adam Frisby
ac79ff8dc6 * Adds NAT routing support for MXP Asset Delivery. (This means MXP should be fully NAT compatible.) 2009-05-24 01:36:13 +00:00
Adam Frisby
6b312d9340 * Implements automatic loopback handling for standalone regions.
* This /should/ make OpenSim behave properly when hosting behind a NAT router and utilizing port forwarding (but the router doesn't support Loopback)
2009-05-23 06:29:08 +00:00
Adam Frisby
e9ea959263 * Pipes IPEndPoint through all Login methods, including LLSD/OSD login paths. 2009-05-23 06:14:02 +00:00
Adam Frisby
31baeef469 * Pipes requestors IP address through all XmlRpcRequest delegates. This is needed to be able to 'NAT-wrap' the login sequence.
* If you have something using XmlRpc that isn't in core, change your method signature from:
   (XmlRpcRequest request)
to:
   (XmlRpcRequest request, IPEndPoint remoteClient)
2009-05-23 06:05:20 +00:00
Arthur Valadares
a85f496f4d * Upgraded LLStandaloneLoginModule, LLProxyLoginModule and LLClientStackModule to new
region modules. This was needed because the stand alone and grid modules weren't deleting
old scenes, which caused an issue when deleting and recreating a region with same name
on same x,y coordinates. Tested it on standalone and issue is fixed. Requires prebuild
to be run again.

Fixes Mantis #3699
2009-05-21 20:28:59 +00:00
Homer Horwitz
99cf8e3f5a Send the owner name, not the client name on SendDialog.
This modifies IClientAPI.SendDialog slightly.
Fixes Mantis #3661.
2009-05-16 16:01:25 +00:00
diva
5e4fc6e91e Heart surgery on asset service code bits. Affects OpenSim.ini configuration -- please see the example. Affects region servers only.
This may break a lot of things, but it needs to go in. It was tested in standalone and the UCI grid, but it needs a lot more testing.
Known problems: 
* HG asset transfers are borked for now
* missing texture is missing
* 3 unit tests commented out for now
2009-05-15 05:00:25 +00:00
Melanie Thielker
1b7d0a6c93 Paving the way for syncing group permissions across a grid 2009-05-12 14:59:11 +00:00
Adam Frisby
6dcafec22d * Implements IP and DNS based ban facilities to OpenSim.
* User interface is ... primitive at best right now.
* Loads bans from bans.txt and region ban DB on startup, bans.txt is in the format of one per line. The following explains how they are read;

DNS bans are in the form "somewhere.com" will block ANY matching domain (including "betasomewhere.com", "beta.somewhere.com", "somewhere.com.beta") - make sure to be reasonably specific in DNS bans.

IP address bans match on first characters, so, "127.0.0.1" will ban only that address, "127.0.1" will ban "127.0.10.0" but "127.0.1." will ban only the "127.0.1.*" network
2009-05-11 19:23:51 +00:00
Dr Scofield
e0a06f6416 - moving banned check and public/private check to
Scene.NewUserConnection()
- adding reason reporting

this enforces estate bans very early on and prevents us from
circulating client objects that we'd then have to retract once we
realize that the client is not allowed into the region
2009-05-05 16:17:52 +00:00
Melanie Thielker
acfb5051cd Intermediate commit. WILL NOT COMPILE! 2009-05-04 20:15:39 +00:00
Melanie Thielker
36dd346a91 Add a method to flush the prim update buffers once a frame, since the timer
appear to be too slow to be useful, or fail too fire. I may remove the timers
as a consequence if this.
2009-05-04 14:25:19 +00:00