qemu-irix/util
Markus Armbruster 820508eea6 acl: acl_add can't insert before last list element, fix
Watch this:

    $ upstream-qemu -nodefaults -S -vnc :0,acl,sasl -monitor stdio
    QEMU 1.5.50 monitor - type 'help' for more information
    (qemu) acl_add vnc.username drei allow
    acl: added rule at position 1
    (qemu) acl_show vnc.username
    policy: deny
    1: allow drei
    (qemu) acl_add vnc.username zwei allow 1
    acl: added rule at position 2
    (qemu) acl_show vnc.username
    policy: deny
    1: allow drei
    2: allow zwei
    (qemu) acl_add vnc.username eins allow 1
    acl: added rule at position 1
    (qemu) acl_show vnc.username
    policy: deny
    1: allow eins
    2: allow drei
    3: allow zwei

The second acl_add inserts at position 2 instead of 1.

Root cause is an off-by-one in qemu_acl_insert(): when index ==
acl->nentries, it appends instead of inserting before the last list
element.

Cc: qemu-stable@nongnu.org
Signed-off-by: Markus Armbruster <armbru@redhat.com>
Reviewed-by: Michael Roth <mdroth@linux.vnet.ibm.com>
Signed-off-by: Michael Tokarev <mjt@tls.msk.ru>
(cherry picked from commit 4999f3a8a6)

Signed-off-by: Michael Roth <mdroth@linux.vnet.ibm.com>
2013-08-12 15:14:38 -05:00
..
Makefile.objs create qemu_openpty_raw() helper function and move it to a separate file 2013-06-14 18:58:27 -05:00
acl.c acl: acl_add can't insert before last list element, fix 2013-08-12 15:14:38 -05:00
aes.c aes: make Td[0-5] and Te[0-5] tables non static 2013-04-13 13:51:57 +02:00
bitmap.c
bitops.c bitops: unroll while loop in find_next_bit() 2013-03-26 13:32:32 +01:00
cache-utils.c
compatfd.c
crc32c.c qemu: add castagnoli crc32c checksum algorithm 2013-05-03 10:31:58 +02:00
cutils.c ccid-card-passthru, dev-smartcard-reader: add debug environment variables 2013-04-24 11:47:57 +03:00
envlist.c util: Fix compilation of envlist.c for MinGW 2013-02-02 20:13:19 +00:00
error.c
event_notifier-posix.c sysemu: avoid proliferation of include/ subdirectories 2013-04-15 18:19:25 +02:00
event_notifier-win32.c
fifo8.c hw: move fifo.[ch] to libqemuutil 2013-03-01 13:53:10 +01:00
hbitmap.c hbitmap: Use non-bitops ctzl 2013-02-16 11:11:34 +00:00
hexdump.c Rename hexdump to avoid FreeBSD libutil conflict 2013-05-20 08:20:08 -05:00
host-utils.c host-utils: Improve mulu64 and muls64 2013-02-17 14:28:58 +00:00
iov.c Rename hexdump to avoid FreeBSD libutil conflict 2013-05-20 08:20:08 -05:00
module.c
notify.c
osdep.c win32: add readv/writev emulation 2013-04-29 10:52:36 +02:00
oslib-posix.c osdep: introduce qemu_anon_ram_free to free qemu_anon_ram_alloc-ed memory 2013-05-14 08:53:31 -05:00
oslib-win32.c osdep: introduce qemu_anon_ram_free to free qemu_anon_ram_alloc-ed memory 2013-05-14 08:53:31 -05:00
path.c Replace non-portable asprintf by g_strdup_printf 2013-01-19 10:24:43 +00:00
qemu-config.c monitor: introduce query-command-line-options 2013-04-25 10:07:06 -04:00
qemu-error.c
qemu-openpty.c create qemu_openpty_raw() helper function and move it to a separate file 2013-06-14 18:58:27 -05:00
qemu-option.c qemu-option: Add qemu_opts_absorb_qdict() 2013-03-15 16:07:49 +01:00
qemu-progress.c
qemu-sockets.c qemu-socket: allow hostnames starting with a digit 2013-06-18 12:51:46 -05:00
qemu-thread-posix.c
qemu-thread-win32.c
qemu-timer-common.c Allow clock_gettime() monotonic clock to be utilized on more OS's 2013-04-04 20:22:45 -05:00
unicode.c unicode: New mod_utf8_codepoint() 2013-04-13 19:39:59 +00:00
uri.c clean unnecessary code: don't check g_strdup arg for NULL 2013-05-12 13:25:55 +04:00