Welcome to the Second Life Forums Archive

These forums are CLOSED. Please visit the new forums HERE

llRemoteLoadScriptPin() documentation incorrect?

Apotheus Silverman
I write code.
Join date: 17 Nov 2003
Posts: 416
11-23-2004 16:16
I have been testing llRemoteLoadScriptPin() and it seems to me that it only works if the owner of the object has modify rights to the item, every item in the object's contents, and all its child prims' contents.

This is considerably different than "the owner must have modify rights on the object". In fact, it makes the function useless for anything except fully open-source objects if this is true.

Is there something I am doing wrong?


Sender script code:
CODE
default
{
state_entry()
{
llSay(0, "blah");
}

touch_start(integer total_number)
{
llSay(0, "updating...");
llRemoteLoadScriptPin("984c06ab-ce8d-1def-b062-56fc203bba92", "Test Script", 32984724, TRUE, 0);
llSay(0, "updated...");
llRemoteLoadScriptPin("984c06ab-ce8d-1def-b062-56fc203bba92", "Test Script", 32984724, TRUE, 0);
llSay(0, "updated again...");
llRemoteLoadScriptPin("984c06ab-ce8d-1def-b062-56fc203bba92", "Test Script", 32984724, TRUE, 0);
llSay(0, "updated again...");

}
}


Receiver object code:
CODE
default
{
state_entry()
{
llSetRemoteScriptAccessPin(32984724);
llSay(0, "llSetRemoteScriptAccessPin reset");
}

touch_start(integer total_number)
{
llSay(0, (string)llGetKey());
}
}
_____________________
Apotheus Silverman
Shop SL on the web - SLExchange.com

Visit Abbotts Aerodrome for gobs of flying fun.
Kurt Zidane
Just Human
Join date: 1 Apr 2004
Posts: 636
11-23-2004 18:17
Have you tried setting the ablity for 3rd partys to drop thing into the scripted objects inventory? I can't rember the name of the function call, but it can be set.
Lance LeFay
is a Thug
Join date: 1 May 2003
Posts: 1,488
11-23-2004 20:21
Okay, I've been away too long. What the frig does llRemoteLoadScriptPin do? Load a script from another object?
_____________________
"Hoochie Hair is high on my list" - Andrew Linden
"Adorable is 'they pay me to say you are cute'" -Barnesworth Anubis
blaze Spinnaker
1/2 Serious
Join date: 12 Aug 2004
Posts: 5,898
11-24-2004 02:33
IMO - llRemoteLoadScriptPin() is probably one of the most important function in the entire API.

With it you can-

- create object 'classes'
- dynamically control the run time behavior of objects or late binding
- automatically update your software when you discover bugs and other problems

Limitations to this routine are problematic. For example, you can not use it to upgrade the scripts in the inventory of an object, even though you can get the key, have full ownership / mod rights.
_____________________
Taken from The last paragraph on pg. 16 of Cory Ondrejka's paper "Changing Realities: User Creation, Communication, and Innovation in Digital Worlds :

"User-created content takes the idea of leveraging player opinions a step further by allowing them to effectively prototype new ideas and features. Developers can then measure which new concepts most improve the products and incorporate them into the game in future patches."
Lance LeFay
is a Thug
Join date: 1 May 2003
Posts: 1,488
11-24-2004 04:18
Ooooh.... I like.
Too bad they didnt put that in when I was around >_0
_____________________
"Hoochie Hair is high on my list" - Andrew Linden
"Adorable is 'they pay me to say you are cute'" -Barnesworth Anubis
Apotheus Silverman
I write code.
Join date: 17 Nov 2003
Posts: 416
11-24-2004 09:43
Yes, it allows you to "push" a script into an object from another object within the same sim. The documentation says the "receiver" object's owner must have modify permission on the object, but I am finding this to be slight incorrectly (but in a very important way).

For instance, it works find on objects I create and have full access to. If I give a "receiver" object to an alt account, where the alt has permission to modify the object, but not the scripts inside, it just doesn't work.

I am trying to create a system where I can remotely push script updates to objects I give to people, but for security purposes I absolutely cannot give them access to view and modify the scripts.

Just trying to get some official clarification on this...
_____________________
Apotheus Silverman
Shop SL on the web - SLExchange.com

Visit Abbotts Aerodrome for gobs of flying fun.
Lance LeFay
is a Thug
Join date: 1 May 2003
Posts: 1,488
11-24-2004 10:56
You have to perform the Calling of the Linden ritual before you get a response :P
_____________________
"Hoochie Hair is high on my list" - Andrew Linden
"Adorable is 'they pay me to say you are cute'" -Barnesworth Anubis
Moleculor Satyr
Fireflies!
Join date: 5 Jan 2004
Posts: 2,650
11-24-2004 11:12
I've run into this problem too, Apotheus.

Honestly, I don't think the modify requirement should exist at all.
_____________________
</sarcasm>
Evil Fool
"==" != "="
Join date: 30 Jul 2004
Posts: 110
11-24-2004 11:46
From: Moleculor Satyr
I've run into this problem too, Apotheus.

Honestly, I don't think the modify requirement should exist at all.


then people will start brute-forcing with this type of thing...

Idea behind this: load a script using the PIN, and the start param as the PIN.

If it does load, it will IM the pin to the owner, and bam, access to an object.

Also could be used if say, someone creates an object with a script that sets the pin... now he can come along and add scripts at any time... and who knows what could be done
blaze Spinnaker
1/2 Serious
Join date: 12 Aug 2004
Posts: 5,898
11-24-2004 17:59
One fix: If 3 tries are wrong the pin sets to 0.
_____________________
Taken from The last paragraph on pg. 16 of Cory Ondrejka's paper "Changing Realities: User Creation, Communication, and Innovation in Digital Worlds :

"User-created content takes the idea of leveraging player opinions a step further by allowing them to effectively prototype new ideas and features. Developers can then measure which new concepts most improve the products and incorporate them into the game in future patches."