This seems to be a C programming question rather than sqlite related issue.
You even did not mention which information you would like to store, we only have a code snippet that processes a captured network packet. something like this would work sqlite3_prepare_v2() // use a template with ? while(read_packet) { ProcessPack() sqlite3_bind_text() sqlite3_step() sqlite3_reset() } sqlite3_finalize() ________________________________ From: Newbie89 <sh_ta...@hotmail.com> To: sqlite-users@sqlite.org Sent: Wednesday, May 1, 2013 4:57 PM Subject: [sqlite] How to link the packet in C file then store in sqlite database? Here is the c file code I need to link and store in database: struct Packet { char Src_MAC[18], Dest_MAC[18]; char Net_P[5],Trans_P[5]; char Src_IP[16], Dest_IP[16]; long int Src_Port,Dest_Port, Cap_Bytes; //[ long int Range: −2,147,483,648 to 2,147,483,647] }; struct Packet Pack[60000]; void ProcessPack(u_char *ul,const struct pcap_pkthdr* pkthdr,const u_char*pckt) { // Declare pointers to packet headers const struct sniff_ip *ip; // IP Header Pointer const struct sniff_tcp *tcp; // TCP Header Pointer const struct sniff_udp *udp; // TCP Header Pointer struct sniff_ethernet *eptr; // Ethernet Header Pointer int size_ip; int size_tcp; char buffer[65535]; // Capture packet length in Bytes Pack[Cnt].Cap_Bytes = pkthdr->len; TB += pkthdr->len; //================ Ethernet Header Info ============================== eptr = (struct sniff_ethernet*)(pckt); ip = (struct sniff_ip*) (pckt + SIZE_ETHERNET); size_ip = IP_HL(ip)*4; tcp = (struct sniff_tcp*) (pckt + SIZE_ETHERNET + size_ip); size_tcp = TH_OFF(tcp)*4; if ( (size_ip < 20) || (size_tcp < 20)) { if (size_ip < 20) { Wrg_IpH++; T_Wrg_IpH++; } if (size_tcp < 20) { Wrg_TcpH++; T_Wrg_TcpH++; } } // Check to see if we have an ip packet if (ntohs (eptr->ether_type) == ETHERTYPE_IP) { strcpy(Pack[Cnt].Net_P,"IP"); Ip++; T_IP++; } else if (ntohs (eptr->ether_type) == ETHERTYPE_ARP) { strcpy(Pack[Cnt].Net_P,"ARP"); Arp++; T_ARP++; } else { strcpy(Pack[Cnt].Net_P,"OTH"); OTH_Net1++; T_OTH_Net++; } // Source and Destination MAC address. strcpy(Pack[Cnt].Src_MAC,(char*)ether_ntoa(eptr->ether_shost)); strcpy(Pack[Cnt].Dest_MAC,(char*)ether_ntoa(eptr->ether_dhost)); //======================== IP header Info ============================= strcpy(Pack[Cnt].Src_IP,""); strcpy(Pack[Cnt].Dest_IP,""); strcpy(Pack[Cnt].Src_IP,inet_ntoa(ip->ip_src)); //Source IP strcpy(Pack[Cnt].Dest_IP,inet_ntoa(ip->ip_dst)); // Destination IP if(strstr(Pack[Cnt].Src_IP,"255") || strstr(Pack[Cnt].Dest_IP,"255") ) { BdCast++; T_BdCast++; } //===================== TCP & UDP header Info ======================== udp = (struct sniff_udp*) (pckt + SIZE_ETHERNET + size_ip); // Determine protocol switch(ip->ip_p) { // IPPROTO_TCP = 6, Transmission Control Protocol. case IPPROTO_TCP: strcpy(Pack[Cnt].Trans_P,"TCP"); Pack[Cnt].Src_Port = ntohs(tcp->th_sport); // Src Port Pack[Cnt].Dest_Port = ntohs(tcp->th_dport); // Dest Port Tcp++; T_TCP++; break; // IPPROTO_UDP = 17, User Datagram Protocol. case IPPROTO_UDP: strcpy(Pack[Cnt].Trans_P,"UDP"); Pack[Cnt].Src_Port = ntohs(udp->source); // Src Port Pack[Cnt].Dest_Port = ntohs(udp->dest); // Dest Port Udp++; T_UDP++; break; // IPPROTO_ICMP = 1, Internet Control Message Protocol. case IPPROTO_ICMP: strcpy(Pack[Cnt].Trans_P,"ICMP"); //strcpy(Pack[Cnt].Trans_P,"OTH"); Pack[Cnt].Src_Port = 0; // Source Port Pack[Cnt].Dest_Port = 0; // Destination Port Icmp++; //OTH_Trans1++; T_ICMP++; //T_OTH_Trans++; break; default: strcpy(Pack[Cnt].Trans_P,"OTH"); Pack[Cnt].Src_Port = 0; // Src Port Pack[Cnt].Dest_Port = 0; // Dest Port OTH_Trans1++; T_OTH_Trans++; break; } Cnt++; return; } how to do from c file to link with sqlite to store into database?thanks -- View this message in context: http://sqlite.1065341.n5.nabble.com/How-to-link-the-packet-in-C-file-then-store-in-sqlite-database-tp68593.html Sent from the SQLite mailing list archive at Nabble.com. _______________________________________________ sqlite-users mailing list sqlite-users@sqlite.org http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users _______________________________________________ sqlite-users mailing list sqlite-users@sqlite.org http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users