int aw_world_ejection_next (void)

DESCRIPTION

Queries information about the next ejection in the world ejection database.

CALLBACK

AW_CALLBACK_WORLD_EJECTION

NOTES

Only instances owned by the world caretaker may use aw_world_ejection_next.

The attributes AW_EJECTION_TYPE and AW_EJECTION_ADDRESS specify the previous ejection. See aw_world_ejection_add for a complete description of these attributes and how to use them.

To scan the entire ejection database, set AW_EJECTION_TYPE to AW_EJECT_BY_ADDRESS and AW_EJECTION_ADDRESS to 0 and call aw_world_ejection_next repeatedly until it fails.

If aw_world_ejection_next succeeds, the following attributes are returned:

AW_EJECTION_TYPE The ejection type
AW_EJECTION_ADDRESS The (next) blocked address
AW_EJECTION_CREATION_TIME When the ejection was first created
AW_EJECTION_EXPIRATION_TIME When the ejection expires
AW_EJECTION_COMMENT Additional text information (optional)

EXAMPLE

/* list all IP addresses currently blocked from entering the world */

aw_int_set (AW_EJECTION_TYPE, AW_EJECT_BY_ADDRESS);
aw_int_set (AW_EJECTION_ADDRESS, 0);
while (!aw_world_ejection_next ()) {
  int address;
  address = aw_int (AW_EJECTION_ADDRESS);
  if (aw_int (AW_EJECTION_TYPE) == AW_EJECT_BY_ADDRESS)
    printf ("%-15s %d\n", inet_ntoa (*(struct in_addr*) &address),
      aw_int (AW_EJECTION_EXPIRATION));
}

SEE ALSO

aw_world_ejection_add
aw_world_ejection_delete
aw_world_ejection_lookup
aw_world_ejection_previous