# crypt()ic problem

"Jamal A. Wills" (jwills@thuntek.net)
Mon, 10 Jun 1996 13:39:27 PDT

- Messages sorted by:[ date ][ thread ][ subject ][ author ]

    Hello,

    I'm new to the list and to LambdaMOO.  I've compiled the LambdaMOO
    1.8.0p5 on a FreeBSD machine and passwords don't work.  When ever a
    character is created or a null password is changed, it's impossible to
    connect.

    I think I've tracked down the error to the connect verb.  I tested crypt
    and got the following:
    ;crypt("test")
    => "$1$Vj$pJmk9yRpWDONyIbzo/UJJ."
    ;crypt("test")
    => "$1$fz$J1Q5yZbOLvS66.WpiXR7O0"
    ;crypt("test", "Vj")
    => "$1$Vj$pJmk9yRpWDONyIbzo/UJJ."
    ;crypt("test", "fz")
    => "$1$fz$J1Q5yZbOLvS66.WpiXR7O0"
    ;crypt("test", "Vj")
    => "$1$Vj$pJmk9yRpWDONyIbzo/UJJ."

    In the connect verb I found:
    16:  if (is_clear_property(candidate, "password") || !$object_utils:isa(
     candidate, $player) || (typeof(candidate.password) == STR && (length(
     candidate.password) < 2 || strcmp(crypt({@args, ""}[2],
     candidate.password[1..2]), candidate.password))))

    I think this system has a slightly nonstandard form of crypt().  If I
    change candidate.password[1..2] to candidate.password[4..5] I think it
    should work, but I wanted to check with someone more familier with the
    language first (especially since this would make the code incompatable
    with other servers).

                           Making the future, today...
          Jamal Wills    Core Member   |   First Millennial Foundation
          www.millennial.org/~jwills   |       www.millennial.org
             jwills@millennial.org     |      rifle@millennial.org