Ignore:
File:
1 edited

Legend:

Unmodified
Added
Removed
  • uspace/srv/net/app/parse.c

    r3be62bc raadf01e  
    3838#include <string.h>
    3939
    40 #include "../include/socket.h"
    41 
    4240#include "../err.h"
    4341
    4442#include "parse.h"
    45 
    46 int parse_address_family(const char * name){
    47         if(str_lcmp(name, "AF_INET", 7) == 0){
    48                 return AF_INET;
    49         }else if(str_lcmp(name, "AF_INET6", 8) == 0){
    50                 return AF_INET6;
    51         }
    52         return EAFNOSUPPORT;
    53 }
    5443
    5544int parse_parameter_int(int argc, char ** argv, int * index, int * value, const char * name, int offset){
     
    7261}
    7362
     63int parse_parameter_string(int argc, char ** argv, int * index, char ** value, const char * name, int offset){
     64        if(offset){
     65                *value = argv[*index] + offset;
     66        }else if((*index) + 1 < argc){
     67                ++ (*index);
     68                *value = argv[*index];
     69        }else{
     70                fprintf(stderr, "Command line error: missing %s\n", name);
     71                return EINVAL;
     72        }
     73        return EOK;
     74}
     75
    7476int parse_parameter_name_int(int argc, char ** argv, int * index, int * value, const char * name, int offset, int (*parse_value)(const char * value)){
    7577        ERROR_DECLARE;
     
    8688}
    8789
    88 int parse_parameter_string(int argc, char ** argv, int * index, char ** value, const char * name, int offset){
    89         if(offset){
    90                 *value = argv[*index] + offset;
    91         }else if((*index) + 1 < argc){
    92                 ++ (*index);
    93                 *value = argv[*index];
    94         }else{
    95                 fprintf(stderr, "Command line error: missing %s\n", name);
    96                 return EINVAL;
    97         }
    98         return EOK;
    99 }
    100 
    101 int parse_protocol_family(const char * name){
    102         if(str_lcmp(name, "PF_INET", 7) == 0){
    103                 return PF_INET;
    104         }else if(str_lcmp(name, "PF_INET6", 8) == 0){
    105                 return PF_INET6;
    106         }
    107         return EPFNOSUPPORT;
    108 }
    109 
    110 int parse_socket_type(const char * name){
    111         if(str_lcmp(name, "SOCK_DGRAM", 11) == 0){
    112                 return SOCK_DGRAM;
    113         }else if(str_lcmp(name, "SOCK_STREAM", 12) == 0){
    114                 return SOCK_STREAM;
    115         }
    116         return ESOCKTNOSUPPORT;
    117 }
    118 
    11990void print_unrecognized(int index, const char * parameter){
    120         fprintf(stderr, "Command line error: unrecognized argument (%d: %s)\n", index, parameter);
     91        fprintf(stderr, "Command line error - unrecognized parameter (%d: %s)\n", index, parameter);
    12192}
    12293
Note: See TracChangeset for help on using the changeset viewer.