• All submissions to this site are governed by Second Life Project Contribution Agreement. By submitting patches and other information using this site, you acknowledge that you have read, understood, and agreed to those terms.
Issue Details (XML | Word | Printable)

Key: SVC-4898
Type: Bug Bug
Status: Open Open
Priority: Normal Normal
Assignee: Unassigned
Reporter: Solo Mornington
Votes: 0
Watchers: 0
Operations

If you were logged in you would be able to see more operations.
2. Second Life Service - SVC

http server: No Available URL After Moving Prim Across Sim Boundary

Created: 07/Oct/09 11:42 AM   Updated: 13/Oct/09 11:58 AM
Return to search
Component/s: LSL HTTP
Affects Version/s: 1.30 Server
Fix Version/s: None

Environment:
Snowglobe 1.1.2 (2584) Jul 31 2009 18:03:58 (Snowglobe Release)
Release Notes

Built with GCC version 40001

You are at 282876.9, 265558.7, 75.5 in Farstone located at sim4574.agni.lindenlab.com (216.82.54.224:12035)
Second Life Server 1.30.1.135015
Release Notes

CPU: Dual i386 (Unknown) (2530 MHz)
Memory: 4096 MB
OS Version: Darwin 9.8.0 Darwin Kernel Version 9.8.0: Wed Jul 15 16:55:01 PDT 2009; root:xnu-1228.15.4~1/RELEASE_I386 i386
Graphics Card Vendor: NVIDIA Corporation
Graphics Card: NVIDIA GeForce 9600M GT OpenGL Engine
OpenGL Version: 2.0 NVIDIA-1.5.48

libcurl Version: libcurl/7.16.3 OpenSSL/0.9.7l zlib/1.2.3
J2C Decoder Version: KDU
Audio Driver Version: FMOD version 3.750000
LLMozLib Version: [LLMediaImplLLMozLib] - 2.01.27404 (Mozilla GRE version 1.8.1.21_0000000000)
Packets Lost: 67/387442 (0.0%)
Issue Links:
Duplicate
 
Relates
 


 Description  « Hide
Rez a prim. Put the following script into it. It will tell you a URL. Put the URL in your web browser and get back 'Hello world!'

Move the prim across a sim boundary. The changed event will cause it to request another URL, but none is forthcoming. Note that llGetFreeURLs() returns 0, even though there are URLs available.

Reset the script. The script will still report 0 URLs available, and the request for a URL will fail.

Repeat the whole thing over again, this time touching the prim before moving it across the boundary (causing it to release its URL). After crossing the boundary, the script can't request a new URL.

Similarly, no script in that prim will be able to request a URL. Delete the script and replace it with a fresh one, and it won't be able to request a URL. The prim is locked out of the URL process.

The script is just a few additions to the sample code on the wiki:

string gURL;

default
{
    state_entry()
    {
        llSay(0,"URL pool count: " + (string)llGetFreeURLs());
        llRequestURL();
    }
 
    changed(integer c)
    {
        // changes that force URL to change
        if (c & (CHANGED_REGION | CHANGED_REGION_START | CHANGED_TELEPORT))
        {
            llReleaseURL(gURL);
            llSay(0,"URL pool count: " + (string)llGetFreeURLs());
            llRequestURL();
        }
    }

    touch_start(integer foo)
    {
        llReleaseURL(gURL);
    }
 
    http_request(key id, string method, string body)
    {
        if (method == URL_REQUEST_GRANTED)
        {
            gURL = body;
            llSay(0,"URL: " + gURL);
        }
        else if (method == URL_REQUEST_DENIED)
        {
            llSay(0, "Something went wrong, no url. " + body);
        }
        else if (method == "GET")
        {
            llHTTPResponse(id,200,"Hello World!");
        }
        else
        {
            llHTTPResponse(id,405,"Unsupported Method");
        }
    }
}


 All   Comments   Change History      Sort Order: Ascending order - Click to sort in descending order
Solo Mornington made changes - 07/Oct/09 11:43 AM
Field Original Value New Value
Link This issue Relates to SVC-1086 [ SVC-1086 ]
Ellla McMahon made changes - 07/Oct/09 12:13 PM
Link This issue Relates to SVC-4871 [ SVC-4871 ]
Imaze Rhiano made changes - 09/Oct/09 06:02 AM
Link This issue duplicates SVC-4871 [ SVC-4871 ]
Solo Mornington made changes - 13/Oct/09 11:58 AM
Link This issue Relates to SVC-4791 [ SVC-4791 ]