Changeset e1e8f7a in mainline for uspace/app/pcapctl/main.c
- Timestamp:
- 2024-12-13T08:44:05Z (10 months ago)
- Children:
- e5b2777
- Parents:
- 467d2b9
- git-author:
- Nataliia Korop <n.corop08@…> (2024-11-16 11:14:06)
- git-committer:
- Nataliia Korop <n.corop08@…> (2024-12-13 08:44:05)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
uspace/app/pcapctl/main.c
r467d2b9 re1e8f7a 43 43 #define NAME "pcapctl" 44 44 #define DEFAULT_DEV_NUM 0 45 #define DECIMAL_SYSTEM 10 45 46 46 static errno_t start_dumping(int *dev_number, const char *name )47 static errno_t start_dumping(int *dev_number, const char *name, int *ops_index) 47 48 { 48 49 pcapctl_sess_t *sess = NULL; … … 52 53 } 53 54 54 rc = pcapctl_dump_start(name, sess); 55 rc = pcapctl_is_valid_ops_number(ops_index, sess); 56 if (rc != EOK) 57 { 58 printf("Wrong number of ops: %d.\n", *ops_index); 59 pcapctl_dump_close(sess); 60 return rc; 61 } 62 63 rc = pcapctl_dump_start(name, ops_index, sess); 55 64 if (rc != EOK) { 56 65 printf("Starting the dumping was not successful.\n"); … … 70 79 if (rc != EOK) { 71 80 printf("Stoping the dumping was not successful.\n"); 72 }73 pcapctl_dump_close(sess);74 return EOK;75 }76 77 static errno_t set_dumper_ops(int *dev_number, const char *name)78 {79 pcapctl_sess_t *sess = NULL;80 errno_t rc = pcapctl_dump_open(dev_number, &sess);81 if (rc != EOK) {82 return rc;83 }84 85 rc = pcapctl_dump_set_ops(name, sess);86 if (rc != EOK) {87 printf("Setting dumper ops was not successful.\n");88 81 } 89 82 pcapctl_dump_close(sess); … … 129 122 bool start = false; 130 123 bool stop = false; 131 bool set_ops = false;132 124 int dev_number = -1; 125 int ops_number = -1; 133 126 const char *output_file_name = ""; 134 const char *ops_name = "";135 127 int idx = 0; 136 128 int ret = 0; … … 144 136 case 'd': 145 137 char *rest; 146 long result = strtol(optarg, &rest, 10);147 dev_number = (int) result;138 long dev_result = strtol(optarg, &rest, DECIMAL_SYSTEM); 139 dev_number = (int)dev_result; 148 140 errno_t rc = pcapctl_is_valid_device(&dev_number); 149 141 if (rc != EOK) { … … 168 160 break; 169 161 case 'o': 170 set_ops = true; 171 ops_name = optarg; 162 char* ops_inval; 163 long ops_result = strtol(optarg, &ops_inval, DECIMAL_SYSTEM); 164 ops_number = (int)ops_result; 172 165 break; 173 166 } … … 178 171 if (start) { 179 172 /* start with dev number and name */ 180 start_dumping(&dev_number, output_file_name );173 start_dumping(&dev_number, output_file_name, &ops_number); 181 174 } else if (stop) { 182 175 /* stop with dev number */ 183 176 stop_dumping(&dev_number); 184 } else if (set_ops) {185 set_dumper_ops(&dev_number, ops_name);186 177 } 187 178 return 0;
Note:
See TracChangeset
for help on using the changeset viewer.