Commit ca56f5b5 authored by Paul Burton's avatar Paul Burton Committed by Riku Voipio
Browse files

linux-user: support the KDSIGACCEPT ioctl



Add a definition of the KDSIGACCEPT ioctl & allow its use by target
programs.

Signed-off-by: default avatarPaul Burton <paul@archlinuxmips.org>
Signed-off-by: default avatarRiku Voipio <riku.voipio@linaro.org>
parent b67d8031
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -64,6 +64,7 @@
     IOCTL(KDSKBLED, 0, TYPE_INT)
     IOCTL(KDGETLED, 0, TYPE_INT)
     IOCTL(KDSETLED, 0, TYPE_INT)
     IOCTL_SPECIAL(KDSIGACCEPT, 0, do_ioctl_kdsigaccept, TYPE_INT)

     IOCTL(BLKROSET, IOC_W, MK_PTR(TYPE_INT))
     IOCTL(BLKROGET, IOC_R, MK_PTR(TYPE_INT))
+7 −0
Original line number Diff line number Diff line
@@ -3689,6 +3689,13 @@ static abi_long do_ioctl_rt(const IOCTLEntry *ie, uint8_t *buf_temp,
    return ret;
}

static abi_long do_ioctl_kdsigaccept(const IOCTLEntry *ie, uint8_t *buf_temp,
                                     int fd, abi_long cmd, abi_long arg)
{
    int sig = target_to_host_signal(arg);
    return get_errno(ioctl(fd, ie->host_cmd, sig));
}

static IOCTLEntry ioctl_entries[] = {
#define IOCTL(cmd, access, ...) \
    { TARGET_ ## cmd, cmd, #cmd, access, 0, {  __VA_ARGS__ } },
+1 −0
Original line number Diff line number Diff line
@@ -831,6 +831,7 @@ struct target_pollfd {
#define TARGET_KDSKBLED        0x4B65	/* set led flags (not lights) */
#define TARGET_KDGETLED        0x4B31	/* return current led state */
#define TARGET_KDSETLED        0x4B32	/* set led state [lights, not flags] */
#define TARGET_KDSIGACCEPT     0x4B4E

#define TARGET_SIOCATMARK      0x8905