Beefy Boxes and Bandwidth Generously Provided by pair Networks
Just another Perl shrine
 
PerlMonks  

Re^5: Help with Lorcon XS library

by syphilis (Archbishop)
on Jul 21, 2020 at 11:41 UTC ( [id://11119588]=note: print w/replies, xml ) Need Help??


in reply to Re^4: Help with Lorcon XS library
in thread Help with Lorcon XS library

some functions ( like the lorcon_list_drivers ) works properly

I don't know much about Net::Lorcon2, but I'm guessing that the string that you assign to $driver must be the same as one of the strings listed by lorcon_list_drivers().
What happens if you assign those strings (as shown by Dumper(\@cards)) to $driver ?
Could you provide us with the output of Dumper(\@cards) from that second program I posted.

Cheers,
Rob

Replies are listed 'Best First'.
Re^6: Help with Lorcon XS library
by marto (Cardinal) on Jul 21, 2020 at 11:42 UTC

    If this is the lorcon in question:

    Current State: The lorcon2 rewrite currently only supports the mac80211 driver, additional drivers will be restored over time
      HI marto! my network card has a mac80211 driver, I controlled now. Regards Edoardo M
Re^6: Help with Lorcon XS library
by Bpl (Scribe) on Jul 21, 2020 at 12:13 UTC
    Hi the output of the
    lorcon_lsit_driver is: $VAR1 = [ { 'name' => 'rtfile', 'details' => 'Real-time PCAP file source' }, { 'details' => 'PCAP file source', 'name' => 'file' }, { 'name' => 'madwifing', 'details' => 'Linux madwifi-ng drivers, deprecated by ath5 +k and ath9k' }, { 'name' => 'tuntap', 'details' => 'Linux tuntap virtual interface drivers' } ];
    I have already tried if I use:
    print Net::Lorcon2::lorcon_create("wlo1", $driver); #where $driver c +an be madwifing or other it says: Net::Lorcon2::lorcon_create: driver is not a reference at -e line 3.
    and if I do
    print Net::Lorcon2::lorcon_create("wlo1", \$driver); #where $driver + can be madwifing or other it says segmentation error (core dump created)
    Regards. Edoardo
      print Net::Lorcon2::lorcon_create("wlo1", $driver); #where $driver c +an be madwifing or other it says: Net::Lorcon2::lorcon_create: driver is not a reference at -e line 3.


      Yes - you should not do that.
      As the error message says $driver is not a reference.

      print Net::Lorcon2::lorcon_create("wlo1", \$driver); #where $driver + can be madwifing or other it says segmentation error (core dump created)


      Yes - you should not do that either. At least, this time you have passed something that is a reference.
      But it's not a reference to the right thing, and therefore causes a segfault.

      As I said in my first post, the correct thing to do would be:
      my $driver = "madwifing"; my $if = "wlo1"; my $drv = lorcon_find_driver($driver); if (! $drv) { print STDERR "[-] Unable to find DRV for [$driver]\n"; exit 1; } my $lorcon = lorcon_create($if, $drv); if (! $lorcon) { print STDERR "[-] lorcon_create failed\n"; exit 1; }
      What happens if you do that ?
      In view of what marto dug up, it may not work either - but it's at least worth a try.

      Cheers,
      Rob
        Hi! Many thanks, now it works, It is pretty strange but I think that the problem was related to the string passed as $driver and not to the XS code, WOW i am so happy, would you like to be thanked in the page of metacpan? under the voice HERO of the module. still many thanks, Regards Edoardo M

Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: note [id://11119588]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others avoiding work at the Monastery: (4)
As of 2024-04-25 02:24 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found