diff --git a/repository.lsl b/repository.lsl index 0530deb..e199767 100644 --- a/repository.lsl +++ b/repository.lsl @@ -3,8 +3,14 @@ integer CHANNEL = -54321; integer pin; regenerate_pin() { - // TODO Generate a random PIN - pin = 1234; + /* Generate a pseudo-random number to use as a PIN. */ + string md5 = "seed"; + integer count = 10; + while(count--) + { + md5 = llMD5String(md5 + (string)llGetUnixTime() + (string)llGetTime(), 0x5EED); + } + pin = (integer)("0x" + llGetSubString(md5, 0, 7)); } integer module_is_available(string module)