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

Reply via email to