Desc| Constate |Idle| Player | HostIP
----+-------------------+----+--------------+--------------------------
6| Playing | 0| Admin | fe80::ac0d:5d:fd9d:96c8
that was actually pretty easy... all the ban code and stuff seems to just use strings.
sam@shiny-dev:~/smaugfuss19/src$ diff comm.c /home/sam/original/smaugfuss19/src/comm.c
564c564
< struct sockaddr_in6 sa;
---
> struct sockaddr_in sa;
568c568
< if( ( fd = socket( AF_INET6, SOCK_STREAM, 0 ) ) < 0 )
---
> if( ( fd = socket( AF_INET, SOCK_STREAM, 0 ) ) < 0 )
598,599c598,599
< sa.sin6_family = AF_INET6;
< sa.sin6_port = htons( mudport );
---
> sa.sin_family = AF_INET;
> sa.sin_port = htons( mudport );
830a831,836
> /*
> * check for input from the dns
> */
> if( ( d->connected == CON_PLAYING || d->character != NULL ) && d->ifd != -1 && FD_ISSET( d->ifd, &in_set ) )
> process_dns( d );
>
971c977
< struct sockaddr_in6 sock;
---
> struct sockaddr_in sock;
1028c1034
< dnew->port = ntohs( sock.sin6_port );
---
> dnew->port = ntohs( sock.sin_port );
1037,1040c1043,1044
<
< char line[100];
< // mudstrlcpy( log_buf, inet_ntoa( sock.sin_addr ), MAX_STRING_LENGTH );
< mudstrlcpy( log_buf, inet_ntop( AF_INET6, &sock.sin6_addr, line, sizeof line ), sock.sin6_port );
---
>
> mudstrlcpy( log_buf, inet_ntoa( sock.sin_addr ), MAX_STRING_LENGTH );
1044,1061c1048,1056
<
<
< struct addrinfo *ai;
< struct addrinfo hints;
< memset( &hints, '\0', sizeof hints );
< hints.ai_flags = AI_PASSIVE;
< hints.ai_family = PF_UNSPEC; /* IPv4 or IPv6. */
<
< if ( getaddrinfo( NULL, "tcp", &hints, &ai ) != 0 ) {
< perror( "getaddrinfo: error" );
< return;
< }
<
< char hostBuffer[100];
< char servBuffer[100];
< getnameinfo( ai->ai_addr, ai->ai_addrlen, hostBuffer, sizeof hostBuffer, servBuffer, sizeof servBuffer, NI_NUMERICHOST | NI_NUMERICSERV );
<
< dnew->host = STRALLOC( hostBuffer );
---
> mudstrlcpy( buf, in_dns_cache( log_buf ), MAX_STRING_LENGTH );
>
> if( buf[0] == '\0' )
> resolve_dns( dnew, sock.sin_addr.s_addr );
> else
> {
> STRFREE( dnew->host );
> dnew->host = STRALLOC( buf );
> }
note.. i also removed the DNS resolver from this