Menu

#180 Buffer Overflow

0.9.5
closed
nobody
None
fixed
2016-08-01
2016-04-10
No

Linux diablo 4.4.5-1-ARCH #1 SMP PREEMPT Thu Mar 10 07:38:19 CET 2016 x86_64 GNU/Linux

I compiled an installed lirc-0.9.4pre1. Using irrecord to setup my remote I am getting the following error.

*** buffer overflow detected ***: irrecord terminated
======= Backtrace: =========
/usr/lib/libc.so.6(+0x6f364)[0x7f3262291364]
/usr/lib/libc.so.6(__fortify_fail+0x37)[0x7f326231a017]
/usr/lib/libc.so.6(+0xf61d0)[0x7f32623181d0]
/usr/lib/libc.so.6(+0xf663a)[0x7f326231863a]
/usr/local/lib/libirrecord.so.0(flushhw+0x43)[0x7f32630664c3]
irrecord[0x403dcb]
irrecord[0x4028c2]
/usr/lib/libc.so.6(__libc_start_main+0xf0)[0x7f3262242710]
irrecord[0x4030d9]
======= Memory map: ========
00400000-00407000 r-xp 00000000 fe:01 6841832                            /usr/local/bin/irrecord
00607000-00608000 rw-p 00007000 fe:01 6841832                            /usr/local/bin/irrecord
0165b000-0168d000 rw-p 00000000 00:00 0                                  [heap]
7f32611ac000-7f32611b3000 r-xp 00000000 fe:01 6819012                    /usr/lib/librt-2.23.so
7f32611b3000-7f32613b2000 ---p 00007000 fe:01 6819012                    /usr/lib/librt-2.23.so
7f32613b2000-7f32613b3000 r--p 00006000 fe:01 6819012                    /usr/lib/librt-2.23.so
7f32613b3000-7f32613b4000 rw-p 00007000 fe:01 6819012                    /usr/lib/librt-2.23.so
7f32617d1000-7f32617e0000 r-xp 00000000 fe:01 6841814                    /usr/local/lib/liblirc_driver.so.0.0.0
7f32617e0000-7f32619df000 ---p 0000f000 fe:01 6841814                    /usr/local/lib/liblirc_driver.so.0.0.0
7f32619df000-7f32619e0000 rw-p 0000e000 fe:01 6841814                    /usr/local/lib/liblirc_driver.so.0.0.0
7f32619e0000-7f32619e1000 rw-p 00000000 00:00 0 
7f32619e1000-7f32619f9000 r-xp 00000000 fe:01 6818918                    /usr/lib/libpthread-2.23.so
7f32619f9000-7f3261bf8000 ---p 00018000 fe:01 6818918                    /usr/lib/libpthread-2.23.so
7f3261bf8000-7f3261bf9000 r--p 00017000 fe:01 6818918                    /usr/lib/libpthread-2.23.so
7f3261bf9000-7f3261bfa000 rw-p 00018000 fe:01 6818918                    /usr/lib/libpthread-2.23.so
7f3261bfa000-7f3261bfe000 rw-p 00000000 00:00 0 
7f3261e0c000-7f3261e0f000 r-xp 00000000 fe:01 7082137                    /usr/local/lib/lirc/plugins/devinput.so
7f3261e0f000-7f326200e000 ---p 00003000 fe:01 7082137                    /usr/local/lib/lirc/plugins/devinput.so
7f326200e000-7f326200f000 rw-p 00002000 fe:01 7082137                    /usr/local/lib/lirc/plugins/devinput.so
7f326200f000-7f3262010000 rw-p 00000000 00:00 0 
7f3262010000-7f326201b000 r-xp 00000000 fe:01 6819004                    /usr/lib/libnss_files-2.23.so
7f326201b000-7f326221a000 ---p 0000b000 fe:01 6819004                    /usr/lib/libnss_files-2.23.so
7f326221a000-7f326221b000 r--p 0000a000 fe:01 6819004                    /usr/lib/libnss_files-2.23.so
7f326221b000-7f326221c000 rw-p 0000b000 fe:01 6819004                    /usr/lib/libnss_files-2.23.so
7f326221c000-7f3262222000 rw-p 00000000 00:00 0 
7f3262222000-7f32623ba000 r-xp 00000000 fe:01 6818942                    /usr/lib/libc-2.23.so
7f32623ba000-7f32625b9000 ---p 00198000 fe:01 6818942                    /usr/lib/libc-2.23.so
7f32625b9000-7f32625bd000 r--p 00197000 fe:01 6818942                    /usr/lib/libc-2.23.so
7f32625bd000-7f32625bf000 rw-p 0019b000 fe:01 6818942                    /usr/lib/libc-2.23.so
7f32625bf000-7f32625c3000 rw-p 00000000 00:00 0 
7f32625c3000-7f32625d9000 r-xp 00000000 fe:01 6819275                    /usr/lib/libgcc_s.so.1
7f32625d9000-7f32627d8000 ---p 00016000 fe:01 6819275                    /usr/lib/libgcc_s.so.1
7f32627d9000-7f32628dc000 r-xp 00000000 fe:01 6819009                    /usr/lib/libm-2.23.so
7f32628dc000-7f3262adc000 ---p 00103000 fe:01 6819009                    /usr/lib/libm-2.23.so
7f3262adc000-7f3262add000 r--p 00103000 fe:01 6819009                    /usr/lib/libm-2.23.so
7f3262add000-7f3262ade000 rw-p 00104000 fe:01 6819009                    /usr/lib/libm-2.23.so
7f3262ade000-7f3262c50000 r-xp 00000000 fe:01 6819314                    /usr/lib/libstdc++.so.6.0.21
7f3262c50000-7f3262e50000 ---p 00172000 fe:01 6819314                    /usr/lib/libstdc++.so.6.0.21
7f3262e50000-7f3262e5a000 r--p 00172000 fe:01 6819314                    /usr/lib/libstdc++.so.6.0.21
7f3262e5a000-7f3262e5c000 rw-p 0017c000 fe:01 6819314                    /usr/lib/libstdc++.so.6.0.21
7f3262e5c000-7f3262e60000 rw-p 00000000 00:00 0 
7f3262e60000-7f3262e62000 r-xp 00000000 fe:01 6819008                    /usr/lib/libdl-2.23.so
7f3262e62000-7f3263062000 ---p 00002000 fe:01 6819008                    /usr/lib/libdl-2.23.so
7f3263062000-7f3263063000 r--p 00002000 fe:01 6819008                    /usr/lib/libdl-2.23.so
7f3263063000-7f3263064000 rw-p 00003000 fe:01 6819008                    /usr/lib/libdl-2.23.so
7f3263064000-7f326306c000 r-xp 00000000 fe:01 6841818                    /usr/local/lib/libirrecord.so.0.0.0
7f326306c000-7f326326c000 ---p 00008000 fe:01 6841818                    /usr/local/lib/libirrecord.so.0.0.0
7f326326c000-7f326326d000 rw-p 00008000 fe:01 6841818                    /usr/local/lib/libirrecord.so.0.0.0
7f326326d000-7f3263287000 r-xp 00000000 fe:01 6841806                    /usr/local/lib/liblirc.so.0.0.0
7f3263287000-7f3263486000 ---p 0001a000 fe:01 6841806                    /usr/local/lib/liblirc.so.0.0.0
7f3263486000-7f3263488000 rw-p 00019000 fe:01 6841806                    /usr/local/lib/liblirc.so.0.0.0
7f3263488000-7f3263489000 rw-p 00000000 00:00 0 

Related

Tickets: #180

Discussion

  • Bengt Martensson

    Might be easier to help if you explained what you tried to do.

    But it seems like you are somehow combining devinput and irrecord, and that is not a combination that makes sense.

     
    • Michael Brougham

      I was trying to record the input from an unbranded IR remote. I think the
      devinput is coming from the receiver I'm using. Its an HP MCE receiver.
      From what I've read it replicates keyboard and mouse input using the media
      center remote which I don't have.

       

      Last edit: Alec Leamas 2016-04-25
  • Bengt Martensson

    Fullquotes is a really bad idea, at least in issues. Really.

    No-one will be able to help as long as you do not tell exactly what you did, in particular the command line used.

     
  • Alec Leamas

    Alec Leamas - 2016-04-25

    Trimming the fullquote in Michael's reply.

    As Bengt stated, we need som more input here:

    • How did you start irrecord i. e., the command line)
    • The contents of /etc/lirc/lirc_options.conf.
    • The console output before the crash.

    That said, irrecord should not crash so this is certainly a bug.

     
  • Alec Leamas

    Alec Leamas - 2016-04-26

    Also, in CONTRIBUTE.md you will find instructions to generate a complete stack trace. If you could provide such a trace this should be relatively easy to fix.

     
  • Alec Leamas

    Alec Leamas - 2016-04-28
    • status: open --> need-info
     
  • Alec Leamas

    Alec Leamas - 2016-04-28

    Updating metadata. Unless there is more input, this bug will be closed or at least moved away from 0.9.4.

     
  • Alec Leamas

    Alec Leamas - 2016-05-22
    • Milestone: 0.9.4 --> Future
     
  • Alec Leamas

    Alec Leamas - 2016-05-22

    No more input, moving away from 0.9.4. WIll close unless there is more input.

     
    • Darrell

      Darrell - 2016-06-05

      I have this same issue. 0.9.4 latest (June 2nd, 2016)

      I have a generic USB receiver that shows itself as a HID, the receiver registers itself as a keyboard/mouse HID (Twinhan DVB receiver card), /dev/input/by-id/usb-Twinhan_Tech_Remote_Control_1111111-event-if00

      symlink to /dev/input/event4

      I ran it under gdb with options "--loglevel=trace2 --driver devinput --device /dev/input/event4"

      After running irrecord, I get to the point to record the actual keys...

      Hold down an arbitrary key
      ................................................................................
      Found gap (95880 us)

      Please enter the name for the next button (press <enter> to finish recording)
      KEY_1</enter>

      Now hold down button "KEY_1".

      Program received signal SIGSEGV, Segmentation fault.
      0x00007ffff79b304e in map_code (remote=0x6082e0 <remote>, ctx=0x700200004000c, pre_bits=0, pre=0, bits=192, code=1125917087170592, 
          post_bits=0, post=0) at ir_remote.c:303
      305     ctx->post = 01;
      (gdb) bt
      #0  0x00007ffff79b304e in map_code (remote=0x6082e0 <remote>, ctx=0x700200004000c, pre_bits=0, pre=0, bits=192, 
          code=1125917087170592, post_bits=0, post=0) at ir_remote.c:303
      #1  0x00007ffff6fc70a2 in devinput_decode (remote=0x6082e0 <remote>, ctx=0x700200004000c) at devinput.c:492
      #2  0x00007ffff779e5a7 in record_buttons (btn_state=0x7fffffffdff0, last_status=STS_BTN_GET_DATA, state=0x7002000040004, 
          opts=0x7fffffffe1e0) at irrecord.c:1907
      #3  0x0000000000403df2 in get_button_data (opts=0x7fffffffe1e0, state=0x7002000040004, btn_state=0x7fffffffdff0)
          at irrecord-ui.cpp:769
      #4  do_record_buttons (state=0x7002000040004, state@entry=0x7fffffffe1a0, opts=opts@entry=0x7fffffffe1e0) at irrecord-ui.cpp:826
      #5  0x00000000004029c5 in main (argc=<optimized out>, argv=<optimized out>) at irrecord-ui.cpp:1206
      (gdb) Quit
      

      I compiled with debug and no optimizations as well as gcc statck overflow detection off.

      In ir_remote.c ctx is corrupted in stack when it crashes at line 303. The variable is a stack allocated variable originating from the main code of irrecord. I tried tracing it back but I'm not familiar at all with this code. So something has messed up the stack along the way.

      There's a buffer overflow somewhere in here thats causing this corrupting the stack.

      Running latest Ubuntu kernal 4.4.0-22-generic #40-Ubuntu x86_64

       

      Last edit: Darrell 2016-06-05
  • Alec Leamas

    Alec Leamas - 2016-06-05

    Thanks for debugging effort! I think here is really two things:

    The first is that we have a byuffer overflow. Of course, this is a bug and we need to understand where this overflow occurs.

    The second is that irrecord doesn't complain about recording using the devinput driver. It actually does not make any sense, the application used to update devinput.lircd.conf is lirc-make-devinput, This file is always the same for different remotes, but might differ between different kernel version.

    As for the first item: what happens if you enable all stack checks, fortify soiurce etc? If we are lucky, the stack checking library functions might get hold of the overflow earlier.

    As for the second: What are you trying to achieve here, really?

    More: You are talking about ctx in the crashing routine, but there is no ctx defined at irrecord.,c:303? Could you please expand a little on this?

     
  • Alec Leamas

    Alec Leamas - 2016-06-06

    hm... looking at the code, there seem to already be a warning message printed when using the devinput driver. Did you notice this?

     
    • Darrell

      Darrell - 2016-06-06

      I admit, I'm not familiar with devinput on Linux.

      I've used lirc for 15+ years, but mainly with home brew serial IR Receivers.

      In updating my hardware, I have a machine with no serial port on board, so I moved to USB.

      I built my own USB based on the Igor USB Tiny code, but found the USB protocol in the firmware to be a bit unstable.

      In an effort to not build more custom hardware, I had an old USB receiver with an old TV card that seems to register itself as a devinput device, so I was attempting to get it working.

      when running mode2, with driver devinput and device=/dev/input/eventXX I can see the devinput codes being outputted.

      So basically I was trying to just generate a lircd.conf for this USB IR receiver.

      I thought I could use irrecord to generate a lircd.conf for this, was this correct?

      I ended up writing a little daemon that reads from the eventXX, reads the eventcodes, then maps them to keypresses that I map in a config file by injecting them into /dev/uinput

      If you want me to do more testing I can spare some time this week.

      cheers,
      Darrell


      From: Alec Leamas alec_leamas@users.sf.net
      Sent: June 6, 2016 12:00 AM
      To: [lirc:tickets]
      Subject: [lirc:tickets] #180 Buffer Overflow

      hm... looking at the code, there seem to already be a warning message printed when using the devinput driver. Did you notice this?


      [tickets:#180]https://sourceforge.net/p/lirc/tickets/180/ Buffer Overflow

      Status: need-info
      Milestone: Future
      Created: Sun Apr 10, 2016 02:28 PM UTC by Michael Brougham
      Last Updated: Sun Jun 05, 2016 11:53 AM UTC
      Owner: nobody

      Linux diablo 4.4.5-1-ARCH #1 SMP PREEMPT Thu Mar 10 07:38:19 CET 2016 x86_64 GNU/Linux

      I compiled an installed lirc-0.9.4pre1. Using irrecord to setup my remote I am getting the following error.

      *** buffer overflow detected ***: irrecord terminated
      ======= Backtrace: =========
      /usr/lib/libc.so.6(+0x6f364)[0x7f3262291364]
      /usr/lib/libc.so.6(__fortify_fail+0x37)[0x7f326231a017]
      /usr/lib/libc.so.6(+0xf61d0)[0x7f32623181d0]
      /usr/lib/libc.so.6(+0xf663a)[0x7f326231863a]
      /usr/local/lib/libirrecord.so.0(flushhw+0x43)[0x7f32630664c3]
      irrecord[0x403dcb]
      irrecord[0x4028c2]
      /usr/lib/libc.so.6(__libc_start_main+0xf0)[0x7f3262242710]
      irrecord[0x4030d9]
      ======= Memory map: ========
      00400000-00407000 r-xp 00000000 fe:01 6841832 /usr/local/bin/irrecord
      00607000-00608000 rw-p 00007000 fe:01 6841832 /usr/local/bin/irrecord
      0165b000-0168d000 rw-p 00000000 00:00 0 [heap]
      7f32611ac000-7f32611b3000 r-xp 00000000 fe:01 6819012 /usr/lib/librt-2.23.so
      7f32611b3000-7f32613b2000 ---p 00007000 fe:01 6819012 /usr/lib/librt-2.23.so
      7f32613b2000-7f32613b3000 r--p 00006000 fe:01 6819012 /usr/lib/librt-2.23.so
      7f32613b3000-7f32613b4000 rw-p 00007000 fe:01 6819012 /usr/lib/librt-2.23.so
      7f32617d1000-7f32617e0000 r-xp 00000000 fe:01 6841814 /usr/local/lib/liblirc_driver.so.0.0.0
      7f32617e0000-7f32619df000 ---p 0000f000 fe:01 6841814 /usr/local/lib/liblirc_driver.so.0.0.0
      7f32619df000-7f32619e0000 rw-p 0000e000 fe:01 6841814 /usr/local/lib/liblirc_driver.so.0.0.0
      7f32619e0000-7f32619e1000 rw-p 00000000 00:00 0
      7f32619e1000-7f32619f9000 r-xp 00000000 fe:01 6818918 /usr/lib/libpthread-2.23.so
      7f32619f9000-7f3261bf8000 ---p 00018000 fe:01 6818918 /usr/lib/libpthread-2.23.so
      7f3261bf8000-7f3261bf9000 r--p 00017000 fe:01 6818918 /usr/lib/libpthread-2.23.so
      7f3261bf9000-7f3261bfa000 rw-p 00018000 fe:01 6818918 /usr/lib/libpthread-2.23.so
      7f3261bfa000-7f3261bfe000 rw-p 00000000 00:00 0
      7f3261e0c000-7f3261e0f000 r-xp 00000000 fe:01 7082137 /usr/local/lib/lirc/plugins/devinput.so
      7f3261e0f000-7f326200e000 ---p 00003000 fe:01 7082137 /usr/local/lib/lirc/plugins/devinput.so
      7f326200e000-7f326200f000 rw-p 00002000 fe:01 7082137 /usr/local/lib/lirc/plugins/devinput.so
      7f326200f000-7f3262010000 rw-p 00000000 00:00 0
      7f3262010000-7f326201b000 r-xp 00000000 fe:01 6819004 /usr/lib/libnss_files-2.23.so
      7f326201b000-7f326221a000 ---p 0000b000 fe:01 6819004 /usr/lib/libnss_files-2.23.so
      7f326221a000-7f326221b000 r--p 0000a000 fe:01 6819004 /usr/lib/libnss_files-2.23.so
      7f326221b000-7f326221c000 rw-p 0000b000 fe:01 6819004 /usr/lib/libnss_files-2.23.so
      7f326221c000-7f3262222000 rw-p 00000000 00:00 0
      7f3262222000-7f32623ba000 r-xp 00000000 fe:01 6818942 /usr/lib/libc-2.23.so
      7f32623ba000-7f32625b9000 ---p 00198000 fe:01 6818942 /usr/lib/libc-2.23.so
      7f32625b9000-7f32625bd000 r--p 00197000 fe:01 6818942 /usr/lib/libc-2.23.so
      7f32625bd000-7f32625bf000 rw-p 0019b000 fe:01 6818942 /usr/lib/libc-2.23.so
      7f32625bf000-7f32625c3000 rw-p 00000000 00:00 0
      7f32625c3000-7f32625d9000 r-xp 00000000 fe:01 6819275 /usr/lib/libgcc_s.so.1
      7f32625d9000-7f32627d8000 ---p 00016000 fe:01 6819275 /usr/lib/libgcc_s.so.1
      7f32627d9000-7f32628dc000 r-xp 00000000 fe:01 6819009 /usr/lib/libm-2.23.so
      7f32628dc000-7f3262adc000 ---p 00103000 fe:01 6819009 /usr/lib/libm-2.23.so
      7f3262adc000-7f3262add000 r--p 00103000 fe:01 6819009 /usr/lib/libm-2.23.so
      7f3262add000-7f3262ade000 rw-p 00104000 fe:01 6819009 /usr/lib/libm-2.23.so
      7f3262ade000-7f3262c50000 r-xp 00000000 fe:01 6819314 /usr/lib/libstdc++.so.6.0.21
      7f3262c50000-7f3262e50000 ---p 00172000 fe:01 6819314 /usr/lib/libstdc++.so.6.0.21
      7f3262e50000-7f3262e5a000 r--p 00172000 fe:01 6819314 /usr/lib/libstdc++.so.6.0.21
      7f3262e5a000-7f3262e5c000 rw-p 0017c000 fe:01 6819314 /usr/lib/libstdc++.so.6.0.21
      7f3262e5c000-7f3262e60000 rw-p 00000000 00:00 0
      7f3262e60000-7f3262e62000 r-xp 00000000 fe:01 6819008 /usr/lib/libdl-2.23.so
      7f3262e62000-7f3263062000 ---p 00002000 fe:01 6819008 /usr/lib/libdl-2.23.so
      7f3263062000-7f3263063000 r--p 00002000 fe:01 6819008 /usr/lib/libdl-2.23.so
      7f3263063000-7f3263064000 rw-p 00003000 fe:01 6819008 /usr/lib/libdl-2.23.so
      7f3263064000-7f326306c000 r-xp 00000000 fe:01 6841818 /usr/local/lib/libirrecord.so.0.0.0
      7f326306c000-7f326326c000 ---p 00008000 fe:01 6841818 /usr/local/lib/libirrecord.so.0.0.0
      7f326326c000-7f326326d000 rw-p 00008000 fe:01 6841818 /usr/local/lib/libirrecord.so.0.0.0
      7f326326d000-7f3263287000 r-xp 00000000 fe:01 6841806 /usr/local/lib/liblirc.so.0.0.0
      7f3263287000-7f3263486000 ---p 0001a000 fe:01 6841806 /usr/local/lib/liblirc.so.0.0.0
      7f3263486000-7f3263488000 rw-p 00019000 fe:01 6841806 /usr/local/lib/liblirc.so.0.0.0
      7f3263488000-7f3263489000 rw-p 00000000 00:00 0


      Sent from sourceforge.net because you indicated interest in https://sourceforge.net/p/lirc/tickets/180/

      To unsubscribe from further messages, please visit https://sourceforge.net/auth/subscriptions/

       

      Related

      Tickets: #180

      • Alec Leamas

        Alec Leamas - 2016-06-06

        Thanks for all debug input. I cannot try to reproduce this now, I'm sort of off-site over the weekend (Monday id holiday here). Will do later this week,

        As for your general concerns:

        • If the only thing you need is to use the remote, you might get away without using lirc at all. Have you tried the remote without lircd running? It looks like the kernel supports the remote (?)
        • If you want to use lirc e. g., since you have applications which needs it, you might want to use the devinput driver. In this case you should not use irrecord since the kernel decodes the remote. You might need to update the devinput.lircd.conf to match your kernel using lirc-make-devinput(1).
        • If you don't want to use devinput e. g., because you want to send (blast) IR signal, you cannot use the devinput driver. If the kernel has created a /dev/lirc0 device you might want to use the default driver on /dev/lirc0.
        • If the kernel has created a HID device for your remote your best bet is to use it as-is. We have not really figured out how to handle these devices besides patching the lirc HID driver.

        EDIT: See also http://lirc.org/html/configuration-guide.html

         

        Last edit: Alec Leamas 2016-06-06
        • Darrell

          Darrell - 2016-06-06

          Ya I think I have a method to get it to work with some custom C code, I lost the remote but I setup my Harmony remote for another remote and the kernel driver seems to parse the remote buttons fine, but they aren't mapped to key via its HID device, but that's good for my case as I want to map the buttons to key presses myself.

          thanks,

          Darrell.


          From: Alec Leamas alec_leamas@users.sf.net
          Sent: June 6, 2016 11:27 AM
          To: [lirc:tickets]
          Subject: [lirc:tickets] Re: #180 Buffer Overflow

          Thanks for all debug input. I cannot try to reproduce this now, I'm sort of off-site over the weekend (Monday id holiday here). Will do later this week,

          As for your general concerns:

          • If the only thing you need is to use the remote, you might get away without using lirc at all. Have you tried the remote without lircd running? It looks like the kernel supports the remote (?)
          • If you want to use lirc e. g., since you have applications which needs it, you might want to use the devinput driver. In this case you should not use irrecord since the kernel decodes the remote. You might need to update the devinput.lircd.conf to match your kernel using lirc-make-devinput(1).
          • If you don't want to use devinput e. g., because you want to send (blast) IR signal, you cannot use the devinput driver. If the kernel has created a /dev/lirc0 device you might want to use the default driver on /dev/lirc0.
          • If the kernel has created a HID device for your remote your best bet is to use it as-is. We have not really figured out how to handle these devices besides patching the lirc HID driver.

          [tickets:#180]https://sourceforge.net/p/lirc/tickets/180/ Buffer Overflow

          Status: need-info
          Milestone: Future
          Created: Sun Apr 10, 2016 02:28 PM UTC by Michael Brougham
          Last Updated: Mon Jun 06, 2016 04:00 AM UTC
          Owner: nobody

          Linux diablo 4.4.5-1-ARCH #1 SMP PREEMPT Thu Mar 10 07:38:19 CET 2016 x86_64 GNU/Linux

          I compiled an installed lirc-0.9.4pre1. Using irrecord to setup my remote I am getting the following error.

          *** buffer overflow detected ***: irrecord terminated
          ======= Backtrace: =========
          /usr/lib/libc.so.6(+0x6f364)[0x7f3262291364]
          /usr/lib/libc.so.6(__fortify_fail+0x37)[0x7f326231a017]
          /usr/lib/libc.so.6(+0xf61d0)[0x7f32623181d0]
          /usr/lib/libc.so.6(+0xf663a)[0x7f326231863a]
          /usr/local/lib/libirrecord.so.0(flushhw+0x43)[0x7f32630664c3]
          irrecord[0x403dcb]
          irrecord[0x4028c2]
          /usr/lib/libc.so.6(__libc_start_main+0xf0)[0x7f3262242710]
          irrecord[0x4030d9]
          ======= Memory map: ========
          00400000-00407000 r-xp 00000000 fe:01 6841832 /usr/local/bin/irrecord
          00607000-00608000 rw-p 00007000 fe:01 6841832 /usr/local/bin/irrecord
          0165b000-0168d000 rw-p 00000000 00:00 0 [heap]
          7f32611ac000-7f32611b3000 r-xp 00000000 fe:01 6819012 /usr/lib/librt-2.23.so
          7f32611b3000-7f32613b2000 ---p 00007000 fe:01 6819012 /usr/lib/librt-2.23.so
          7f32613b2000-7f32613b3000 r--p 00006000 fe:01 6819012 /usr/lib/librt-2.23.so
          7f32613b3000-7f32613b4000 rw-p 00007000 fe:01 6819012 /usr/lib/librt-2.23.so
          7f32617d1000-7f32617e0000 r-xp 00000000 fe:01 6841814 /usr/local/lib/liblirc_driver.so.0.0.0
          7f32617e0000-7f32619df000 ---p 0000f000 fe:01 6841814 /usr/local/lib/liblirc_driver.so.0.0.0
          7f32619df000-7f32619e0000 rw-p 0000e000 fe:01 6841814 /usr/local/lib/liblirc_driver.so.0.0.0
          7f32619e0000-7f32619e1000 rw-p 00000000 00:00 0
          7f32619e1000-7f32619f9000 r-xp 00000000 fe:01 6818918 /usr/lib/libpthread-2.23.so
          7f32619f9000-7f3261bf8000 ---p 00018000 fe:01 6818918 /usr/lib/libpthread-2.23.so
          7f3261bf8000-7f3261bf9000 r--p 00017000 fe:01 6818918 /usr/lib/libpthread-2.23.so
          7f3261bf9000-7f3261bfa000 rw-p 00018000 fe:01 6818918 /usr/lib/libpthread-2.23.so
          7f3261bfa000-7f3261bfe000 rw-p 00000000 00:00 0
          7f3261e0c000-7f3261e0f000 r-xp 00000000 fe:01 7082137 /usr/local/lib/lirc/plugins/devinput.so
          7f3261e0f000-7f326200e000 ---p 00003000 fe:01 7082137 /usr/local/lib/lirc/plugins/devinput.so
          7f326200e000-7f326200f000 rw-p 00002000 fe:01 7082137 /usr/local/lib/lirc/plugins/devinput.so
          7f326200f000-7f3262010000 rw-p 00000000 00:00 0
          7f3262010000-7f326201b000 r-xp 00000000 fe:01 6819004 /usr/lib/libnss_files-2.23.so
          7f326201b000-7f326221a000 ---p 0000b000 fe:01 6819004 /usr/lib/libnss_files-2.23.so
          7f326221a000-7f326221b000 r--p 0000a000 fe:01 6819004 /usr/lib/libnss_files-2.23.so
          7f326221b000-7f326221c000 rw-p 0000b000 fe:01 6819004 /usr/lib/libnss_files-2.23.so
          7f326221c000-7f3262222000 rw-p 00000000 00:00 0
          7f3262222000-7f32623ba000 r-xp 00000000 fe:01 6818942 /usr/lib/libc-2.23.so
          7f32623ba000-7f32625b9000 ---p 00198000 fe:01 6818942 /usr/lib/libc-2.23.so
          7f32625b9000-7f32625bd000 r--p 00197000 fe:01 6818942 /usr/lib/libc-2.23.so
          7f32625bd000-7f32625bf000 rw-p 0019b000 fe:01 6818942 /usr/lib/libc-2.23.so
          7f32625bf000-7f32625c3000 rw-p 00000000 00:00 0
          7f32625c3000-7f32625d9000 r-xp 00000000 fe:01 6819275 /usr/lib/libgcc_s.so.1
          7f32625d9000-7f32627d8000 ---p 00016000 fe:01 6819275 /usr/lib/libgcc_s.so.1
          7f32627d9000-7f32628dc000 r-xp 00000000 fe:01 6819009 /usr/lib/libm-2.23.so
          7f32628dc000-7f3262adc000 ---p 00103000 fe:01 6819009 /usr/lib/libm-2.23.so
          7f3262adc000-7f3262add000 r--p 00103000 fe:01 6819009 /usr/lib/libm-2.23.so
          7f3262add000-7f3262ade000 rw-p 00104000 fe:01 6819009 /usr/lib/libm-2.23.so
          7f3262ade000-7f3262c50000 r-xp 00000000 fe:01 6819314 /usr/lib/libstdc++.so.6.0.21
          7f3262c50000-7f3262e50000 ---p 00172000 fe:01 6819314 /usr/lib/libstdc++.so.6.0.21
          7f3262e50000-7f3262e5a000 r--p 00172000 fe:01 6819314 /usr/lib/libstdc++.so.6.0.21
          7f3262e5a000-7f3262e5c000 rw-p 0017c000 fe:01 6819314 /usr/lib/libstdc++.so.6.0.21
          7f3262e5c000-7f3262e60000 rw-p 00000000 00:00 0
          7f3262e60000-7f3262e62000 r-xp 00000000 fe:01 6819008 /usr/lib/libdl-2.23.so
          7f3262e62000-7f3263062000 ---p 00002000 fe:01 6819008 /usr/lib/libdl-2.23.so
          7f3263062000-7f3263063000 r--p 00002000 fe:01 6819008 /usr/lib/libdl-2.23.so
          7f3263063000-7f3263064000 rw-p 00003000 fe:01 6819008 /usr/lib/libdl-2.23.so
          7f3263064000-7f326306c000 r-xp 00000000 fe:01 6841818 /usr/local/lib/libirrecord.so.0.0.0
          7f326306c000-7f326326c000 ---p 00008000 fe:01 6841818 /usr/local/lib/libirrecord.so.0.0.0
          7f326326c000-7f326326d000 rw-p 00008000 fe:01 6841818 /usr/local/lib/libirrecord.so.0.0.0
          7f326326d000-7f3263287000 r-xp 00000000 fe:01 6841806 /usr/local/lib/liblirc.so.0.0.0
          7f3263287000-7f3263486000 ---p 0001a000 fe:01 6841806 /usr/local/lib/liblirc.so.0.0.0
          7f3263486000-7f3263488000 rw-p 00019000 fe:01 6841806 /usr/local/lib/liblirc.so.0.0.0
          7f3263488000-7f3263489000 rw-p 00000000 00:00 0


          Sent from sourceforge.net because you indicated interest in https://sourceforge.net/p/lirc/tickets/180/

          To unsubscribe from further messages, please visit https://sourceforge.net/auth/subscriptions/

           

          Related

          Tickets: #180

          • Alec Leamas

            Alec Leamas - 2016-06-06

            On 06/06/16 17:43, Darrell wrote:

            Ya I think I have a method to get it to work with some custom C code,
            I lost the remote but I setup my Harmony remote for another remote and
            the kernel driver seems to parse the remote buttons fine, but they
            aren't mapped to key via its HID device, but that's good for my case
            as I want to map the buttons to key presses myself.

            If you do, please share this C code - HID devices + LIRC is a problem area.

            Cheers!

            --alec

             
  • Alec Leamas

    Alec Leamas - 2016-08-01
    • status: need-info --> closed
    • Resolution: na --> fixed
    • Milestone: Future --> 0.9.5
     
  • Alec Leamas

    Alec Leamas - 2016-08-01

    The crash seem to be a duplicate of [#208] fixed in [a8e979] (master) and [5effca] (release-0_9_4). Closing bug, please add comment if problem persists.

     

    Related

    Commit: [5effca]
    Tickets: #208
    Commit: [a8e979]


Log in to post a comment.

Monday.com Logo