Changeset 0210d42d in mainline
- Timestamp:
- 2024-12-13T08:44:05Z (13 months ago)
- Children:
- 59fe16d
- Parents:
- 1333dfc
- git-author:
- Nataliia Korop <n.corop08@…> (2024-05-08 13:47:52)
- git-committer:
- Nataliia Korop <n.corop08@…> (2024-12-13 08:44:05)
- Location:
- uspace
- Files:
-
- 4 edited
-
lib/nic/src/nic_driver.c (modified) (2 diffs)
-
lib/nic/src/nic_impl.c (modified) (1 diff)
-
lib/pcap/src/pcapctl_dump.c (modified) (4 diffs)
-
srv/net/inetsrv/inetsrv.c (modified) (6 diffs)
Legend:
- Unmodified
- Added
- Removed
-
uspace/lib/nic/src/nic_driver.c
r1333dfc r0210d42d 523 523 * calls it inside send_frame handler (with locked main lock) 524 524 */ 525 //pcapdump_packet(nic_get_pcap_iface(nic_data), frame->data, frame->size);525 pcapdump_packet(nic_get_pcap_iface(nic_data), frame->data, frame->size); 526 526 fibril_rwlock_read_lock(&nic_data->rxc_lock); 527 527 nic_frame_type_t frame_type; … … 651 651 nic_data->dev = device; 652 652 653 //errno_t pcap_rc = pcapdump_init(nic_get_pcap_iface(nic_data));654 //if (pcap_rc != EOK) {655 //printf("Failed creating pcapdump port\n");656 //}653 errno_t pcap_rc = pcapdump_init(nic_get_pcap_iface(nic_data)); 654 if (pcap_rc != EOK) { 655 printf("Failed creating pcapdump port\n"); 656 } 657 657 658 658 return nic_data; -
uspace/lib/nic/src/nic_impl.c
r1333dfc r0210d42d 852 852 return rc; 853 853 854 //rc = ddf_fun_add_to_category(fun, "pcap");855 //if (rc != EOK) {856 //return rc;857 //}854 rc = ddf_fun_add_to_category(fun, "pcap"); 855 if (rc != EOK) { 856 return rc; 857 } 858 858 return EOK; 859 859 } -
uspace/lib/pcap/src/pcapctl_dump.c
r1333dfc r0210d42d 52 52 } 53 53 54 //static errno_t pcapctl_cat_get_svc(int *index, service_id_t *svc)55 //{56 //errno_t rc;57 //category_id_t pcap_cat;58 //size_t count;59 //service_id_t *pcap_svcs = NULL;60 61 //rc = loc_category_get_id("pcap", &pcap_cat, 0);62 //if (rc != EOK) {63 //printf("Error resolving category 'pcap'.\n");64 //return rc;65 //}66 67 //rc = loc_category_get_svcs(pcap_cat, &pcap_svcs, &count);68 //if (rc != EOK) {69 //printf("Error resolving list of pcap services.\n");70 //free(pcap_svcs);71 //return rc;72 //}73 //if (*index < (int)count) {74 //*svc = pcap_svcs[*index];75 //free(pcap_svcs);76 //return EOK;77 //}78 79 //return ENOENT;80 //}54 static errno_t pcapctl_cat_get_svc(int *index, service_id_t *svc) 55 { 56 errno_t rc; 57 category_id_t pcap_cat; 58 size_t count; 59 service_id_t *pcap_svcs = NULL; 60 61 rc = loc_category_get_id("pcap", &pcap_cat, 0); 62 if (rc != EOK) { 63 printf("Error resolving category 'pcap'.\n"); 64 return rc; 65 } 66 67 rc = loc_category_get_svcs(pcap_cat, &pcap_svcs, &count); 68 if (rc != EOK) { 69 printf("Error resolving list of pcap services.\n"); 70 free(pcap_svcs); 71 return rc; 72 } 73 if (*index < (int)count) { 74 *svc = pcap_svcs[*index]; 75 free(pcap_svcs); 76 return EOK; 77 } 78 79 return ENOENT; 80 } 81 81 82 82 errno_t pcapctl_is_valid_device(int *index) … … 149 149 return ENOMEM; 150 150 151 // rc = pcapctl_cat_get_svc(index, &svc); 152 // if (rc != EOK) { 153 // printf("Error finding the device with index: %d\n", *index); 154 // goto error; 155 // } 156 157 rc = loc_service_get_id("net/inet", &svc, 0); 158 if (rc != EOK) 159 return ENOENT; 151 printf("number: %d\n", *index); 152 if (*index == -1) { 153 154 rc = loc_service_get_id("net/eth1", &svc, 0); 155 if (rc != EOK) 156 { 157 fprintf(stderr, "Error getting service id.\n"); 158 return ENOENT; 159 } 160 } 161 else { 162 rc = pcapctl_cat_get_svc(index, &svc); 163 if (rc != EOK) { 164 printf("Error finding the device with index: %d\n", *index); 165 goto error; 166 } 167 } 168 160 169 161 170 async_sess_t *new_session = loc_service_connect(svc, INTERFACE_PCAP_CONTROL, 0); … … 165 174 goto error; 166 175 } 167 printf("got new session\n"); 176 168 177 sess->sess = new_session; 169 178 *rsess = sess; … … 191 200 errno_t pcapctl_dump_start(const char *name, pcapctl_sess_t *sess) 192 201 { 193 printf("pcapctl_dump_start\n");194 202 errno_t rc; 195 203 async_exch_t *exch = async_exchange_begin(sess->sess); -
uspace/srv/net/inetsrv/inetsrv.c
r1333dfc r0210d42d 49 49 #include <stdint.h> 50 50 #include <task.h> 51 #include <pcapdump_iface.h>52 51 #include "addrobj.h" 53 52 #include "icmp.h" … … 64 63 #define NAME "inetsrv" 65 64 66 /** Interface for dumping packets */67 pcap_iface_t pcapdump;68 65 69 66 static inet_naddr_t solicited_node_mask = { … … 121 118 if (rc != EOK) 122 119 return rc; 123 rc = async_create_port(INTERFACE_PCAP_CONTROL, 124 pcapdump_conn, &pcapdump, &port); 125 if (rc != EOK) { 126 return rc; 127 } 120 128 121 rc = loc_server_register(NAME, &srv); 129 122 if (rc != EOK) { … … 210 203 dgram->dest.addr, dgram, proto, ttl, df); 211 204 } 212 printf("SENDING: packet size is - %d\n", dgram->size); 213 pcapdump_packet(&pcapdump, dgram->data, dgram->size); 205 214 206 log_msg(LOG_DEFAULT, LVL_DEBUG, "dgram to be routed"); 215 207 … … 549 541 dgram.data = packet->data; 550 542 dgram.size = packet->size; 551 printf("RECEIVING: packet size is - %d\n", packet->size);552 pcapdump_packet(&pcapdump, packet->data, packet->size);553 543 return inet_recv_dgram_local(&dgram, packet->proto); 554 544 } else { … … 571 561 return 1; 572 562 } 573 rc = pcap_iface_init(&pcapdump); 574 575 if (rc != EOK) { 576 printf("Failed creating pcap interface: %s", str_error(rc)); 577 return rc; 578 } 563 579 564 rc = inet_init(); 580 565 if (rc != EOK) 581 566 return 1; 582 567 583 printf(NAME ": Initialized dump iface from inetsrv.\n");584 568 printf(NAME ": Accepting connections.\n"); 585 569
Note:
See TracChangeset
for help on using the changeset viewer.
