From patchwork Tue Jun 15 22:38:42 2010 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jan Kiszka X-Patchwork-Id: 55823 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Received: from lists.gnu.org (lists.gnu.org [199.232.76.165]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (Client did not present a certificate) by ozlabs.org (Postfix) with ESMTPS id D6656B7D9A for ; Wed, 16 Jun 2010 09:11:27 +1000 (EST) Received: from localhost ([127.0.0.1]:48897 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1OOfHe-0001p0-GF for incoming@patchwork.ozlabs.org; Tue, 15 Jun 2010 19:11:06 -0400 Received: from [140.186.70.92] (port=33471 helo=eggs.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1OOemr-000850-E7 for qemu-devel@nongnu.org; Tue, 15 Jun 2010 18:39:23 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.69) (envelope-from ) id 1OOeml-0005Zd-Dl for qemu-devel@nongnu.org; Tue, 15 Jun 2010 18:39:17 -0400 Received: from fmmailgate03.web.de ([217.72.192.234]:51565) by eggs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1OOeml-0005Z4-1v for qemu-devel@nongnu.org; Tue, 15 Jun 2010 18:39:11 -0400 Received: from smtp04.web.de ( [172.20.0.225]) by fmmailgate03.web.de (Postfix) with ESMTP id 7481215693624; Wed, 16 Jun 2010 00:39:10 +0200 (CEST) Received: from [92.74.52.35] (helo=localhost.localdomain) by smtp04.web.de with asmtp (TLSv1:AES256-SHA:256) (WEB.DE 4.110 #4) id 1OOemk-0003C9-01; Wed, 16 Jun 2010 00:39:10 +0200 From: Jan Kiszka To: qemu-devel@nongnu.org, Anthony Liguori Date: Wed, 16 Jun 2010 00:38:42 +0200 Message-Id: <59eceb561268a85962a3b19826ca3985d27c4413.1276641524.git.jan.kiszka@web.de> X-Mailer: git-send-email 1.6.0.2 In-Reply-To: References: In-Reply-To: References: X-Sender: jan.kiszka@web.de X-Provags-ID: V01U2FsdGVkX18WCPkekjAUf2lwSFDarQxZSE3jIZcjqx6P3WwO w3ROPSZH8XlpvmAZgFYJ6rpoXy3bGV00qi0dhgJ35FTGbpAKaF mOi+UD26Y= X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.4-2.6 Cc: Juan Quintela , Jan Kiszka , Markus Armbruster , Luiz Capitulino , Blue Swirl , Avi Kivity Subject: [Qemu-devel] [PATCH v4 18/23] QMP: Reserve namespace for complex object classes X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: qemu-devel.nongnu.org List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org Errors-To: qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org From: Jan Kiszka This reserves JSON objects that contain the key '__class__' for QMP-specific complex objects. First user will be the buffer class. Signed-off-by: Jan Kiszka --- QMP/qmp-spec.txt | 16 +++++++++++++--- 1 files changed, 13 insertions(+), 3 deletions(-) diff --git a/QMP/qmp-spec.txt b/QMP/qmp-spec.txt index 9d30a8c..fa1dd62 100644 --- a/QMP/qmp-spec.txt +++ b/QMP/qmp-spec.txt @@ -146,6 +146,15 @@ The format is: For a listing of supported asynchronous events, please, refer to the qmp-events.txt file. +2.6 Complex object classes +-------------------------- + +JSON objects that contain the key-value pair '"__class__": json-string' are +reserved for QMP-specific complex object classes that. QMP specifies which +further keys each of these objects include and how they are encoded. + +So far, no complex object class is specified. + 3. QMP Examples =============== @@ -229,9 +238,10 @@ avoid modifying QMP. Both upstream and downstream need to take care to preserve long-term compatibility and interoperability. To help with that, QMP reserves JSON object member names beginning with -'__' (double underscore) for downstream use ("downstream names"). This -means upstream will never use any downstream names for its commands, -arguments, errors, asynchronous events, and so forth. +'__' (double underscore) for downstream use ("downstream names"). Downstream +names MUST NOT end with '__' as this pattern is reserved for QMP-defined JSON +object classes. Upstream will never use any downstream names for its +commands, arguments, errors, asynchronous events, and so forth. Any new names downstream wishes to add must begin with '__'. To ensure compatibility with other downstreams, it is strongly