From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:48850) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1bZwxh-0001x5-2G for qemu-devel@nongnu.org; Wed, 17 Aug 2016 05:16:41 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1bZwxd-0005vw-Tz for qemu-devel@nongnu.org; Wed, 17 Aug 2016 05:16:34 -0400 Date: Wed, 17 Aug 2016 17:09:21 +0800 From: Fam Zheng Message-ID: <20160817090921.GD19326@al.usersys.redhat.com> References: <1471343175-14945-1-git-send-email-vsementsov@virtuozzo.com> <1471343175-14945-11-git-send-email-vsementsov@virtuozzo.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <1471343175-14945-11-git-send-email-vsementsov@virtuozzo.com> Subject: Re: [Qemu-devel] [PATCH 10/18] migration/qemu-file: add qemu_put_counted_string() List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Vladimir Sementsov-Ogievskiy Cc: qemu-devel@nongnu.org, qemu-block@nongnu.org, kwolf@redhat.com, peter.maydell@linaro.org, lirans@il.ibm.com, quintela@redhat.com, jsnow@redhat.com, armbru@redhat.com, mreitz@redhat.com, stefanha@redhat.com, den@openvz.org, amit.shah@redhat.com, pbonzini@redhat.com, dgilbert@redhat.com On Tue, 08/16 13:26, Vladimir Sementsov-Ogievskiy wrote: > Add function opposite to qemu_get_counted_string. > qemu_put_counted_string puts one-byte length of the string (string > should not be longer than 255 characters), and then it puts the string, > without last zero byte. > > Reviewed-by: John Snow > Signed-off-by: Vladimir Sementsov-Ogievskiy > --- > include/migration/qemu-file.h | 2 ++ > migration/qemu-file.c | 13 +++++++++++++ > 2 files changed, 15 insertions(+) > > diff --git a/include/migration/qemu-file.h b/include/migration/qemu-file.h > index abedd46..d860c92 100644 > --- a/include/migration/qemu-file.h > +++ b/include/migration/qemu-file.h > @@ -309,4 +309,6 @@ static inline void qemu_get_sbe64s(QEMUFile *f, int64_t *pv) > > size_t qemu_get_counted_string(QEMUFile *f, char buf[256]); > > +void qemu_put_counted_string(QEMUFile *f, const char *name); > + > #endif > diff --git a/migration/qemu-file.c b/migration/qemu-file.c > index bbc565e..6fcdd68 100644 > --- a/migration/qemu-file.c > +++ b/migration/qemu-file.c > @@ -690,6 +690,19 @@ size_t qemu_get_counted_string(QEMUFile *f, char buf[256]) > } > > /* > + * Put a string with one preceding byte containing its length. The length of > + * the string should be less than 256. > + */ > +void qemu_put_counted_string(QEMUFile *f, const char *name) "Name" is a poor name. Perhaps call it "buf" like qemu_get_counted_string? Fam > +{ > + size_t len = strlen(name); > + > + assert(len < 256); > + qemu_put_byte(f, len); > + qemu_put_buffer(f, (const uint8_t *)name, len); > +} > + > +/* > * Set the blocking state of the QEMUFile. > * Note: On some transports the OS only keeps a single blocking state for > * both directions, and thus changing the blocking on the main > -- > 1.8.3.1 > >