From patchwork Thu Jan 22 00:27:02 2009 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Geoff Levand X-Patchwork-Id: 19748 X-Patchwork-Delegate: jk@ozlabs.org Return-Path: X-Original-To: patchwork-incoming@ozlabs.org Delivered-To: patchwork-incoming@ozlabs.org Received: from ozlabs.org (localhost [127.0.0.1]) by ozlabs.org (Postfix) with ESMTP id 14D70DE042 for ; Thu, 22 Jan 2009 14:38:16 +1100 (EST) X-Original-To: cbe-oss-dev@ozlabs.org Delivered-To: cbe-oss-dev@ozlabs.org Received: from hera.kernel.org (hera.kernel.org [140.211.167.34]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (Client did not present a certificate) by ozlabs.org (Postfix) with ESMTPS id 8974CDDF92; Thu, 22 Jan 2009 14:32:10 +1100 (EST) Received: from hera.kernel.org (IDENT:U2FsdGVkX1/c3pXdVUT3pa2FzbS5aazCAPasx5+cB+c@localhost [127.0.0.1]) by hera.kernel.org (8.14.2/8.14.2) with ESMTP id n0M3ACK9003228 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO); Thu, 22 Jan 2009 03:10:12 GMT Received: (from geoff@localhost) by hera.kernel.org (8.14.2/8.13.1/Submit) id n0M3ABgV003225; Thu, 22 Jan 2009 03:10:11 GMT Message-Id: <20090122002653.819997798@am.sony.com> References: <20090122002653.146035454@am.sony.com> User-Agent: quilt/0.46-1 Date: Wed, 21 Jan 2009 16:27:02 -0800 From: Geoff Levand To: Jeremy Kerr Content-Disposition: inline; filename=make-device-const.diff X-Virus-Scanned: ClamAV 0.93.3/8886/Wed Jan 21 22:46:06 2009 on hera.kernel.org X-Virus-Status: Clean X-Spam-Status: No, score=-2.6 required=5.0 tests=BAYES_00, UNPARSEABLE_RELAY autolearn=ham version=3.2.5 X-Spam-Checker-Version: SpamAssassin 3.2.5 (2008-06-10) on hera.kernel.org X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.0 (hera.kernel.org [127.0.0.1]); Thu, 22 Jan 2009 03:10:13 +0000 (UTC) Cc: cbe-oss-dev@ozlabs.org Subject: [Cbe-oss-dev] [patch 9/9] petitboot: Make device instance constant X-BeenThere: cbe-oss-dev@ozlabs.org X-Mailman-Version: 2.1.11 Precedence: list List-Id: Discussion about Open Source Software for the Cell Broadband Engine List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , MIME-Version: 1.0 Sender: cbe-oss-dev-bounces+patchwork-incoming=ozlabs.org@ozlabs.org Errors-To: cbe-oss-dev-bounces+patchwork-incoming=ozlabs.org@ozlabs.org Make the instance of devices read-only. Signed-off-by: Geoff Levand --- discover/device-handler.c | 2 +- discover/device-handler.h | 2 +- discover/discover-server.c | 4 ++-- lib/pb-protocol/pb-protocol.c | 16 +++++++++------- lib/pb-protocol/pb-protocol.h | 8 ++++---- 5 files changed, 17 insertions(+), 15 deletions(-) --- a/discover/device-handler.c +++ b/discover/device-handler.c @@ -54,7 +54,7 @@ static struct device device = { }; int device_handler_get_current_devices(struct device_handler *handler, - struct device **devices) + const struct device **devices) { *devices = &device; --- a/discover/device-handler.h +++ b/discover/device-handler.h @@ -25,7 +25,7 @@ struct device_handler *device_handler_in void device_handler_destroy(struct device_handler *devices); int device_handler_get_current_devices(struct device_handler *handler, - struct device **devices); + const struct device **devices); int device_handler_event(struct device_handler *handler, struct udev_event *event); --- a/discover/discover-server.c +++ b/discover/discover-server.c @@ -89,7 +89,7 @@ static int client_write_message(struct d } static int write_add_message(struct discover_server *server, - struct client *client, struct device *dev) + struct client *client, const struct device *dev) { struct pb_protocol_message *message; int len; @@ -127,7 +127,7 @@ static int write_remove_message(struct d static int discover_server_process(void *arg) { struct discover_server *server = arg; - struct device *devices; + const struct device *devices; struct client *client; int fd, i, n_devices; --- a/lib/pb-protocol/pb-protocol.c +++ b/lib/pb-protocol/pb-protocol.c @@ -85,7 +85,8 @@ int pb_protocol_serialise_string(char *p * @param[out] str Pointer to resuling string * @return zero on success, non-zero on failure */ -static int read_string(void *ctx, char **pos, unsigned int *len, char **str) +static int read_string(void *ctx, const char **pos, unsigned int *len, + char **str) { uint32_t str_len, read_len; @@ -113,9 +114,10 @@ static int read_string(void *ctx, char * } char *pb_protocol_deserialise_string(void *ctx, - struct pb_protocol_message *message) + const struct pb_protocol_message *message) { - char *buf, *str; + const char *buf; + char *str; unsigned int len; len = message->payload_len; @@ -134,7 +136,7 @@ static int optional_strlen(const char *s return strlen(str); } -int pb_protocol_device_len(struct device *dev) +int pb_protocol_device_len(const struct device *dev) { struct boot_option *opt; int len; @@ -158,7 +160,7 @@ int pb_protocol_device_len(struct device return len; } -int pb_protocol_serialise_device(struct device *dev, char *buf, int buf_len) +int pb_protocol_serialise_device(const struct device *dev, char *buf, int buf_len) { struct boot_option *opt; uint32_t n; @@ -277,10 +279,10 @@ struct pb_protocol_message *pb_protocol_ struct device *pb_protocol_deserialise_device(void *ctx, - struct pb_protocol_message *message) + const struct pb_protocol_message *message) { struct device *dev; - char *pos; + const char *pos; int i, n_options; unsigned int len; --- a/lib/pb-protocol/pb-protocol.h +++ b/lib/pb-protocol/pb-protocol.h @@ -43,13 +43,13 @@ struct boot_option { struct boot_option *boot_option_copy(void* ctx, const struct boot_option *opt); -int pb_protocol_device_len(struct device *dev); +int pb_protocol_device_len(const struct device *dev); int pb_protocol_serialise_string(char *pos, const char *str); char *pb_protocol_deserialise_string(void *ctx, - struct pb_protocol_message *message); + const struct pb_protocol_message *message); -int pb_protocol_serialise_device(struct device *dev, char *buf, int buf_len); +int pb_protocol_serialise_device(const struct device *dev, char *buf, int buf_len); int pb_protocol_write_message(int fd, struct pb_protocol_message *message); @@ -59,6 +59,6 @@ struct pb_protocol_message *pb_protocol_ struct pb_protocol_message *pb_protocol_read_message(void *ctx, int fd); struct device *pb_protocol_deserialise_device(void *ctx, - struct pb_protocol_message *message); + const struct pb_protocol_message *message); #endif /* _PB_PROTOCOL_H */