56,8 → 56,8 |
|
/** Module entry point. |
* Reads command line parameters and starts listenning. |
* @param argc The number of command line parameters. Input parameter. |
* @param argv The command line parameters. Input parameter. |
* @param[in] argc The number of command line parameters. |
* @param[in] argv The command line parameters. |
* @returns EOK on success. |
*/ |
int main( int argc, char * argv[] ); |
64,23 → 64,23 |
|
/** Prints the application help. |
*/ |
void print_help( void ); |
void echo_print_help( void ); |
|
/** Translates the character string to the protocol family number. |
* @param name The protocol family name. Input parameter. |
* @param[in] name The protocol family name. |
* @returns The corresponding protocol family number. |
* @returns EPFNOSUPPORTED if the protocol family is not supported. |
*/ |
int parse_protocol_family( const char * name ); |
int echo_parse_protocol_family( const char * name ); |
|
/** Translates the character string to the socket type number. |
* @param name The socket type name. Input parameter. |
* @param[in] name The socket type name. |
* @returns The corresponding socket type number. |
* @returns ESOCKNOSUPPORTED if the socket type is not supported. |
*/ |
int parse_socket_type( const char * name ); |
int echo_parse_socket_type( const char * name ); |
|
void print_help( void ){ |
void echo_print_help( void ){ |
printf( |
"Network Echo aplication\n" \ |
"Usage: echo [options]\n" \ |
114,7 → 114,7 |
); |
} |
|
int parse_protocol_family( const char * name ){ |
int echo_parse_protocol_family( const char * name ){ |
if( str_lcmp( name, "PF_INET", 7 ) == 0 ){ |
return PF_INET; |
}else if( str_lcmp( name, "PF_INET6", 8 ) == 0 ){ |
123,7 → 123,7 |
return EPFNOSUPPORT; |
} |
|
int parse_socket_type( const char * name ){ |
int echo_parse_socket_type( const char * name ){ |
if( str_lcmp( name, "SOCK_DGRAM", 11 ) == 0 ){ |
return SOCK_DGRAM; |
}else if( str_lcmp( name, "SOCK_STREAM", 12 ) == 0 ){ |
170,9 → 170,9 |
break; |
case 'c': ERROR_PROPAGATE( parse_parameter_int( argc, argv, & index, & count, "message count", 0 )); |
break; |
case 'f': ERROR_PROPAGATE( parse_parameter_name_int( argc, argv, & index, & family, "protocol family", 0, parse_protocol_family )); |
case 'f': ERROR_PROPAGATE( parse_parameter_name_int( argc, argv, & index, & family, "protocol family", 0, echo_parse_protocol_family )); |
break; |
case 'h': print_help(); |
case 'h': echo_print_help(); |
return EOK; |
break; |
case 'p': ERROR_PROPAGATE( parse_parameter_int( argc, argv, & index, & value, "port number", 0 )); |
183,7 → 183,7 |
case 's': ERROR_PROPAGATE( parse_parameter_int( argc, argv, & index, & value, "receive size", 0 )); |
size = (value >= 0 ) ? ( size_t ) value : 0; |
break; |
case 't': ERROR_PROPAGATE( parse_parameter_name_int( argc, argv, & index, & value, "socket type", 0, parse_socket_type )); |
case 't': ERROR_PROPAGATE( parse_parameter_name_int( argc, argv, & index, & value, "socket type", 0, echo_parse_socket_type )); |
type = ( sock_type_t ) value; |
break; |
case 'v': verbose = 1; |
193,9 → 193,9 |
}else if( str_lcmp( argv[ index ] + 2, "count=", 6 ) == 0 ){ |
ERROR_PROPAGATE( parse_parameter_int( argc, argv, & index, & count, "message count", 8 )); |
}else if( str_lcmp( argv[ index ] + 2, "family=", 7 ) == 0 ){ |
ERROR_PROPAGATE( parse_parameter_name_int( argc, argv, & index, & family, "protocol family", 9, parse_protocol_family )); |
ERROR_PROPAGATE( parse_parameter_name_int( argc, argv, & index, & family, "protocol family", 9, echo_parse_protocol_family )); |
}else if( str_lcmp( argv[ index ] + 2, "help", 5 ) == 0 ){ |
print_help(); |
echo_print_help(); |
return EOK; |
}else if( str_lcmp( argv[ index ] + 2, "port=", 5 ) == 0 ){ |
ERROR_PROPAGATE( parse_parameter_int( argc, argv, & index, & value, "port number", 7 )); |
206,24 → 206,24 |
ERROR_PROPAGATE( parse_parameter_int( argc, argv, & index, & value, "receive size", 7 )); |
size = (value >= 0 ) ? ( size_t ) value : 0; |
}else if( str_lcmp( argv[ index ] + 2, "type=", 5 ) == 0 ){ |
ERROR_PROPAGATE( parse_parameter_name_int( argc, argv, & index, & value, "socket type", 7, parse_socket_type )); |
ERROR_PROPAGATE( parse_parameter_name_int( argc, argv, & index, & value, "socket type", 7, echo_parse_socket_type )); |
type = ( sock_type_t ) value; |
}else if( str_lcmp( argv[ index ] + 2, "verbose", 8 ) == 0 ){ |
verbose = 1; |
}else{ |
print_unrecognized( index, argv[ index ] + 2 ); |
print_help(); |
echo_print_help(); |
return EINVAL; |
} |
break; |
default: |
print_unrecognized( index, argv[ index ] + 1 ); |
print_help(); |
echo_print_help(); |
return EINVAL; |
} |
}else{ |
print_unrecognized( index, argv[ index ] ); |
print_help(); |
echo_print_help(); |
return EINVAL; |
} |
} |