main: Address strncat() overflow warning

```
FAILED: debug-trigger.p/main.c.o
ccache cc -Idebug-trigger.p -I. -I.. -fdiagnostics-color=always -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Wextra -Wpedantic -Werror -std=gnu18 -O0 -g -MD -MQ debug-trigger.p/main.c.o -MF debug-trigger.p/main.c.o.d -o debug-trigger.p/main.c.o -c ../main.c
../main.c: In function ‘main’:
../main.c:549:17: error: ‘strncat’ specified bound 4096 equals destination size [-Werror=stringop-overflow=]
  549 |                 strncat(devnode, devid, sizeof(devnode));
      |                 ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
cc1: all warnings being treated as errors
```

Change-Id: Id9abfb900ad7601acd595febf00eb92c5a56d3af
Signed-off-by: Andrew Jeffery <andrew@aj.id.au>
1 file changed
tree: 91043e312de99366eee4729bb79d52be35601b8d
  1. meson/
  2. systemd/
  3. udev/
  4. LICENSE
  5. main.c
  6. meson.build
  7. meson_options.txt
  8. OWNERS
  9. README.md
README.md

BMC Debug Trigger

debug-trigger listens for an external signal that the BMC is in some way unresponsive. When the signal is received it triggers a crash to collect debug data and reboots the system in the hope that it will recover.

Trigger sources

debug-trigger implements a simple protocol over an LPC KCS device as its trigger source.

Debug actions

debug-trigger implements a single action once the trigger event is received, which is to crash the kernel via /proc/sysrq-trigger. For systems with kdump configured this results in collection of system state as context for why the system was externally unresponsive.