After a recent upgrade from 1.8.2p2 to 1.8.2p6, I noticed broken behavior
from the LASTIP attribute. In particular, it is no longer set when
characters create.
I believe the problem was introduced in 1.8.2p4 when editing the make_player
function in player.c. The patch includes the following lines:
! (void) atr_add(player, "LASTSITE", host, GOD, NOTHING);
(void) atr_add(player, "LASTIP", ip, GOD, NOTHING);
! (void) atr_add(player, "LASTFAILED", " ", GOD, NOTHING);
---
! (void) atr_add(player, "LASTSITE", host, GOD, 0);
(void) atr_add(player, "LASTIP", ip, GOD, NOTHING);
! (void) atr_add(player, "LASTFAILED", " ", GOD, 0);
I'm not sure what the change from NOTHING to 0 did for the LASTSITE and
LASTFAILED attributes, but since they behave as they should, it seems that
the LASTIP line should also have been changed to 0.
Changing NOTHING to 0 on the middle of these three lines on my local copy
seems to fix the bug. I'll leave it to y'all to determine if that is
actually the right thing to do.
--
Dan