Hi again,
El 21/07/18 a las 11:44, aitor_czr escribió:
Here you are an example about how to use this library in a C code file:
/*************** BEGIN **********************/
#include <netstat.h>
int main()
{
netstat *ns; // struct defined in netstat.h
ns = g_new0(netstat, 1);
if(!ns) {
printf("Memory failure\n");
exit( EXIT_FAILURE );
}
ns->fnetd = (FNETD*)malloc(sizeof(FNETD));
ns->fnetd->netdevlist = (NETDEVLIST*)malloc(sizeof(NETDEVLIST));
netinfo(ns->fnetd->netdevlist); // THIS LINE DOES THE WORK ! !
/ * *
* And now we can get the netdev information:
// The name of the wired device:
GString *wired_device = g_string_new
(ns->fnetd->netdevlist->info.wired_device_name);
// The name of the wireless device:
GString *wireless_device = g_string_new
(ns->fnetd->netdevlist->info.wireless_device_name);
// Are we connected or disconnected?
gboolean connected = ns->fnetd->netdevlist->info.connected;
// Is the wire plugged or unplugged?
gboolean plugged = ns->fnetd->netdevlist->info.plug;
// The label of the status of the network connection will be
something like: "Connected to wlan2 Euskaltel-58YA (90%)"
GString *label = g_string_new (ns->fnetd->netdevlist->info.label);
/ *
* etc....
* */
// Free the memory:
if(ns->fnetd->netdev_fp) netproc_close(ns->fnetd->netdev_fp);
netproc_netdevlist_clear(ns->fnetd->netdevlist);
free(ns->fnetd->netdevlist);
//netproc_netdevlist_clear(ns->fnetd->netdevlist);
free(ns->fnetd);
return 0;
}
/*************** END **********************/
This example was only for anything but a trivial example program and
code contains errors.
Here you are a further detailed example of C code using the
"libsn_netstat.so" shared library:
http://gnuinos.org/backend.tar.bz2
Uncompress the folder and run the "build" script. Don't forget to
install libiw-dev and cmake.
HTH,
Aitor.
_______________________________________________
Dng mailing list
Dng@lists.dyne.org
https://mailinglists.dyne.org/cgi-bin/mailman/listinfo/dng