Changeset 8d9217d in mainline


Ignore:
Timestamp:
2024-03-20T17:06:29Z (6 weeks ago)
Author:
Nataliia Korop <n.corop08@…>
Children:
384f081
Parents:
78edb5e
Message:

nic, drvs, pcapctl

Location:
uspace
Files:
8 edited

Legend:

Unmodified
Added
Removed
  • uspace/app/pcapctl/main.c

    r78edb5e r8d9217d  
    4040
    4141#define NAME "pcapctl"
     42#define DEFAULT_DEV_NUM 0
    4243
    4344//pcapctl_sess_t* sess = NULL;
     
    4546static errno_t start_dumping(const char *svc_name, const char *name)
    4647{
    47         pcapctl_sess_t* sess = NULL;
     48        pcapctl_sess_t *sess = NULL;
    4849        errno_t rc = pcapctl_dump_open(svc_name, &sess);
    4950        if (rc != EOK) {
     
    5960static errno_t stop_dumping(const char *svc_name)
    6061{
    61         pcapctl_sess_t* sess = NULL;
     62        pcapctl_sess_t *sess = NULL;
    6263        errno_t rc = pcapctl_dump_open(svc_name, &sess);
    6364        if (rc != EOK) {
     
    6970}
    7071
    71 static void list_devs(void) {
     72static void list_devs(void)
     73{
    7274        pcapctl_list();
    7375}
     
    7678{
    7779        printf("Usage:\n"
    78                 NAME " list \n"
    79                 "\tList of devices\n"
    80                 NAME " start --device= | -d <device number from list> <outfile>\n"
    81                 "\tPackets dumped from device will be written to <outfile>\n"
    82                 NAME " stop --device= | -d <device>\n"
    83                 "\tDumping from <device> stops\n"
    84                 NAME " start <outfile>\n"
    85                 "\tPackets dumped from the 1st device from the list will be written to <outfile>\n"
    86                 NAME " --help | -h\n"
    87                 "\tShow this application help.\n");
     80            NAME " list \n"
     81            "\tList of devices\n"
     82            NAME " start --device= | -d <device number from list> <outfile>\n"
     83            "\tPackets dumped from device will be written to <outfile>\n"
     84            NAME " stop --device= | -d <device>\n"
     85            "\tDumping from <device> stops\n"
     86            NAME " start <outfile>\n"
     87            "\tPackets dumped from the 1st device from the list will be written to <outfile>\n"
     88            NAME " --help | -h\n"
     89            "\tShow this application help.\n");
    8890}
    8991
     
    9496                return 1;
    9597        } else {
    96                 /** help*/
     98                /** help */
    9799                if (str_cmp(argv[1], "--help") == 0 || str_cmp(argv[1], "-h") == 0) {
    98100                        usage();
    99101                        return 0;
    100                 /** list*/
     102                        /** list */
    101103                } else if (str_cmp(argv[1], "list") == 0) {
    102104                        list_devs();
    103105                        return 0;
    104                 /** start with/out devnum */
     106                        /** start with/out devnum */
    105107                } else if (str_cmp(argv[1], "start") == 0) {
    106108                        if (argc == 3) {
    107109                                start_dumping((char *)"0", argv[2]);
    108110                                return 0;
    109                         }
    110                         else if (argc == 4) {
     111                        } else if (argc == 4) {
    111112                                start_dumping(argv[2], argv[3]);
    112113                                return 0;
     
    115116                                return 1;
    116117                        }
    117                 /** Stop with/out devnum */
     118                        /** Stop with/out devnum */
    118119                } else if (str_cmp(argv[1], "stop") == 0) {
    119120                        if (argc == 2) {
     
    121122                                fprintf(stdout, "Dumping was stopped\n");
    122123                                return 0;
    123                         }
    124                         else if (argc == 3) {
     124                        } else if (argc == 3) {
    125125
    126126                                stop_dumping(argv[2]);
  • uspace/drv/nic/e1k/e1k.c

    r78edb5e r8d9217d  
    22022202                goto err_fun_bind;
    22032203
    2204         rc = ddf_fun_add_to_category(fun, DEVICE_CATEGORY_NIC);
    2205         if (rc != EOK)
    2206                 goto err_add_to_cat;
    2207 
    2208         rc = ddf_fun_add_to_category(fun, "pcap");
     2204        // rc = ddf_fun_add_to_category(fun, DEVICE_CATEGORY_NIC);
     2205        // if (rc != EOK)
     2206        //      goto err_add_to_cat;
     2207
     2208        // rc = ddf_fun_add_to_category(fun, "pcap");
     2209        // if (rc != EOK) {
     2210        //      ddf_msg(LVL_ERROR, "Failed adding function to category pcap");
     2211        //      goto err_add_to_cat;
     2212        // }
     2213        rc = nic_fun_add_to_cats(fun);
    22092214        if (rc != EOK) {
    2210                 ddf_msg(LVL_ERROR, "Failed adding function to category pcap");
    2211                 goto err_add_to_cat;
    2212         }
    2213 
     2215                ddf_msg(LVL_ERROR, "Failed adding function to categories");
     2216                return rc;
     2217        }
    22142218        return EOK;
    22152219
    2216 err_add_to_cat:
    2217         ddf_fun_unbind(fun);
     2220        // err_add_to_cat:
     2221        // ddf_fun_unbind(fun);
    22182222err_fun_bind:
    22192223err_rx_structure:
  • uspace/drv/nic/ne2k/ne2k.c

    r78edb5e r8d9217d  
    449449                return rc;
    450450        }
     451        rc = ddf_fun_add_to_category(fun, "pcap");
     452        if (rc != EOK) {
     453                //ddf_msg(LVL_ERROR, "Failed adding function to category pcap");
     454                ddf_fun_unbind(fun);
     455                ddf_fun_destroy(fun);
     456                return rc;
     457        }
    451458
    452459        return EOK;
  • uspace/drv/nic/rtl8139/driver.c

    r78edb5e r8d9217d  
    4242#include <stdio.h>
    4343#include <str.h>
     44#include <pcapdump_iface.h>
    4445
    4546#include "defs.h"
     
    13131314        }
    13141315
     1316        rc = ddf_fun_add_to_category(fun, "pcap");
     1317        if (rc != EOK) {
     1318                ddf_msg(LVL_ERROR, "Failed adding function to category pcap");
     1319                goto err_fun_bind;
     1320        }
     1321
    13151322        ddf_msg(LVL_NOTE, "The %s device has been successfully initialized.",
    13161323            ddf_dev_get_name(dev));
  • uspace/lib/nic/include/nic.h

    r78edb5e r8d9217d  
    282282extern pcap_iface_t *nic_get_pcap_iface(nic_t *);
    283283
     284extern errno_t nic_fun_add_to_cats(ddf_fun_t *fun);
     285
    284286#endif // __NIC_H__
    285287
  • uspace/lib/nic/src/nic_impl.c

    r78edb5e r8d9217d  
    844844}
    845845
     846errno_t nic_fun_add_to_cats(ddf_fun_t *fun)
     847{
     848        errno_t rc;
     849        rc = ddf_fun_add_to_category(fun, DEVICE_CATEGORY_NIC);
     850        if (rc != EOK)
     851                goto err_add_to_cat;
     852
     853        rc = ddf_fun_add_to_category(fun, "pcap");
     854        if (rc != EOK) {
     855                //ddf_msg(LVL_ERROR, "Failed adding function to category pcap");
     856                goto err_add_to_cat;
     857        }
     858        return EOK;
     859
     860err_add_to_cat:
     861        ddf_fun_unbind(fun);
     862        return rc;
     863}
     864
    846865/** @}
    847866 */
  • uspace/lib/pcap/include/pcapctl_dump.h

    r78edb5e r8d9217d  
    5555extern errno_t pcapctl_list(void);
    5656
    57 
    5857#endif
    5958
  • uspace/lib/pcap/src/pcapctl_dump.c

    r78edb5e r8d9217d  
    4545//static service_id_t *pcap_svcs = NULL; ??
    4646
    47 static errno_t str2num(const char* str, size_t* number) {
     47static errno_t str2num(const char *str, size_t *number)
     48{
    4849        size_t num = 0;
    4950        if (*str == 0)
     
    6869}
    6970
    70 static errno_t pcapctl_cat_get_svc(const char *drv_name, service_id_t* svc) {
     71static errno_t pcapctl_cat_get_svc(const char *drv_name, service_id_t *svc)
     72{
    7173        errno_t rc;
    7274        category_id_t pcap_cat;
     
    98100}
    99101
    100 extern errno_t pcapctl_list(void) {
    101 
     102errno_t pcapctl_list(void)
     103{
    102104        errno_t rc;
    103105        category_id_t pcap_cat;
     
    118120        }
    119121
    120         fprintf(stdout, "Services:\n");
     122        fprintf(stdout, "Devices:\n");
    121123        for (unsigned i = 0; i < count; ++i) {
    122124                char *name = NULL;
     
    128130}
    129131
    130 
    131 static errno_t pcapctl_get_name_from_number(const char* svcnum, const char** svcname) {
    132 
     132static errno_t pcapctl_get_name_from_number(const char *svcnum, const char **svcname)
     133{
    133134        errno_t rc;
    134135        category_id_t pcap_cat;
     
    183184                return ENOMEM;
    184185
    185 
    186         const char* svcname;
     186        const char *svcname;
    187187
    188188        rc = pcapctl_get_name_from_number(svcnum, &svcname);
Note: See TracChangeset for help on using the changeset viewer.