[PATCH] declare file-scoped globals "static"; use const, too
Jim Meyering
jim at meyering.net
Mon Oct 4 14:44:51 UTC 2010
This cleans up some scoping and const-correctness issues.
>From 9b68844bac11d8d0737c74986ca6add744acd223 Mon Sep 17 00:00:00 2001
From: Jim Meyering <meyering at redhat.com>
Date: Fri, 1 Oct 2010 19:57:52 +0200
Subject: [PATCH] declare file-scoped globals "static"; use const, too
---
rest.c | 88 +++++++++++++++++++++++++++++-----------------------------
state_defs.h | 3 --
template.c | 36 ++++++++++++------------
template.h | 22 +++++++-------
4 files changed, 73 insertions(+), 76 deletions(-)
diff --git a/rest.c b/rest.c
index 8df596a..c808d1a 100644
--- a/rest.c
+++ b/rest.c
@@ -69,16 +69,16 @@ typedef struct {
MHD_AccessHandlerCallback handler;
} rule;
-int fs_mode = 0;
-unsigned short my_port = MY_PORT;
+static int fs_mode = 0;
+static unsigned short my_port = MY_PORT;
const char *program_name;
-char *(reserved_name[]) = { "_default", "_query", "_new", NULL };
-char *(reserved_attr[]) = { "bucket", "key", "date", "etag", "loc", NULL };
+static char *(reserved_name[]) = { "_default", "_query", "_new", NULL };
+static char *(reserved_attr[]) = { "bucket", "key", "date", "etag", "loc", NULL };
-backend_func_tbl *main_func_tbl = &bad_func_tbl;
+static backend_func_tbl *main_func_tbl = &bad_func_tbl;
-void
+static void
free_ms (my_state *ms)
{
if (ms->cleanup & CLEANUP_CURL) {
@@ -112,7 +112,7 @@ free_ms (my_state *ms)
free(ms);
}
-int
+static int
validate_put (struct MHD_Connection *conn)
{
const char *mhdr;
@@ -127,7 +127,7 @@ validate_put (struct MHD_Connection *conn)
return (mhdr && !strcmp(mhdr,"master"));
}
-int
+static int
is_reserved (char *cand, char **resv_list)
{
int i;
@@ -141,7 +141,7 @@ is_reserved (char *cand, char **resv_list)
return FALSE;
}
-int
+static int
validate_url (const char *url)
{
char *slash = rindex(url,'/');
@@ -185,7 +185,7 @@ validate_url (const char *url)
* introduces some of its own complexity so see below for that.
**********/
-void
+static void
simple_closer (void *ctx)
{
my_state *ms = ctx;
@@ -194,7 +194,7 @@ simple_closer (void *ctx)
free_ms(ms);
}
-void
+static void
child_closer (void * ctx)
{
pipe_private *pp = ctx;
@@ -205,7 +205,7 @@ child_closer (void * ctx)
}
/* Invoked from MHD. */
-int
+static int
proxy_get_cons (void *ctx, uint64_t pos, char *buf, int max)
{
pipe_private *pp = ctx;
@@ -254,7 +254,7 @@ proxy_get_cons (void *ctx, uint64_t pos, char *buf, int max)
return done;
}
-int
+static int
proxy_get_data (void *cctx, struct MHD_Connection *conn, const char *url,
const char *method, const char *version, const char *data,
size_t *data_size, void **rctx)
@@ -357,7 +357,7 @@ proxy_get_data (void *cctx, struct MHD_Connection *conn, const char *url,
return MHD_YES;
}
-void
+static void
recheck_replication (my_state * ms, char *policy)
{
int rc;
@@ -404,7 +404,7 @@ recheck_replication (my_state * ms, char *policy)
}
}
-int
+static int
proxy_put_data (void *cctx, struct MHD_Connection *conn, const char *url,
const char *method, const char *version, const char *data,
size_t *data_size, void **rctx)
@@ -536,7 +536,7 @@ proxy_put_data (void *cctx, struct MHD_Connection *conn, const char *url,
return MHD_YES;
}
-int
+static int
proxy_get_attr (void *cctx, struct MHD_Connection *conn, const char *url,
const char *method, const char *version, const char *data,
size_t *data_size, void **rctx)
@@ -572,7 +572,7 @@ proxy_get_attr (void *cctx, struct MHD_Connection *conn, const char *url,
return MHD_YES;
}
-int
+static int
proxy_put_attr (void *cctx, struct MHD_Connection *conn, const char *url,
const char *method, const char *version, const char *data,
size_t *data_size, void **rctx)
@@ -680,7 +680,7 @@ proxy_put_attr (void *cctx, struct MHD_Connection *conn, const char *url,
* module to fetch one object name at a time.
**********/
-int
+static int
query_iterator (void *ctx, enum MHD_ValueKind kind, const char *key,
const char *filename, const char *content_type,
const char *transfer_encoding, const char *data,
@@ -701,7 +701,7 @@ query_iterator (void *ctx, enum MHD_ValueKind kind, const char *key,
}
/* MHD reader function during queries. Return -1 for EOF. */
-int
+static int
proxy_query_func (void *ctx, uint64_t pos, char *buf, int max)
{
my_state *ms = ctx;
@@ -768,7 +768,7 @@ proxy_query_func (void *ctx, uint64_t pos, char *buf, int max)
return len;
}
-int
+static int
proxy_query (void *cctx, struct MHD_Connection *conn, const char *url,
const char *method, const char *version, const char *data,
size_t *data_size, void **rctx)
@@ -832,7 +832,7 @@ proxy_query (void *cctx, struct MHD_Connection *conn, const char *url,
return MHD_YES;
}
-int
+static int
proxy_list_objs (void *cctx, struct MHD_Connection *conn, const char *url,
const char *method, const char *version, const char *data,
size_t *data_size, void **rctx)
@@ -863,7 +863,7 @@ proxy_list_objs (void *cctx, struct MHD_Connection *conn, const char *url,
return MHD_YES;
}
-int
+static int
proxy_delete (void *cctx, struct MHD_Connection *conn, const char *url,
const char *method, const char *version, const char *data,
size_t *data_size, void **rctx)
@@ -912,16 +912,16 @@ typedef struct {
char *link;
} fake_bucket_t;
-fake_bucket_t fake_bucket_list[] = {
+static const fake_bucket_t fake_bucket_list[] = {
{ "bucket_factory", "_new" },
{ "provider_list", "_providers" },
};
-int
+static int
root_blob_generator (void *ctx, uint64_t pos, char *buf, int max)
{
my_state *ms = ctx;
- fake_bucket_t * fb;
+ const fake_bucket_t *fb;
int len;
const char *accept_hdr;
const char *host;
@@ -995,7 +995,7 @@ root_blob_generator (void *ctx, uint64_t pos, char *buf, int max)
return len;
}
-int
+static int
proxy_api_root (void *cctx, struct MHD_Connection *conn, const char *url,
const char *method, const char *version, const char *data,
size_t *data_size, void **rctx)
@@ -1030,7 +1030,7 @@ proxy_api_root (void *cctx, struct MHD_Connection *conn, const char *url,
}
-int
+static int
post_iterator (void *ctx, enum MHD_ValueKind kind, const char *key,
const char *filename, const char *content_type,
const char *transfer_encoding, const char *data,
@@ -1075,7 +1075,7 @@ post_iterator (void *ctx, enum MHD_ValueKind kind, const char *key,
}
/* Returns TRUE if we found an *invalid* key. */
-gboolean
+static gboolean
post_find (gpointer key, gpointer value, gpointer ctx)
{
(void)value;
@@ -1089,7 +1089,7 @@ post_find (gpointer key, gpointer value, gpointer ctx)
return TRUE;
}
-void
+static void
post_foreach (gpointer key, gpointer value, gpointer ctx)
{
my_state *ms = ctx;
@@ -1099,7 +1099,7 @@ post_foreach (gpointer key, gpointer value, gpointer ctx)
meta_set_value(ms->bucket,ms->key,key,value);
}
-int
+static int
create_bucket (char *name)
{
int rc;
@@ -1131,7 +1131,7 @@ create_bucket (char *name)
return rc;
}
-int
+static int
proxy_bucket_post (void *cctx, struct MHD_Connection *conn, const char *url,
const char *method, const char *version, const char *data,
size_t *data_size, void **rctx)
@@ -1196,7 +1196,7 @@ proxy_bucket_post (void *cctx, struct MHD_Connection *conn, const char *url,
return MHD_YES;
}
-int
+static int
check_location (my_state *ms)
{
char *loc = g_hash_table_lookup(ms->dict,"depot");
@@ -1216,7 +1216,7 @@ check_location (my_state *ms)
return MHD_HTTP_OK;
}
-int
+static int
register_image (my_state *ms)
{
char *site;
@@ -1246,7 +1246,7 @@ register_image (my_state *ms)
return MHD_HTTP_BAD_REQUEST;
}
-int
+static int
proxy_object_post (void *cctx, struct MHD_Connection *conn, const char *url,
const char *method, const char *version, const char *data,
size_t *data_size, void **rctx)
@@ -1316,7 +1316,7 @@ proxy_object_post (void *cctx, struct MHD_Connection *conn, const char *url,
}
-int
+static int
prov_list_generator (void *ctx, uint64_t pos, char *buf, int max)
{
my_state *ms = ctx;
@@ -1377,7 +1377,7 @@ prov_list_generator (void *ctx, uint64_t pos, char *buf, int max)
return len;
}
-int
+static int
proxy_list_provs (void *cctx, struct MHD_Connection *conn, const char *url,
const char *method, const char *version, const char *data,
size_t *data_size, void **rctx)
@@ -1405,7 +1405,7 @@ proxy_list_provs (void *cctx, struct MHD_Connection *conn, const char *url,
return MHD_YES;
}
-int
+static int
prov_iterator (void *ctx, enum MHD_ValueKind kind, const char *key,
const char *filename, const char *content_type,
const char *transfer_encoding, const char *data,
@@ -1423,7 +1423,7 @@ prov_iterator (void *ctx, enum MHD_ValueKind kind, const char *key,
}
-int
+static int
proxy_update_prov (void *cctx, struct MHD_Connection *conn, const char *url,
const char *method, const char *version, const char *data,
size_t *data_size, void **rctx)
@@ -1478,7 +1478,7 @@ proxy_update_prov (void *cctx, struct MHD_Connection *conn, const char *url,
return MHD_YES;
}
-int
+static int
proxy_create_bucket (void *cctx, struct MHD_Connection *conn, const char *url,
const char *method, const char *version, const char *data,
size_t *data_size, void **rctx)
@@ -1509,7 +1509,7 @@ proxy_create_bucket (void *cctx, struct MHD_Connection *conn, const char *url,
return MHD_YES;
}
-rule my_rules[] = {
+static const rule my_rules[] = {
{ /* get bucket list */
"GET", URL_ROOT, proxy_api_root },
{ /* get object list */
@@ -1541,7 +1541,7 @@ rule my_rules[] = {
{ NULL, 0, NULL }
};
-url_type
+static url_type
parse_url (const char *url, my_state *ms)
{
unsigned short esize;
@@ -1594,7 +1594,7 @@ parse_url (const char *url, my_state *ms)
return eindex;
}
-int
+static int
access_handler (void *cctx, struct MHD_Connection *conn, const char *url,
const char *method, const char *version, const char *data,
size_t *data_size, void **rctx)
@@ -1663,7 +1663,7 @@ enum
GETOPT_VERSION_CHAR = (CHAR_MIN - 3)
};
-struct option my_options[] = {
+static const struct option my_options[] = {
{ "config", required_argument, NULL, 'c' },
{ "db", required_argument, NULL, 'd' },
{ "master", required_argument, NULL, 'm' },
@@ -1674,7 +1674,7 @@ struct option my_options[] = {
{ NULL, 0, NULL, '\0' }
};
-void
+static void
usage (int status)
{
if (status != EXIT_SUCCESS)
diff --git a/state_defs.h b/state_defs.h
index 5d690e0..b805bb8 100644
--- a/state_defs.h
+++ b/state_defs.h
@@ -67,7 +67,4 @@ typedef struct {
#define CLEANUP_TMPL 0x20
#define CLEANUP_URL 0x40
-
-void free_ms (my_state *ms);
-
#endif
diff --git a/template.c b/template.c
index 6deba4b..37d8ac9 100644
--- a/template.c
+++ b/template.c
@@ -20,25 +20,25 @@
#include <string.h>
#include "template.h"
-char xml_root_header[] = "\
+static const char xml_root_header[] = "\
<api service=\"%s\" version=\"%s\">\
";
-char xml_root_entry[] = "\
+static const char xml_root_entry[] = "\
\n\
<link rel=\"%s\" href=\"http://%s/\%s\"/>\
";
-char xml_root_footer[] = "\
+static const char xml_root_footer[] = "\
\n\
</api>\n\
";
-char xml_prov_header[] = "\
+static const char xml_prov_header[] = "\
<providers>\
";
-char xml_prov_entry[] = "\
+static const char xml_prov_entry[] = "\
\n\
<provider name=\"%s\">\n\
<type>%s</type>\n\
@@ -49,16 +49,16 @@ char xml_prov_entry[] = "\
</provider>\
";
-char xml_prov_footer[] = "\
+static const char xml_prov_footer[] = "\
\n\
</providers>\n\
";
-char xml_obj_header[] = "\
+static const char xml_obj_header[] = "\
<objects>\
";
-char xml_obj_entry[] = "\
+static const char xml_obj_entry[] = "\
\n\
<object>\n\
<bucket>%s</bucket>\n\
@@ -66,7 +66,7 @@ char xml_obj_entry[] = "\
</object>\
";
-char xml_obj_footer[] = "\
+static const char xml_obj_footer[] = "\
\n\
</objects>\n\
";
@@ -85,14 +85,14 @@ tmpl_format_t xml_format = {
.z_offset = 0
};
-char json_root_header[] = "\
+static const char json_root_header[] = "\
{\n\
\"service\": \"%s\",\n\
\"version\": \"%s\",\n\
[\
";
-char json_root_entry[] = "\
+static const char json_root_entry[] = "\
,\n\
{\n\
\"rel\": \"%s\",\n\
@@ -100,17 +100,17 @@ char json_root_entry[] = "\
}\
";
-char json_root_footer[] = "\
+static const char json_root_footer[] = "\
\n\
]\n\
}\n\
";
-char json_prov_header[] = "\
+static const char json_prov_header[] = "\
[\
";
-char json_prov_entry[] = "\
+static const char json_prov_entry[] = "\
,\n\
{\n\
\"name\": \"%s\",\n\
@@ -122,16 +122,16 @@ char json_prov_entry[] = "\
}\
";
-char json_prov_footer[] = "\
+static const char json_prov_footer[] = "\
\n\
]\n\
";
-char json_obj_header[] = "\
+static const char json_obj_header[] = "\
[\
";
-char json_obj_entry[] = "\
+static const char json_obj_entry[] = "\
,\n\
{\n\
\"bucket\": \"%s\",\n\
@@ -139,7 +139,7 @@ char json_obj_entry[] = "\
}\
";
-char json_obj_footer[] = "\
+static const char json_obj_footer[] = "\
\n\
]\n\
";
diff --git a/template.h b/template.h
index a4971a2..1bfdfb7 100644
--- a/template.h
+++ b/template.h
@@ -19,16 +19,16 @@
#define TMPL_BUF_SIZE 1024
typedef struct {
- char *root_header;
- char *root_entry;
- char *root_footer;
- char *prov_header;
- char *prov_entry;
- char *prov_footer;
- char *obj_header;
- char *obj_entry;
- char *obj_footer;
- int z_offset; /* offset to use when index is zero */
+ const char *root_header;
+ const char *root_entry;
+ const char *root_footer;
+ const char *prov_header;
+ const char *prov_entry;
+ const char *prov_footer;
+ const char *obj_header;
+ const char *obj_entry;
+ const char *obj_footer;
+ int z_offset; /* offset to use when index is zero */
} tmpl_format_t;
typedef struct {
@@ -36,7 +36,7 @@ typedef struct {
const char *base;
unsigned int index;
char raw_buf[TMPL_BUF_SIZE];
- char *buf;
+ const char *buf;
} tmpl_ctx_t;
#define TMPL_CTX_DONE ((tmpl_ctx_t *)(-1))
--
1.7.3.1.45.g9855b
More information about the iwhd-devel
mailing list