@@ -170,6 +170,7 @@ struct nip_localaddr_t
170170 struct sockaddr_storage netmask;
171171};
172172
173+ // Used for Sys_IsLANAddress
173174static nip_localaddr_t localIP[ MAX_IPS ];
174175static int numIP;
175176
@@ -887,30 +888,32 @@ bool Sys_IsLANAddress( const netadr_t& adr )
887888 return false ;
888889}
889890
890- /*
891- ==================
892- Sys_ShowIP
893- ==================
894- */
895- void Sys_ShowIP ()
891+ class ShowIPCommand : public Cmd ::StaticCmd
896892{
897- int i;
898- char addrbuf[ NET_ADDR_STR_MAX_LEN ];
893+ public:
894+ ShowIPCommand () : StaticCmd( " showip " , Cmd::SERVER, " show addresses of network interfaces " ) {}
899895
900- for ( i = 0 ; i < numIP; i++ )
896+ void Run ( const Cmd::Args & ) const override
901897 {
902- Sys_SockaddrToString ( addrbuf, sizeof ( addrbuf ), ( struct sockaddr * ) &localIP[ i ].addr );
898+ int i;
899+ char addrbuf[ NET_ADDR_STR_MAX_LEN ];
903900
904- if ( localIP[ i ]. type == netadrtype_t ::NA_IP )
901+ for ( i = 0 ; i < numIP; i++ )
905902 {
906- Log::Notice ( " IP: %s" , addrbuf );
907- }
908- else if ( localIP[ i ].type == netadrtype_t ::NA_IP6 )
909- {
910- Log::Notice ( " IP6: %s" , addrbuf );
903+ Sys_SockaddrToString ( addrbuf, sizeof ( addrbuf ), ( struct sockaddr * ) &localIP[ i ].addr );
904+
905+ if ( localIP[ i ].type == netadrtype_t ::NA_IP )
906+ {
907+ Print ( " IP: %s" , addrbuf );
908+ }
909+ else if ( localIP[ i ].type == netadrtype_t ::NA_IP6 )
910+ {
911+ Print ( " IP6: %s" , addrbuf );
912+ }
911913 }
912914 }
913- }
915+ };
916+ static ShowIPCommand showipRegistration;
914917
915918// =============================================================================
916919
0 commit comments