[Opensim-dev] Error detection when storing an asset

2014-04-18 Thread Oren Hurvitz
I have found that when OpenSim tries to store an asset using AssetServicesConnector, it doesn't handle failures well. There are several problems in AssetServicesConnector.Store(), and some of them seem to be based on historical considerations that may no longer be relevant, so I'd like to see if

Re: [Opensim-dev] Error detection when storing an asset

2014-04-18 Thread Oren Hurvitz
Regarding the hiding of exceptions: to be clear, I was already bitten by this behavior; that's why I started to investigate how assets are stored. I have therefore already changed Kitely's version of OpenSim to propagate exceptions, and the question is whether other people would like me to

Re: [Opensim-dev] Error detection when storing an asset

2014-04-18 Thread Oren Hurvitz
to derail this topic. That can wait for another day. Mike -Original Message- From: opensim-dev-boun...@lists.berlios.de [mailto:opensim-dev-boun...@lists.berlios.de] On Behalf Of Oren Hurvitz Sent: Friday, April 18, 2014 7:06 AM To: opensim-dev@lists.berlios.de Subject: Re

Re: [Opensim-dev] Error detection when storing an asset

2014-04-18 Thread Oren Hurvitz
://lists.berlios.de/mailman/listinfo/opensim-dev ___ Opensim-dev mailing list Opensim-dev@lists.berlios.de https://lists.berlios.de/mailman/listinfo/opensim-dev -- Oren Hurvitz VP RD Kitely Ltd. Email: or...@kitely.com i...@kitely.com

Re: [Opensim-dev] Error detection when storing an asset

2014-04-18 Thread Oren Hurvitz
, if it gets disconnected, could run on locally cached assets and manage to reconnect after 20 minutes and simply upload all new assets since then. Screaming failure at the user is pointless in such a scenario. - Melanie On 18/04/2014 22:56, Oren Hurvitz wrote: There seems to be a misunderstanding

Re: [Opensim-dev] REST handlers use partial string matching

2014-04-02 Thread Oren Hurvitz
I changed BaseHttpServer to require handler paths to match a full path component. For example, these match: /assets and /assets/12345 But these don't match: /assets and /assets_exist -- View this message in context:

Re: [Opensim-dev] Optimize pushing assets to other grids

2014-04-02 Thread Oren Hurvitz
I've added AssetsExist to master. It's implemented using REST, at /get_assets_exist. Regarding getting server capabilities: later I realized that Hypergrid already has the helo command, which serves this purpose. Currently it returns only one type of property: whether the server is based on

[Opensim-dev] Viewer doesn't render attachments after teleport

2014-04-02 Thread Oren Hurvitz
I'm seeing strange behavior from viewers: after an avatar HG teleports to another grid, his attachments sometimes aren't visible to *some* of the avatars in the region. The isn't that the attachments have been detached: the log shows that they came across perfectly. And some of the avatars in the

Re: [Opensim-dev] Viewer doesn't render attachments after teleport

2014-04-02 Thread Oren Hurvitz
Here's another interesting finding: even when the attachments aren't visible, I can click on them to edit them. The viewer renders a yellow outline around the shape of the attachment (in Singularity), even while the area inside the outline still doesn't show the attachment. -- View this message

Re: [Opensim-dev] Viewer doesn't render attachments after teleport

2014-04-02 Thread Oren Hurvitz
I got some great advice off-list from Nicky Perian. When there's a problem of missing prims, go to the Graphics Preferences and toggle the option Basic shaders. I tried this, and toggling this option (on or off, both work) makes the missing prims appear immediately. This proves that the viewer

Re: [Opensim-dev] Optimize pushing assets to other grids

2014-04-02 Thread Oren Hurvitz
I've done in Robust. On Wed, Apr 2, 2014 at 6:38 PM, Mic Bowman [via opensim-dev] ml-node+s2196679n7579156...@n2.nabble.com wrote: How is this hooked up in the simulator? I'll need to update the simian connectors. On Wed, Apr 2, 2014 at 12:11 AM, Oren Hurvitz [hidden email]http://user

Re: [Opensim-dev] Optimize pushing assets to other grids

2014-04-02 Thread Oren Hurvitz
The actual work is done in the assets server, and there's code in the simulators to call this API. On Wed, Apr 2, 2014 at 10:28 PM, Nebadon Izumi [via opensim-dev] ml-node+s2196679n7579160...@n2.nabble.com wrote: excuse my ignorance here but are these changes directly to the asset server

[Opensim-dev] REST handlers use partial string matching

2014-04-01 Thread Oren Hurvitz
I tried to add a REST handler at the endpoint /assets_exist. It turns out that I can't do that, because REST handlers are searched using partial string matches, so servers that don't implement the new handler will mistakenly choose the /assets endpoint instead. For now, I solved the problem by

Re: [Opensim-dev] REST handlers use partial string matching

2014-04-01 Thread Oren Hurvitz
Re: why use POST instead of HEAD: because this lets me check the existence of many assets at once with a single HTTP request. The main use of the AssetsExist call is with HGAssetGatherer, which knows the full list of assets that it wants to send, so it's able to check all of them at once. --

Re: [Opensim-dev] REST handlers use partial string matching

2014-04-01 Thread Oren Hurvitz
The AssetsExist API is implemented efficiently in all levels of the stack including the database, where a single query checks all the assets. So a single HTTP request will be vastly more efficient than multiple calls, even if KeepAlive works. And I never trust KeepAlive anyway because I've used

Re: [Opensim-dev] Optimize pushing assets to other grids

2014-03-31 Thread Oren Hurvitz
I have implemented this method. I found that the Assets Service already had a method to check for assets' existence, so I just had to extend it to check multiple asset ID's at once, and make it available remotely. But now I'm not sure what to do about backwards compatibility. I'm sending the

Re: [Opensim-dev] Optimize pushing assets to other grids

2014-03-31 Thread Oren Hurvitz
into the existing post handler. Melanie On 31 Mar 2014, at 13:55, Oren Hurvitz [hidden email]http://user/SendEmail.jtp?type=nodenode=7579101i=0 wrote: I have implemented this method. I found that the Assets Service already had a method to check for assets' existence, so I just had to extend

Re: [Opensim-dev] Optimize pushing assets to other grids

2014-03-31 Thread Oren Hurvitz
This isn't overloading: it's an RPC endpoint that accepts many methods. You wouldn't create a separate endpoint for each method, would you? -- View this message in context: http://opensim-dev.2196679.n2.nabble.com/Optimize-pushing-assets-to-other-grids-tp7579093p7579104.html Sent from the

Re: [Opensim-dev] Optimize pushing assets to other grids

2014-03-31 Thread Oren Hurvitz
If you say that the intention was to use REST then of course I accept what you say. But whatever the vision was, the implementation today is very different: many services use RPC. The /auth endpoint, for example, handles 6 methods. The /avatar endpoint handles 5 methods. And that's just for

[Opensim-dev] Optimize pushing assets to other grids

2014-03-30 Thread Oren Hurvitz
I want to improve how assets are transferred between grids in the Hypergrid. Currently there are two ways this is done: push and pull. In both cases, HGUuidGatherer is used to find all the assets that are embedded in the top-level asset. The Pull operation is efficient because it won't load from

Re: [Opensim-dev] Optimize pushing assets to other grids

2014-03-30 Thread Oren Hurvitz
It's already possible to know which assets are on the server by performing GETs, so this method doesn't change the security situation. -- View this message in context: http://opensim-dev.2196679.n2.nabble.com/Optimize-pushing-assets-to-other-grids-tp7579093p7579096.html Sent from the

Re: [Opensim-dev] Stop saving SculptData in serialized SceneObjects

2014-03-28 Thread Oren Hurvitz
I ended up just removing 'SculptData' from the XML format: http://opensimulator.org/mantis/view.php?id=7038#c25621 -- View this message in context: http://opensim-dev.2196679.n2.nabble.com/Stop-saving-SculptData-in-serialized-SceneObjects-tp7579079p7579092.html Sent from the opensim-dev

[Opensim-dev] Stop saving SculptData in serialized SceneObjects

2014-03-27 Thread Oren Hurvitz
When a prim is a Sculptie or Mesh, the prim's shape contains a field called SculptData which stores the full mesh or texture (for sculpties). If the prim is serialized then the field SculptData is also serialized, which is a problem because it contains the entire contents of the mesh or texture.

Re: [Opensim-dev] Stop saving SculptData in serialized SceneObjects

2014-03-27 Thread Oren Hurvitz
The mesh/texture data is needed only if the prim is resized or otherwise edited as you've described. But in the vast majority of cases, prims are just viewed. We should optimize for the common case, i.e. release the memory. If the asset is needed again it will be loaded from the cache, which is

Re: [Opensim-dev] Prebuild versioning

2014-03-26 Thread Oren Hurvitz
As you've said, I followed the existing practice, which was to increase the version number locally. We've been using a locally-versioned Prebuild for a long time. There's no harm in changing the versioning practice next time, although I don't know if adding a textual string will work. BTW I tried

Re: [Opensim-dev] Changes to OpenSim.log, etc, log config

2014-03-26 Thread Oren Hurvitz
This doesn't change the amount of data logged; it just makes it easier to use since the files are smaller, and it makes finding events of interest easier. Your objection is to the *number* of files? I admit that this wasn't a concern for me because I do save the logs in a log subdirectory. So how

Re: [Opensim-dev] How many sides does a tapered torus have?

2014-03-26 Thread Oren Hurvitz
Yikes! How can I know these things in order to fix GetNumberOfSides()? If shape.pathTaperX0 or shape.pathTaperY0 then +1 side? But I think this doesn't actually happen unless Radius is also 0. I really don't understand how these parameters interact. Maybe we should just drop GetNumberOfSides()

Re: [Opensim-dev] Detaching mesh objects causes the region set send full asset data -- including geometry -- to the asset server

2014-03-26 Thread Oren Hurvitz
This should have gone in the Mantis, so that we can keep track of the status of this bug. I tested this scenario and the asset data wasn't sent. See my comment in http://opensimulator.org/mantis/view.php?id=7038 . -- View this message in context:

Re: [Opensim-dev] Changes to OpenSim.log, etc, log config

2014-03-26 Thread Oren Hurvitz
I included a comment in the config files (e.g., OpenSim.exe.config) that shows how to enable log-rolling. Just modify a few lines in the file. It would be a lot of work to implement this as an option in OpenSim because it would require using the log4net API to change how it works at runtime. It's

Re: [Opensim-dev] Prebuild versioning

2014-03-26 Thread Oren Hurvitz
I'm a bit confused by your question because my patches are *already* in the OpenSim Git, so I don't know what you mean by Would it make sense to merge these [changes]. Merge them with what? Anyhoo, if you're up to resurrecting Prebuild in Github then more power to you! My patches to Prebuild are,

[Opensim-dev] New OpenSim debugging aids

2014-03-25 Thread Oren Hurvitz
I added to Git master a couple of features that help in debugging OpenSim. First, I improved logging of HTTP activity significantly. This isn't a new feature, but there are numerous changes which make it more useful. These include: logging responses (not just requests); fixed cases where logging

[Opensim-dev] How many sides does a tapered torus have?

2014-03-25 Thread Oren Hurvitz
I found a bug in OpenSim: it doesn't count correctly the number of sides in a Torus if the torus uses tapering. How to reproduce the problem: 1. Create a torus, and set TaperY=0.85 and Radius=0.7. 2. Change the prim's texture. The texture will change momentarily and immediately revert to the

Re: [Opensim-dev] Proposal: notify clients when Robust changes a user's inventory

2014-03-24 Thread Oren Hurvitz
Implemented in Git master df9845a2. The Suitcase is now created automatically when the user logs-in. -- View this message in context: http://opensim-dev.2196679.n2.nabble.com/Proposal-notify-clients-when-Robust-changes-a-user-s-inventory-tp7579018p7579041.html Sent from the opensim-dev mailing

Re: [Opensim-dev] Proposal: notify clients when Robust changes a user's inventory

2014-03-14 Thread Oren Hurvitz
Zadark, you make a good point! Users need the My Suitcase folder available to them if they want to take anything when they travel to another grid. So it's better to create it in advance rather than on-demand (as today). Since this is obviously a Good Thing (tm), I'm going to implement it. I just

[Opensim-dev] Proposal: notify clients when Robust changes a user's inventory

2014-03-13 Thread Oren Hurvitz
Sometimes Robust makes changes to a user's inventory on its own initiative (i.e., not as the result of a client request). E.g., this happens when it creates the My Suitcase folder. When that happens we should notify the client, so that the new item or folder will be visible in the inventory window

Re: [Opensim-dev] Proposal: notify clients when Robust changes a user's inventory

2014-03-13 Thread Oren Hurvitz
Yes, this would be stateless. If the user's client can't be found then the message would be dropped. The logic to find the user's client, especially in the presence of HG, is very complicated. I wouldn't want to replicate it, and of course we wouldn't want duplicate code. There are only two

Re: [Opensim-dev] How to find a user's UUID on another grid?

2013-12-06 Thread Oren Hurvitz
Thanks, just what I was looking for! I notice that IUserAgentService has a comment, HG1.5 only. I assume that means HG1.5 or higher, i.e. that it will work with HG 2.0 as well, right? -- View this message in context:

[Opensim-dev] How to find a user's UUID on another grid?

2013-12-05 Thread Oren Hurvitz
Is there a way to find a user's UUID on another grid, using their name? I'm looking for a Hypergrid version of IUserAccountService.GetUserAccount(): UserAccount GetUserAccount(string serverURL, UUID scopeID, string FirstName, string LastName); OSGrid has a web service that does this, called

[Opensim-dev] Fixing Unknown User problems using the database

2013-09-24 Thread Oren Hurvitz
I started using Hypergrid recently, and came across the Unknown User problem. So far I've seen UserUMMAU4 and UserUMMTGUN9. I poked around to see if I can do anything about this, and it seems that the mapping of UUID - Name is stored in memory only (UserManagementModule.m_UserCache). This has the

Re: [Opensim-dev] Fixing Unknown User problems using the database

2013-09-24 Thread Oren Hurvitz
Maybe we should go a step further: create a global shared user directory. This would eliminate 100% of Unknown User problems, and would also allow IM to work regardless of which grids/simulators the users are on. The shared directory could be implemented without a central service, by having

Re: [Opensim-dev] Fixing Unknown User problems using the database

2013-09-24 Thread Oren Hurvitz
Regarding GUN9: the viewer actually showed just (waiting), and when I debugged this I saw that the name that was chosen was GUN9 but there was code that prevented sending this to the viewer. -- View this message in context:

Re: [Opensim-dev] Sending extra prim properties to clients

2013-02-07 Thread Oren Hurvitz
That's ok. The amount of code I have written in my life which I had to throw away would be enough to run the space shuttle. -- View this message in context: http://opensim-dev.2196679.n2.nabble.com/Sending-extra-prim-properties-to-clients-tp7578537p7578539.html Sent from the opensim-dev

Re: [Opensim-dev] Setting a single child prim to Phantom

2013-02-06 Thread Oren Hurvitz
To anyone who's following this thread: Melanie contributed code that allows setting a prim's Physics Shape Type to None, which has a similar effect to making it phantom. Therefore, it's no longer necessary to make single prims phantom. -- View this message in context:

Re: [Opensim-dev] Dynamic attributes

2013-02-06 Thread Oren Hurvitz
I used XML serialization because it preserves more type information than JSON. For example, XML serialization preserves the OSD types 'url' and 'uuid' whereas JSON serialization changes them into 'string'. -- View this message in context:

[Opensim-dev] Sending extra prim properties to clients

2013-02-06 Thread Oren Hurvitz
Hi, Recently Melanie added support for the Extra Physics Parameters, such as Physics Shape Type and Density. I implemented support for receiving these parameters from the client. However, I'm not sure how to send these parameters *back* to the client, so right now on the client it looks as if the

Re: [Opensim-dev] How does the viewer know the user's maturity rating

2013-02-04 Thread Oren Hurvitz
Did you say that you CAN change that flag in the viewer? How? I tested on my own region, and although I can change the REGION's maturity level, I can't change the avatar's maturity level in the Avatar Preferences dialog. Which viewer are you using? Also: could you include links to the places

Re: [Opensim-dev] How does the viewer know the user's maturity rating

2013-02-04 Thread Oren Hurvitz
Yes, I know where to find this setting. But when I try to change it, Firestorm says that I'm not allowed. That's the problem that I'm trying to solve. -- View this message in context:

Re: [Opensim-dev] How does the viewer know the user's maturity rating

2013-02-04 Thread Oren Hurvitz
Ah, I see it. Thanks! -- View this message in context: http://opensim-dev.2196679.n2.nabble.com/How-does-the-viewer-know-the-user-s-maturity-rating-tp7578517p7578526.html Sent from the opensim-dev mailing list archive at Nabble.com. ___ Opensim-dev

Re: [Opensim-dev] Setting a single child prim to Phantom

2013-02-03 Thread Oren Hurvitz
I just tried this and it doesn't work. I can set a prim's Physics Shape Type to None, but it still collides. -- View this message in context: http://opensim-dev.2196679.n2.nabble.com/Setting-a-single-child-prim-to-Phantom-tp7578513p7578515.html Sent from the opensim-dev mailing list archive at

[Opensim-dev] How does the viewer know the user's maturity rating

2013-02-03 Thread Oren Hurvitz
Hi, It looks like OpenSim doesn't tell the viewer which maturity ratings a user is allowed to use. I'm using the latest Firestorm, and in the Avatar Preferences dialog I try to change the value of the listbox I want to access content rated from General to Moderate or Adult, but Firestorm says

[Opensim-dev] Setting a single child prim to Phantom

2013-02-02 Thread Oren Hurvitz
I have recently become aware that there's an entire cottage industry of scripts whose purpose is to make a single prim in a linkset phantom. These scripts are needed because: a) Usually the phantom flag is set for an entire linkset, so it's necessary to use a script to change the flag for a single

Re: [Opensim-dev] Dynamic attributes

2013-01-25 Thread Oren Hurvitz
Ok, great. I hope all goes well and this will be added to master soon. What do you mean by put the code in for MSSQL? The code already supports MySQL, MSSQL and SQLite. Oren -- View this message in context: http://opensim-dev.2196679.n2.nabble.com/Dynamic-attributes-tp7578464p7578470.html

Re: [Opensim-dev] Dynamic attributes

2013-01-22 Thread Oren Hurvitz
I have submitted the patch: http://opensimulator.org/mantis/view.php?id=6510 Oren -- View this message in context: http://opensim-dev.2196679.n2.nabble.com/Dynamic-attributes-tp7578464p7578467.html Sent from the opensim-dev mailing list archive at Nabble.com.

[Opensim-dev] Dynamic attributes

2013-01-21 Thread Oren Hurvitz
In the interest of clarity I'm starting a new thread for this topic. Previous discussion can be found here: http://opensim-dev.2196679.n2.nabble.com/IRegisterInterface-for-extending-scene-entities-td7578406.html Justin, the dynamic attributes branch allows storing attributes both in Prims and in

Re: [Opensim-dev] IRegisterInterface for extending scene entities

2013-01-18 Thread Oren Hurvitz
Sorry, I've been busy with other things so I haven't had a chance to continue with the attributes, but I will get to them in a few days. I'm fine with mandating that all clients must store their data in an OSDMap: this is similar to requiring that programs have their own folder in the filesystem,

Re: [Opensim-dev] IRegisterInterface for extending scene entities

2013-01-04 Thread Oren Hurvitz
The typing problem is already solved since the dynamic attributes are implemented using OSD. Your proposal is much more complicated than the currently proposed attributes, and I don't want to suppress a good solution in favor of a perfect solution that might never be implemented (I assume you're

Re: [Opensim-dev] IRegisterInterface for extending scene entities

2013-01-03 Thread Oren Hurvitz
For namespacing we can take a pointer from MIME types: 1. Keys used by core OpenSim will have no prefix, e.g. media or prop.attr. 2. Keys created outside core OpenSim will use the vnd. prefix, followed by the name of the creating entity. For example: vnd.acme.myprop. We should stick to storing

Re: [Opensim-dev] IRegisterInterface for extending scene entities

2013-01-02 Thread Oren Hurvitz
I just looked at the dynamic-attributes branch and it looks extremely useful! I was just now considering ways to attach data to scene objects, and this would fit the bill exactly. So I'd like to bring the dynamic attributes code over to the master branch (updating it as needed), plus add

Re: [Opensim-dev] Multi-region OAR format

2012-07-20 Thread Oren Hurvitz
On Fri, Jul 20, 2012 at 4:15 PM, Robert L martin [via opensim-dev] ml-node+s2196679n7578165...@n2.nabble.com wrote: okay so if i wanted to make an OAR for Bad Wolf Island with a total of nine regions it would have row 1 (south) Southwest, South center , South East row 2 (center) West Center,

Re: [Opensim-dev] Multi-region OAR format

2012-07-20 Thread Oren Hurvitz
There are two big advantages. First, sometimes a group of regions comprises a logical, indivisible unit. E.g., RPG groups often create their world using many regions. Saving and loading their data in a single file is far more convenient than having to load each OAR separately. This is my

Re: [Opensim-dev] Multi-region OAR format

2012-07-20 Thread Oren Hurvitz
.nabble.com wrote: On Fri, Jul 20, 2012 at 9:38 AM, Oren Hurvitz [hidden email]http://user/SendEmail.jtp?type=nodenode=7578168i=0 wrote: If I understand you correctly, you're asking for the load-oar command to create regions where none existed before. It doesn't do that currently, and I don't

Re: [Opensim-dev] Multi-region OAR format

2012-07-20 Thread Oren Hurvitz
That's an interesting idea. I'm wondering whether this would be slower, however, since OpenSim would have to untar all the data twice: once in the outer OAR, and again in the inner OARs. It might also take twice the RAM, depending on how the untar library works. -- View this message in context:

[Opensim-dev] Multi-region OAR format

2012-07-19 Thread Oren Hurvitz
I want to extend the OAR format to support multiple regions. That's a significant change, so I'd like to get some feedback about the design before diving in. A multi-region OAR will store each region in its own subdirectory. Only the assets will remain in a top-level directory, to avoid storing

Re: [Opensim-dev] Multi-region OAR format

2012-07-19 Thread Oren Hurvitz
The table of contents in archive.xml defines the spatial relationship of the regions. It can represent any rectangular shape. Holes are represented by an empty region/ element. -- View this message in context:

Re: [Opensim-dev] Avatar sinking into the terrain

2012-07-18 Thread Oren Hurvitz
Thanks for this reply. It's sure something to think about, but I'm still hoping for a solution that doesn't require debugging ODE itself. Perhaps BulletSim will be the, um, silver bullet... -- View this message in context:

[Opensim-dev] Avatar sinking into the terrain

2012-07-16 Thread Oren Hurvitz
Hi, I want to bring up again the problem of avatars sinking into the terrain. This problem has been discussed since at least 2008. Here are some previous bug reports: http://opensimulator.org/mantis/view.php?id=2905 (starts as another problem, but morphs into the terrain problem)

Re: [Opensim-dev] Some features work only with the Active group

2012-05-01 Thread Oren Hurvitz
My initial post in this thread was mistaken: OpenSim *does* allow group features even if the user is just a member of the group (but it's not the active group). The only problem is that getAgentGroupMembership() has a bug if the user has never set *any* group as his active group. So that's what

Re: [Opensim-dev] Some features work only with the Active group

2012-05-01 Thread Oren Hurvitz
I'm not changing the behavior of groups. I'm only going to fix one function in XmlRpcGroups, which isn't working correctly in an edge case. -- View this message in context: http://opensim-dev.2196679.n2.nabble.com/Some-features-work-only-with-the-Active-group-tp7512633p7516110.html Sent from the

[Opensim-dev] Some features work only with the Active group

2012-04-30 Thread Oren Hurvitz
Hi, A user can belong to many groups, but only one of these groups can be active. Some group features, such as Notices, work with all the members of the group. But other features, such as rezzing on group-owned land, are only permitted if the user activates that group. I was wondering: why is

Re: [Opensim-dev] Some features work only with the Active group

2012-04-30 Thread Oren Hurvitz
I'm using Flotsam's XmlRpcGroups. In xmlrpc.php, I see that getAgentGroupMembership() only returns True if the queried group is the user's active group. I think this is a mistake: if we change it to return True for any group membership, many features would start working as expected. That would

Re: [Opensim-dev] Some features work only with the Active group

2012-04-30 Thread Oren Hurvitz
The situation is better than I thought. The problem only happens if a user has never set an active group, because in that case the user doesn't have an entry in the osagent table. If the user did set an active group, no matter what it is, then group features work as expected (i.e., the user

[Opensim-dev] Remove check for IsGod in some OSSL functions

2012-04-13 Thread Oren Hurvitz
Hi, There are 3 OSSL functions that only work if the requester is a God: * osSetRegionWaterHeight * osSetRegionSunSettings * osSetEstateSunSettings I believe these checks should be removed, since estate managers should be able to call these functions. OpenSim now allows specifying that only

[Opensim-dev] Fix OSSL threat level checks

2012-04-13 Thread Oren Hurvitz
Hi, There are two OSSL functions that check the wrong string for their threat level: osParseJSONNew() - checks osParseJSON osNpcStopMoveToTarget() - checks osNpcStopMoveTo I was going to fix this, but then I thought that perhaps this was done so that the same threat level can be used for

Re: [Opensim-dev] Remove check for IsGod in some OSSL functions

2012-04-13 Thread Oren Hurvitz
While I'm on the subject of OSSL permissions, here's one more suggestion: if an OSSL function's Allowed setting is set to ESTATE_MANAGER then all the estate managers *except* for the owner are allowed to call that function. I think that isn't what users expect: since the list of estate managers

[Opensim-dev] Change parcel permission handling

2012-04-13 Thread Oren Hurvitz
I found another place that should be changed: if the permission level is set to PARCEL_OWNER then we should check World.Permissions.CanEditParcelProperties() instead of just checking if this is the parcel's owner. That would allow the function to be called by Gods, Estate Managers, and possibly

Re: [Opensim-dev] Remove check for IsGod in some OSSL functions

2012-04-13 Thread Oren Hurvitz
Currently CheckThreatLevel() doesn't check for God at all. It should probably allow gods to call any function, regardless of its threat level. There is no other change necessary to OSSL in order to support administrators, since there are already permission checks for estate owners and managers.

Re: [Opensim-dev] Change parcel permission handling

2012-04-13 Thread Oren Hurvitz
The decision whether to allow the parcel owner to call a function or not is set by whoever setup OpenSim.ini: they can choose to allow PARCEL_OWNER, or only ESTATE_OWNER. If they decided to allow the PARCEL_OWNER then we should also allow the estate manager/owner to call that function. In

Re: [Opensim-dev] Remove check for IsGod in some OSSL functions

2012-04-13 Thread Oren Hurvitz
About gods: ok. I don't allow any users to be gods for security reasons, but I had assumed that if someone *does* have god permissions then they should be able to do anything. Since that is not the case, I won't be making any changes related to gods. I assume by -1 on changing existing functions

Re: [Opensim-dev] Change parcel permission handling

2012-04-13 Thread Oren Hurvitz
I thought that estate managers do have full permissions over all of their parcels. After all, they can choose who *gets* the parcels. The solution you suggested already exists: it is possible to specify multiple permissions for OSSL functions. So that's off the table. It's still confusing to have

Re: [Opensim-dev] Walk animation doesn't stop

2012-04-12 Thread Oren Hurvitz
I found the problem. The walking script is notified whenever the user presses or releases a movement key, e.g. the Forward key. When that happens, the script checks which movement animation the avatar is currently using, and starts or stops the custom animation according to whether the movement

[Opensim-dev] Walk animation doesn't stop

2012-04-10 Thread Oren Hurvitz
Hi, My avatar has a walk animation. When I use an arrow key to walk, and then release the key, the avatar stays put but the walk animation remains active. If I press the up or down arrow keys then the animation stops. I'm using OpenSim 0.7.3-post-fixes. This didn't happen in OpenSim 0.7.2. If I

Re: [Opensim-dev] HTTP Server source code

2011-10-19 Thread Oren Hurvitz
Hi Diva, Any updates on the source code for HttpServer? If you don't have time to add it to Subversion or Git then could you zip up whatever you have and post it here? I would like to update my copies of OpenSim in order to incorporate my bugfix (the one from the beginning of this thread), but I

Re: [Opensim-dev] HTTP Server source code

2011-10-13 Thread Oren Hurvitz
Justin, I saw the Mono patch, but indeed it's for a different problem. -- View this message in context: http://opensim-dev.2196679.n2.nabble.com/HTTP-Server-source-code-tp6883843p6887768.html Sent from the opensim-dev mailing list archive at Nabble.com.

[Opensim-dev] HTTP Server source code

2011-10-12 Thread Oren Hurvitz
Hi, Where is the source code for the HTTP Server used by OpenSim? All I can find is the binary version, HttpServer_OpenSim.dll. I believe I found a bug in this library and I would like to fix it. Oren -- View this message in context:

Re: [Opensim-dev] HTTP Server source code

2011-10-12 Thread Oren Hurvitz
Is it this one? - http://webserver.codeplex.com/ If so then it seems the version we're using in OpenSim is very old. The part that contains my bug has been completely rewritten. How about I try to update the library to the current version? -- View this message in context:

Re: [Opensim-dev] HTTP Server source code

2011-10-12 Thread Oren Hurvitz
Hmm, what a sordid history this library has... I checked out the latest version from Subversion (thanks Nebadon) and applied my fix. It seems to work fine. The change is very simple: there's a certain uncaught exception that causes OpenSim/Robust to terminate. I just added a catch-all statement.

Re: [Opensim-dev] HTTP Server source code

2011-10-12 Thread Oren Hurvitz
Alternatively, zip up the HttpServer directory and send it to me; I'll recompile and update the DLL myself. If someone could give me write access to this Subversion repository I can try to update it, too -- perhaps I'll have better luck in this, since I had no problems performing a checkout. --

Re: [Opensim-dev] Updating attachment assets

2011-10-04 Thread Oren Hurvitz
I'm actually adding deduplication right now, although we store the assets in our cloud infrastructure and not on disk. My motivation for this thread was the problem I've seen with attachments. All of our avatars (on Kitely) have an attachment with a Walk script. I've seen that often when viewers

Re: [Opensim-dev] Updating attachment assets

2011-10-03 Thread Oren Hurvitz
Thanks for that info! Indeed it's unsafe to delete assets in the scenario that I've described. It looks like it's not safe to delete assets at all (except for trivial assets such as map tiles) unless we add some form of reference-counting or garbage collection, since any asset might be in use in

[Opensim-dev] Updating attachment assets

2011-10-02 Thread Oren Hurvitz
Occasionally, OpenSim updates the asset of an attachment. This is done in AttachmentsModule.UpdateKnownItem(). For example, this is done whenever the attachment is detached from the avatar. I have a couple of questions about this: 1. A new asset is created, but the old asset is not deleted; it

[Opensim-dev] Wiki documentation of plugins

2011-09-19 Thread Oren Hurvitz
I added a page to the wiki to describe the different techniques used in OpenSim to load plugins. If there are any mistakes then please let me know, or edit the page directly. In particular, I'm curious about the seemingly unused extension points: are they really unneeded, or have I missed where

Re: [Opensim-dev] Proposal: cache compiled scripts across server restarts

2011-06-21 Thread Oren Hurvitz
Ok, I implemented this according to the second proposal (the more limited one). Patch submitted: http://opensimulator.org/mantis/view.php?id=5557 -- View this message in context:

[Opensim-dev] Proposal: cache compiled scripts across server restarts

2011-06-19 Thread Oren Hurvitz
): CommonCompiler_compiled_14d3d7a9-0e3b-456d-8f09-54a31b5b2a22_94d3076.dll Any thoughts? -- Oren Hurvitz VP RD Kitely Ltd. ___ Opensim-dev mailing list Opensim-dev@lists.berlios.de https://lists.berlios.de/mailman/listinfo/opensim-dev

Re: [Opensim-dev] Proposal: cache compiled scripts across server restarts

2011-06-19 Thread Oren Hurvitz
Cool. Well, about not deleting the scripts: my proposal combined both a mechanism (don't delete the scripts) and a policy (don't delete if the version isn't X). How about I implement only the mechanism, and leave the policy to the sim owner? So, I would add a configuration option such as this