* [Qemu-devel] [PULL 0/2] vnc patch queue @ 2014-12-10 9:32 Gerd Hoffmann 2014-12-10 9:32 ` [Qemu-devel] [PULL 1/2] vnc-enc-tight: fix Arguments in wrong order Gerd Hoffmann ` (2 more replies) 0 siblings, 3 replies; 10+ messages in thread From: Gerd Hoffmann @ 2014-12-10 9:32 UTC (permalink / raw) To: qemu-devel; +Cc: Gerd Hoffmann Hi, Starting to flush queues after the 2.2 release, starting with two little vnc fixes. Well, keymap is strictly speaking not vnc, but vnc is the major user of keymap support, so I sticked it in here. please pull, Gerd The following changes since commit 45e1611de8be0eae55967694dd6e627c2dc354f2: Update version for v2.2.0 release (2014-12-09 12:13:37 +0000) are available in the git repository at: git://git.kraxel.org/qemu tags/pull-vnc-20141210-1 for you to fetch changes up to 43948386bb109b97b3de0bb48573f317bdcb5008: keymaps: correct keymaps.c following Qemu coding style (2014-12-10 10:08:12 +0100) ---------------------------------------------------------------- vnc-enc-tight fix, keymaps code style. ---------------------------------------------------------------- Gonglei (2): vnc-enc-tight: fix Arguments in wrong order keymaps: correct keymaps.c following Qemu coding style ui/keymaps.c | 196 +++++++++++++++++++++++++++++------------------------ ui/vnc-enc-tight.c | 2 +- 2 files changed, 109 insertions(+), 89 deletions(-) ^ permalink raw reply [flat|nested] 10+ messages in thread
* [Qemu-devel] [PULL 1/2] vnc-enc-tight: fix Arguments in wrong order 2014-12-10 9:32 [Qemu-devel] [PULL 0/2] vnc patch queue Gerd Hoffmann @ 2014-12-10 9:32 ` Gerd Hoffmann 2014-12-10 9:32 ` [Qemu-devel] [PULL 2/2] keymaps: correct keymaps.c following Qemu coding style Gerd Hoffmann 2014-12-11 11:40 ` [Qemu-devel] [PULL 0/2] vnc patch queue Peter Maydell 2 siblings, 0 replies; 10+ messages in thread From: Gerd Hoffmann @ 2014-12-10 9:32 UTC (permalink / raw) To: qemu-devel; +Cc: Gonglei, Gerd Hoffmann, Anthony Liguori From: Gonglei <arei.gonglei@huawei.com> Arguments in wrong order (SWAPPED_ARGUMENTS) The positions of arguments in the call to tight_fill_palette do not match the ordering of the parameters: &fg is passed to bg &bg is passed to fg Cc: Gerd Hoffmann <kraxel@redhat.com> Signed-off-by: Gonglei <arei.gonglei@huawei.com> Signed-off-by: Gerd Hoffmann <kraxel@redhat.com> --- ui/vnc-enc-tight.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ui/vnc-enc-tight.c b/ui/vnc-enc-tight.c index 3d1b5cd..9a9ddf2 100644 --- a/ui/vnc-enc-tight.c +++ b/ui/vnc-enc-tight.c @@ -1489,7 +1489,7 @@ static int send_sub_rect(VncState *vs, int x, int y, int w, int h) } #endif - colors = tight_fill_palette(vs, x, y, w * h, &fg, &bg, &palette); + colors = tight_fill_palette(vs, x, y, w * h, &bg, &fg, &palette); #ifdef CONFIG_VNC_JPEG if (allow_jpeg && vs->tight.quality != (uint8_t)-1) { -- 1.8.3.1 ^ permalink raw reply related [flat|nested] 10+ messages in thread
* [Qemu-devel] [PULL 2/2] keymaps: correct keymaps.c following Qemu coding style 2014-12-10 9:32 [Qemu-devel] [PULL 0/2] vnc patch queue Gerd Hoffmann 2014-12-10 9:32 ` [Qemu-devel] [PULL 1/2] vnc-enc-tight: fix Arguments in wrong order Gerd Hoffmann @ 2014-12-10 9:32 ` Gerd Hoffmann 2014-12-11 11:40 ` [Qemu-devel] [PULL 0/2] vnc patch queue Peter Maydell 2 siblings, 0 replies; 10+ messages in thread From: Gerd Hoffmann @ 2014-12-10 9:32 UTC (permalink / raw) To: qemu-devel; +Cc: Gonglei, Gerd Hoffmann, Anthony Liguori From: Gonglei <arei.gonglei@huawei.com> It's hard to read because of the confused coding style in this file. Let's correct it following Qemu coding style. Signed-off-by: Gonglei <arei.gonglei@huawei.com> Signed-off-by: Gerd Hoffmann <kraxel@redhat.com> --- ui/keymaps.c | 196 ++++++++++++++++++++++++++++++++--------------------------- 1 file changed, 108 insertions(+), 88 deletions(-) diff --git a/ui/keymaps.c b/ui/keymaps.c index 80d658d..49410ae 100644 --- a/ui/keymaps.c +++ b/ui/keymaps.c @@ -26,18 +26,20 @@ #include "sysemu/sysemu.h" static int get_keysym(const name2keysym_t *table, - const char *name) + const char *name) { const name2keysym_t *p; for(p = table; p->name != NULL; p++) { - if (!strcmp(p->name, name)) + if (!strcmp(p->name, name)) { return p->keysym; + } } if (name[0] == 'U' && strlen(name) == 5) { /* try unicode Uxxxx */ char *end; int ret = (int)strtoul(name + 1, &end, 16); - if (*end == '\0' && ret > 0) - return ret; + if (*end == '\0' && ret > 0) { + return ret; + } } return 0; } @@ -46,19 +48,20 @@ static int get_keysym(const name2keysym_t *table, static void add_to_key_range(struct key_range **krp, int code) { struct key_range *kr; for (kr = *krp; kr; kr = kr->next) { - if (code >= kr->start && code <= kr->end) - break; - if (code == kr->start - 1) { - kr->start--; - break; - } - if (code == kr->end + 1) { - kr->end++; - break; - } + if (code >= kr->start && code <= kr->end) { + break; + } + if (code == kr->start - 1) { + kr->start--; + break; + } + if (code == kr->end + 1) { + kr->end++; + break; + } } if (kr == NULL) { - kr = g_malloc0(sizeof(*kr)); + kr = g_malloc0(sizeof(*kr)); kr->start = kr->end = code; kr->next = *krp; *krp = kr; @@ -67,30 +70,30 @@ static void add_to_key_range(struct key_range **krp, int code) { static void add_keysym(char *line, int keysym, int keycode, kbd_layout_t *k) { if (keysym < MAX_NORMAL_KEYCODE) { - //fprintf(stderr,"Setting keysym %s (%d) to %d\n",line,keysym,keycode); - k->keysym2keycode[keysym] = keycode; + /* fprintf(stderr,"Setting keysym %s (%d) to %d\n", + line, keysym, keycode); */ + k->keysym2keycode[keysym] = keycode; } else { - if (k->extra_count >= MAX_EXTRA_COUNT) { - fprintf(stderr, - "Warning: Could not assign keysym %s (0x%x) because of memory constraints.\n", - line, keysym); - } else { + if (k->extra_count >= MAX_EXTRA_COUNT) { + fprintf(stderr, "Warning: Could not assign keysym %s (0x%x)" + " because of memory constraints.\n", line, keysym); + } else { #if 0 - fprintf(stderr, "Setting %d: %d,%d\n", - k->extra_count, keysym, keycode); + fprintf(stderr, "Setting %d: %d,%d\n", + k->extra_count, keysym, keycode); #endif - k->keysym2keycode_extra[k->extra_count]. - keysym = keysym; - k->keysym2keycode_extra[k->extra_count]. - keycode = keycode; - k->extra_count++; - } + k->keysym2keycode_extra[k->extra_count]. + keysym = keysym; + k->keysym2keycode_extra[k->extra_count]. + keycode = keycode; + k->extra_count++; + } } } static kbd_layout_t *parse_keyboard_layout(const name2keysym_t *table, - const char *language, - kbd_layout_t * k) + const char *language, + kbd_layout_t *k) { FILE *f; char * filename; @@ -101,69 +104,78 @@ static kbd_layout_t *parse_keyboard_layout(const name2keysym_t *table, f = filename ? fopen(filename, "r") : NULL; g_free(filename); if (!f) { - fprintf(stderr, - "Could not read keymap file: '%s'\n", language); - return NULL; + fprintf(stderr, "Could not read keymap file: '%s'\n", language); + return NULL; } - if (!k) - k = g_malloc0(sizeof(kbd_layout_t)); + if (!k) { + k = g_malloc0(sizeof(kbd_layout_t)); + } for(;;) { - if (fgets(line, 1024, f) == NULL) + if (fgets(line, 1024, f) == NULL) { break; + } len = strlen(line); - if (len > 0 && line[len - 1] == '\n') + if (len > 0 && line[len - 1] == '\n') { line[len - 1] = '\0'; - if (line[0] == '#') - continue; - if (!strncmp(line, "map ", 4)) - continue; - if (!strncmp(line, "include ", 8)) { - parse_keyboard_layout(table, line + 8, k); + } + if (line[0] == '#') { + continue; + } + if (!strncmp(line, "map ", 4)) { + continue; + } + if (!strncmp(line, "include ", 8)) { + parse_keyboard_layout(table, line + 8, k); } else { - char *end_of_keysym = line; - while (*end_of_keysym != 0 && *end_of_keysym != ' ') - end_of_keysym++; - if (*end_of_keysym) { - int keysym; - *end_of_keysym = 0; - keysym = get_keysym(table, line); - if (keysym == 0) { - // fprintf(stderr, "Warning: unknown keysym %s\n", line); - } else { - const char *rest = end_of_keysym + 1; + char *end_of_keysym = line; + while (*end_of_keysym != 0 && *end_of_keysym != ' ') { + end_of_keysym++; + } + if (*end_of_keysym) { + int keysym; + *end_of_keysym = 0; + keysym = get_keysym(table, line); + if (keysym == 0) { + /* fprintf(stderr, "Warning: unknown keysym %s\n", line);*/ + } else { + const char *rest = end_of_keysym + 1; int keycode = strtol(rest, NULL, 0); if (strstr(rest, "numlock")) { - add_to_key_range(&k->keypad_range, keycode); - add_to_key_range(&k->numlock_range, keysym); - //fprintf(stderr, "keypad keysym %04x keycode %d\n", keysym, keycode); - } + add_to_key_range(&k->keypad_range, keycode); + add_to_key_range(&k->numlock_range, keysym); + /* fprintf(stderr, "keypad keysym %04x keycode %d\n", + keysym, keycode); */ + } if (strstr(rest, "shift")) { - keycode |= SCANCODE_SHIFT; + keycode |= SCANCODE_SHIFT; } if (strstr(rest, "altgr")) { - keycode |= SCANCODE_ALTGR; + keycode |= SCANCODE_ALTGR; } if (strstr(rest, "ctrl")) { - keycode |= SCANCODE_CTRL; + keycode |= SCANCODE_CTRL; } - add_keysym(line, keysym, keycode, k); + add_keysym(line, keysym, keycode, k); if (strstr(rest, "addupper")) { - char *c; - for (c = line; *c; c++) - *c = qemu_toupper(*c); - keysym = get_keysym(table, line); - if (keysym) - add_keysym(line, keysym, keycode | SCANCODE_SHIFT, k); - } - } - } - } + char *c; + for (c = line; *c; c++) { + *c = qemu_toupper(*c); + } + keysym = get_keysym(table, line); + if (keysym) { + add_keysym(line, keysym, + keycode | SCANCODE_SHIFT, k); + } + } + } + } + } } fclose(f); return k; @@ -180,19 +192,23 @@ int keysym2scancode(void *kbd_layout, int keysym) { kbd_layout_t *k = kbd_layout; if (keysym < MAX_NORMAL_KEYCODE) { - if (k->keysym2keycode[keysym] == 0) - fprintf(stderr, "Warning: no scancode found for keysym %d\n", - keysym); - return k->keysym2keycode[keysym]; + if (k->keysym2keycode[keysym] == 0) { + fprintf(stderr, "Warning: no scancode found for keysym %d\n", + keysym); + } + return k->keysym2keycode[keysym]; } else { - int i; + int i; #ifdef XK_ISO_Left_Tab - if (keysym == XK_ISO_Left_Tab) - keysym = XK_Tab; + if (keysym == XK_ISO_Left_Tab) { + keysym = XK_Tab; + } #endif - for (i = 0; i < k->extra_count; i++) - if (k->keysym2keycode_extra[i].keysym == keysym) - return k->keysym2keycode_extra[i].keycode; + for (i = 0; i < k->extra_count; i++) { + if (k->keysym2keycode_extra[i].keysym == keysym) { + return k->keysym2keycode_extra[i].keycode; + } + } } return 0; } @@ -202,9 +218,11 @@ int keycode_is_keypad(void *kbd_layout, int keycode) kbd_layout_t *k = kbd_layout; struct key_range *kr; - for (kr = k->keypad_range; kr; kr = kr->next) - if (keycode >= kr->start && keycode <= kr->end) + for (kr = k->keypad_range; kr; kr = kr->next) { + if (keycode >= kr->start && keycode <= kr->end) { return 1; + } + } return 0; } @@ -213,8 +231,10 @@ int keysym_is_numlock(void *kbd_layout, int keysym) kbd_layout_t *k = kbd_layout; struct key_range *kr; - for (kr = k->numlock_range; kr; kr = kr->next) - if (keysym >= kr->start && keysym <= kr->end) + for (kr = k->numlock_range; kr; kr = kr->next) { + if (keysym >= kr->start && keysym <= kr->end) { return 1; + } + } return 0; } -- 1.8.3.1 ^ permalink raw reply related [flat|nested] 10+ messages in thread
* Re: [Qemu-devel] [PULL 0/2] vnc patch queue 2014-12-10 9:32 [Qemu-devel] [PULL 0/2] vnc patch queue Gerd Hoffmann 2014-12-10 9:32 ` [Qemu-devel] [PULL 1/2] vnc-enc-tight: fix Arguments in wrong order Gerd Hoffmann 2014-12-10 9:32 ` [Qemu-devel] [PULL 2/2] keymaps: correct keymaps.c following Qemu coding style Gerd Hoffmann @ 2014-12-11 11:40 ` Peter Maydell 2 siblings, 0 replies; 10+ messages in thread From: Peter Maydell @ 2014-12-11 11:40 UTC (permalink / raw) To: Gerd Hoffmann; +Cc: QEMU Developers On 10 December 2014 at 09:32, Gerd Hoffmann <kraxel@redhat.com> wrote: > Hi, > > Starting to flush queues after the 2.2 release, starting with two little > vnc fixes. Well, keymap is strictly speaking not vnc, but vnc is the > major user of keymap support, so I sticked it in here. > > please pull, > Gerd > > The following changes since commit 45e1611de8be0eae55967694dd6e627c2dc354f2: > > Update version for v2.2.0 release (2014-12-09 12:13:37 +0000) > > are available in the git repository at: > > git://git.kraxel.org/qemu tags/pull-vnc-20141210-1 > > for you to fetch changes up to 43948386bb109b97b3de0bb48573f317bdcb5008: > > keymaps: correct keymaps.c following Qemu coding style (2014-12-10 10:08:12 +0100) > > ---------------------------------------------------------------- > vnc-enc-tight fix, keymaps code style. > > ---------------------------------------------------------------- Applied, thanks. -- PMM ^ permalink raw reply [flat|nested] 10+ messages in thread
* [Qemu-devel] [PULL 0/2] vnc patch queue @ 2014-10-28 10:59 Gerd Hoffmann 2014-10-30 19:11 ` Peter Maydell 0 siblings, 1 reply; 10+ messages in thread From: Gerd Hoffmann @ 2014-10-28 10:59 UTC (permalink / raw) To: qemu-devel; +Cc: Gerd Hoffmann Hi, Here comes the vnc patch queue with two fixes. please pull, Gerd The following changes since commit 3e9418e160cd8901c83a3c88967158084f5b5c03: Revert "main-loop.c: Handle SIGINT, SIGHUP and SIGTERM synchronously" (2014-10-27 15:05:09 +0000) are available in the git repository at: git://git.kraxel.org/qemu tags/pull-vnc-20141028-1 for you to fetch changes up to 9d6b20704734fe1ab789400806ebd54f579d50a2: vnc: return directly if no vnc client connected (2014-10-28 11:51:04 +0100) ---------------------------------------------------------------- vnc: return directly if no vnc client connected vnc: sanitize bits_per_pixel from the client (CVE-2014-7815) ---------------------------------------------------------------- ChenLiang (1): vnc: return directly if no vnc client connected Petr Matousek (1): vnc: sanitize bits_per_pixel from the client ui/vnc.c | 20 +++++++++++++++----- 1 file changed, 15 insertions(+), 5 deletions(-) ^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [Qemu-devel] [PULL 0/2] vnc patch queue 2014-10-28 10:59 Gerd Hoffmann @ 2014-10-30 19:11 ` Peter Maydell 0 siblings, 0 replies; 10+ messages in thread From: Peter Maydell @ 2014-10-30 19:11 UTC (permalink / raw) To: Gerd Hoffmann; +Cc: QEMU Developers On 28 October 2014 10:59, Gerd Hoffmann <kraxel@redhat.com> wrote: > Hi, > > Here comes the vnc patch queue with two fixes. > > please pull, > Gerd > > The following changes since commit 3e9418e160cd8901c83a3c88967158084f5b5c03: > > Revert "main-loop.c: Handle SIGINT, SIGHUP and SIGTERM synchronously" (2014-10-27 15:05:09 +0000) > > are available in the git repository at: > > git://git.kraxel.org/qemu tags/pull-vnc-20141028-1 > > for you to fetch changes up to 9d6b20704734fe1ab789400806ebd54f579d50a2: > > vnc: return directly if no vnc client connected (2014-10-28 11:51:04 +0100) > > ---------------------------------------------------------------- > vnc: return directly if no vnc client connected > vnc: sanitize bits_per_pixel from the client (CVE-2014-7815) > > ---------------------------------------------------------------- Applied, thanks. -- PMM ^ permalink raw reply [flat|nested] 10+ messages in thread
* [Qemu-devel] [PULL 0/2] vnc patch queue @ 2014-09-18 6:33 Gerd Hoffmann 2014-09-18 18:30 ` Peter Maydell 0 siblings, 1 reply; 10+ messages in thread From: Gerd Hoffmann @ 2014-09-18 6:33 UTC (permalink / raw) To: qemu-devel; +Cc: Gerd Hoffmann Hi, Two little vnc patches. please pull, Gerd The following changes since commit e4d50d47a9eb15f42bdd561803a29a4d7c3eb8ec: qemu-char: Rename register_char_driver_qapi() to register_char_driver() (2014-09-16 23:36:32 +0100) are available in the git repository at: git://git.kraxel.org/qemu tags/pull-vnc-20140918-1 for you to fetch changes up to 9d64fab42274fb50a39bab184f79d0239596ba4a: vnc-tls: Clean up dead store in vnc_set_x509_credential() (2014-09-18 08:01:53 +0200) ---------------------------------------------------------------- vnc: set TCP_NODELAY, cleanup in tlc code ---------------------------------------------------------------- Markus Armbruster (1): vnc-tls: Clean up dead store in vnc_set_x509_credential() Peter Lieven (1): ui/vnc: set TCP_NODELAY ui/vnc-tls.c | 2 -- ui/vnc.c | 1 + 2 files changed, 1 insertion(+), 2 deletions(-) ^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [Qemu-devel] [PULL 0/2] vnc patch queue 2014-09-18 6:33 Gerd Hoffmann @ 2014-09-18 18:30 ` Peter Maydell 0 siblings, 0 replies; 10+ messages in thread From: Peter Maydell @ 2014-09-18 18:30 UTC (permalink / raw) To: Gerd Hoffmann; +Cc: QEMU Developers On 17 September 2014 23:33, Gerd Hoffmann <kraxel@redhat.com> wrote: > Hi, > > Two little vnc patches. > > please pull, > Gerd > > The following changes since commit e4d50d47a9eb15f42bdd561803a29a4d7c3eb8ec: > > qemu-char: Rename register_char_driver_qapi() to register_char_driver() (2014-09-16 23:36:32 +0100) > > are available in the git repository at: > > git://git.kraxel.org/qemu tags/pull-vnc-20140918-1 > > for you to fetch changes up to 9d64fab42274fb50a39bab184f79d0239596ba4a: > > vnc-tls: Clean up dead store in vnc_set_x509_credential() (2014-09-18 08:01:53 +0200) > > ---------------------------------------------------------------- > vnc: set TCP_NODELAY, cleanup in tlc code > > ---------------------------------------------------------------- > Markus Armbruster (1): > vnc-tls: Clean up dead store in vnc_set_x509_credential() > > Peter Lieven (1): > ui/vnc: set TCP_NODELAY > > ui/vnc-tls.c | 2 -- > ui/vnc.c | 1 + > 2 files changed, 1 insertion(+), 2 deletions(-) Applied, thanks. -- PMM ^ permalink raw reply [flat|nested] 10+ messages in thread
* [Qemu-devel] [PULL 0/2] vnc patch queue @ 2014-07-01 11:33 Gerd Hoffmann 2014-07-01 15:16 ` Peter Maydell 0 siblings, 1 reply; 10+ messages in thread From: Gerd Hoffmann @ 2014-07-01 11:33 UTC (permalink / raw) To: qemu-devel; +Cc: Gerd Hoffmann Hi, Carrying two bugfixes. please pull, Gerd The following changes since commit b3959efdbb2dc3d5959e3b0a8e188126930beca8: Merge remote-tracking branch 'remotes/afaerber/tags/qom-devices-for-2.1' into staging (2014-07-01 11:00:53 +0100) are available in the git repository at: git://git.kraxel.org/qemu tags/pull-vnc-20140701-1 for you to fetch changes up to bea60dd7679364493a0d7f5b54316c767cf894ef: ui/vnc: fix potential memory corruption issues (2014-07-01 13:26:40 +0200) ---------------------------------------------------------------- vnc: two bugfixes (by Peter Lieven). ---------------------------------------------------------------- Peter Lieven (2): ui/vnc: limit client_cut_text msg payload size ui/vnc: fix potential memory corruption issues ui/vnc.c | 162 +++++++++++++++++++++++++++++++-------------------------------- ui/vnc.h | 14 +++--- 2 files changed, 87 insertions(+), 89 deletions(-) ^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [Qemu-devel] [PULL 0/2] vnc patch queue 2014-07-01 11:33 Gerd Hoffmann @ 2014-07-01 15:16 ` Peter Maydell 0 siblings, 0 replies; 10+ messages in thread From: Peter Maydell @ 2014-07-01 15:16 UTC (permalink / raw) To: Gerd Hoffmann; +Cc: QEMU Developers On 1 July 2014 12:33, Gerd Hoffmann <kraxel@redhat.com> wrote: > Hi, > > Carrying two bugfixes. > > please pull, > Gerd > > The following changes since commit b3959efdbb2dc3d5959e3b0a8e188126930beca8: > > Merge remote-tracking branch 'remotes/afaerber/tags/qom-devices-for-2.1' into staging (2014-07-01 11:00:53 +0100) > > are available in the git repository at: > > > git://git.kraxel.org/qemu tags/pull-vnc-20140701-1 > > for you to fetch changes up to bea60dd7679364493a0d7f5b54316c767cf894ef: > > ui/vnc: fix potential memory corruption issues (2014-07-01 13:26:40 +0200) > > ---------------------------------------------------------------- > vnc: two bugfixes (by Peter Lieven). Applied, thanks -- PMM ^ permalink raw reply [flat|nested] 10+ messages in thread
end of thread, other threads:[~2014-12-11 11:41 UTC | newest] Thread overview: 10+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2014-12-10 9:32 [Qemu-devel] [PULL 0/2] vnc patch queue Gerd Hoffmann 2014-12-10 9:32 ` [Qemu-devel] [PULL 1/2] vnc-enc-tight: fix Arguments in wrong order Gerd Hoffmann 2014-12-10 9:32 ` [Qemu-devel] [PULL 2/2] keymaps: correct keymaps.c following Qemu coding style Gerd Hoffmann 2014-12-11 11:40 ` [Qemu-devel] [PULL 0/2] vnc patch queue Peter Maydell -- strict thread matches above, loose matches on Subject: below -- 2014-10-28 10:59 Gerd Hoffmann 2014-10-30 19:11 ` Peter Maydell 2014-09-18 6:33 Gerd Hoffmann 2014-09-18 18:30 ` Peter Maydell 2014-07-01 11:33 Gerd Hoffmann 2014-07-01 15:16 ` Peter Maydell
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for NNTP newsgroup(s).