This allows the compiler to check if someone writes into string
literals.
Signed-off-by: Stephan Gatzka <[email protected]>
---
msg.c | 2 +-
msg.h | 2 +-
pmc.c | 5 +++--
pmc_common.c | 2 +-
pmc_common.h | 2 +-
raw.c | 4 ++--
sk.c | 12 ++++++------
sk.h | 10 +++++-----
transport.c | 2 +-
transport.h | 2 +-
transport_private.h | 2 +-
udp.c | 4 ++--
udp6.c | 4 ++--
uds.c | 2 +-
util.c | 6 +++---
util.h | 6 +++---
16 files changed, 34 insertions(+), 33 deletions(-)
diff --git a/msg.c b/msg.c
index 4af9782..7edbdd2 100644
--- a/msg.c
+++ b/msg.c
@@ -379,7 +379,7 @@ int msg_pre_send(struct ptp_message *m)
return 0;
}
-char *msg_type_string(int type)
+const char *msg_type_string(int type)
{
switch (type) {
case SYNC:
diff --git a/msg.h b/msg.h
index 1fad5e9..7f471ca 100644
--- a/msg.h
+++ b/msg.h
@@ -298,7 +298,7 @@ int msg_pre_send(struct ptp_message *m);
* @param type Value of the messageType field as returned by @ref msg_type().
* @return String describing the message type.
*/
-char *msg_type_string(int type);
+const char *msg_type_string(int type);
/**
* Print messages for debugging purposes.
diff --git a/pmc.c b/pmc.c
index 7ea0368..077991b 100644
--- a/pmc.c
+++ b/pmc.c
@@ -109,7 +109,7 @@ struct management_id idtab[] = {
{ "PORT_DATA_SET_NP", PORT_DATA_SET_NP, do_set_action },
};
-static char *action_string[] = {
+static const char *action_string[] = {
"GET",
"SET",
"RESPONSE",
@@ -711,7 +711,8 @@ static void usage(char *progname)
int main(int argc, char *argv[])
{
- char *iface_name = NULL, *progname;
+ const char *iface_name = NULL;
+ char *progname;
int c, cnt, length, tmo = -1, batch_mode = 0, zero_datalen = 0;
char line[1024], *command = NULL;
enum transport_type transport_type = TRANS_UDP_IPV4;
diff --git a/pmc_common.c b/pmc_common.c
index 9b0720f..e52d68f 100644
--- a/pmc_common.c
+++ b/pmc_common.c
@@ -61,7 +61,7 @@ struct pmc {
int zero_length_gets;
};
-struct pmc *pmc_create(enum transport_type transport_type, char *iface_name,
+struct pmc *pmc_create(enum transport_type transport_type, const char
*iface_name,
UInteger8 boundary_hops, UInteger8 domain_number,
UInteger8 transport_specific, int zero_datalen)
{
diff --git a/pmc_common.h b/pmc_common.h
index a7b4ae7..850d85f 100644
--- a/pmc_common.h
+++ b/pmc_common.h
@@ -25,7 +25,7 @@
struct pmc;
-struct pmc *pmc_create(enum transport_type transport_type, char *iface_name,
+struct pmc *pmc_create(enum transport_type transport_type, const char
*iface_name,
UInteger8 boundary_hops, UInteger8 domain_number,
UInteger8 transport_specific, int zero_datalen);
diff --git a/raw.c b/raw.c
index d87edbf..1bfc1bb 100644
--- a/raw.c
+++ b/raw.c
@@ -148,7 +148,7 @@ static int raw_close(struct transport *t, struct fdarray
*fda)
unsigned char ptp_dst_mac[MAC_LEN] = { PTP_DST_MAC };
unsigned char p2p_dst_mac[MAC_LEN] = { P2P_DST_MAC };
-static int open_socket(char *name, int event)
+static int open_socket(const char *name, int event)
{
struct sockaddr_ll addr;
int fd, index;
@@ -184,7 +184,7 @@ no_socket:
return -1;
}
-static int raw_open(struct transport *t, char *name,
+static int raw_open(struct transport *t, const char *name,
struct fdarray *fda, enum timestamp_type ts_type)
{
struct raw *raw = container_of(t, struct raw, t);
diff --git a/sk.c b/sk.c
index 1fbbcc5..8d70d1a 100644
--- a/sk.c
+++ b/sk.c
@@ -40,7 +40,7 @@ int sk_check_fupsync;
/* private methods */
-static int hwts_init(int fd, char *device, int rx_filter, int one_step)
+static int hwts_init(int fd, const char *device, int rx_filter, int one_step)
{
struct ifreq ifreq;
struct hwtstamp_config cfg, req;
@@ -77,7 +77,7 @@ static int hwts_init(int fd, char *device, int rx_filter, int
one_step)
/* public methods */
-int sk_interface_index(int fd, char *name)
+int sk_interface_index(int fd, const char *name)
{
struct ifreq ifreq;
int err;
@@ -102,7 +102,7 @@ int sk_general_init(int fd)
return 0;
}
-int sk_get_ts_info(char *name, struct sk_ts_info *sk_info)
+int sk_get_ts_info(const char *name, struct sk_ts_info *sk_info)
{
#ifdef ETHTOOL_GET_TS_INFO
struct ethtool_ts_info info;
@@ -146,7 +146,7 @@ failed:
return -1;
}
-int sk_interface_macaddr(char *name, unsigned char *mac, int len)
+int sk_interface_macaddr(const char *name, unsigned char *mac, int len)
{
struct ifreq ifreq;
int err, fd;
@@ -172,7 +172,7 @@ int sk_interface_macaddr(char *name, unsigned char *mac,
int len)
return 0;
}
-int sk_interface_addr(char *name, int family, uint8_t *addr, int len)
+int sk_interface_addr(const char *name, int family, uint8_t *addr, int len)
{
struct ifaddrs *ifaddr, *i;
int copy_len, result = -1;
@@ -285,7 +285,7 @@ int sk_receive(int fd, void *buf, int buflen,
return cnt;
}
-int sk_timestamping_init(int fd, char *device, enum timestamp_type type,
+int sk_timestamping_init(int fd, const char *device, enum timestamp_type type,
enum transport_type transport)
{
int err, filter1, filter2 = 0, flags, one_step;
diff --git a/sk.h b/sk.h
index 895840f..ea338c1 100644
--- a/sk.h
+++ b/sk.h
@@ -44,7 +44,7 @@ struct sk_ts_info {
* @param device The name of the network interface of interest.
* @return The result from the SIOCGIFINDEX ioctl.
*/
-int sk_interface_index(int fd, char *device);
+int sk_interface_index(int fd, const char *device);
/**
* Prepare a given socket for PTP "general" messages.
@@ -59,7 +59,7 @@ int sk_general_init(int fd);
* @param info Struct containing obtained timestamping information.
* @return zero on success, negative on failure.
*/
-int sk_get_ts_info(char *name, struct sk_ts_info *sk_info);
+int sk_get_ts_info(const char *name, struct sk_ts_info *sk_info);
/**
* Obtain the MAC address of a network interface.
@@ -68,7 +68,7 @@ int sk_get_ts_info(char *name, struct sk_ts_info *sk_info);
* @param len Length of 'mac'
* @return Zero on success, non-zero otherwise.
*/
-int sk_interface_macaddr(char *name, unsigned char *mac, int len);
+int sk_interface_macaddr(const char *name, unsigned char *mac, int len);
/**
* Obtains the first IP address assigned to a network interface.
@@ -78,7 +78,7 @@ int sk_interface_macaddr(char *name, unsigned char *mac, int
len);
* @param len Length of 'addr'
* @return The number of bytes written to addr on success, -1 otherwise.
*/
-int sk_interface_addr(char *name, int family, uint8_t *addr, int len);
+int sk_interface_addr(const char *name, int family, uint8_t *addr, int len);
/**
* Read a message from a socket.
@@ -100,7 +100,7 @@ int sk_receive(int fd, void *buf, int buflen,
* @param transport The type of transport used.
* @return Zero on success, non-zero otherwise.
*/
-int sk_timestamping_init(int fd, char *device, enum timestamp_type type,
+int sk_timestamping_init(int fd, const char *device, enum timestamp_type type,
enum transport_type transport);
/**
diff --git a/transport.c b/transport.c
index 3c70b2b..b5346e5 100644
--- a/transport.c
+++ b/transport.c
@@ -29,7 +29,7 @@ int transport_close(struct transport *t, struct fdarray *fda)
return t->close(t, fda);
}
-int transport_open(struct transport *t, char *name,
+int transport_open(struct transport *t, const char *name,
struct fdarray *fda, enum timestamp_type tt)
{
return t->open(t, name, fda, tt);
diff --git a/transport.h b/transport.h
index 34934fe..aa2018b 100644
--- a/transport.h
+++ b/transport.h
@@ -64,7 +64,7 @@ struct transport;
int transport_close(struct transport *t, struct fdarray *fda);
-int transport_open(struct transport *t, char *name,
+int transport_open(struct transport *t, const char *name,
struct fdarray *fda, enum timestamp_type tt);
int transport_recv(struct transport *t, int fd,
diff --git a/transport_private.h b/transport_private.h
index 0c553e1..7124f94 100644
--- a/transport_private.h
+++ b/transport_private.h
@@ -30,7 +30,7 @@ struct transport {
int (*close)(struct transport *t, struct fdarray *fda);
- int (*open)(struct transport *t, char *name, struct fdarray *fda,
+ int (*open)(struct transport *t, const char *name, struct fdarray *fda,
enum timestamp_type tt);
int (*recv)(struct transport *t, int fd, void *buf, int buflen,
diff --git a/udp.c b/udp.c
index be7f2b7..1046059 100644
--- a/udp.c
+++ b/udp.c
@@ -93,7 +93,7 @@ static int udp_close(struct transport *t, struct fdarray *fda)
return 0;
}
-static int open_socket(char *name, struct in_addr mc_addr[2], short port)
+static int open_socket(const char *name, struct in_addr mc_addr[2], short port)
{
struct sockaddr_in addr;
int fd, index, on = 1;
@@ -148,7 +148,7 @@ enum { MC_PRIMARY, MC_PDELAY };
static struct in_addr mcast_addr[2];
-static int udp_open(struct transport *t, char *name, struct fdarray *fda,
+static int udp_open(struct transport *t, const char *name, struct fdarray *fda,
enum timestamp_type ts_type)
{
struct udp *udp = container_of(t, struct udp, t);
diff --git a/udp6.c b/udp6.c
index e0d1256..e26195b 100644
--- a/udp6.c
+++ b/udp6.c
@@ -100,7 +100,7 @@ static int udp6_close(struct transport *t, struct fdarray
*fda)
return 0;
}
-static int open_socket_ipv6(char *name, struct in6_addr mc_addr[2], short port,
+static int open_socket_ipv6(const char *name, struct in6_addr mc_addr[2],
short port,
int *interface_index)
{
struct sockaddr_in6 addr;
@@ -158,7 +158,7 @@ enum { MC_PRIMARY, MC_PDELAY };
static struct in6_addr mc6_addr[2];
-static int udp6_open(struct transport *t, char *name, struct fdarray *fda,
+static int udp6_open(struct transport *t, const char *name, struct fdarray
*fda,
enum timestamp_type ts_type)
{
struct udp6 *udp6 = container_of(t, struct udp6, t);
diff --git a/uds.c b/uds.c
index 1dbfd6c..35f5ecc 100644
--- a/uds.c
+++ b/uds.c
@@ -46,7 +46,7 @@ static int uds_close(struct transport *t, struct fdarray *fda)
return 0;
}
-static int uds_open(struct transport *t, char *name, struct fdarray *fda,
+static int uds_open(struct transport *t, const char *name, struct fdarray *fda,
enum timestamp_type tt)
{
int fd, err;
diff --git a/util.c b/util.c
index 4b0ef6b..56af8ef 100644
--- a/util.c
+++ b/util.c
@@ -28,7 +28,7 @@
#define NS_PER_HOUR (3600 * NS_PER_SEC)
#define NS_PER_DAY (24 * NS_PER_HOUR)
-char *ps_str[] = {
+const char *ps_str[] = {
"NONE",
"INITIALIZING",
"FAULTY",
@@ -42,7 +42,7 @@ char *ps_str[] = {
"GRAND_MASTER",
};
-char *ev_str[] = {
+const char *ev_str[] = {
"NONE",
"POWERUP",
"INITIALIZE",
@@ -98,7 +98,7 @@ int str2pid(const char *s, struct PortIdentity *result)
return -1;
}
-int generate_clock_identity(struct ClockIdentity *ci, char *name)
+int generate_clock_identity(struct ClockIdentity *ci, const char *name)
{
unsigned char mac[6];
if (sk_interface_macaddr(name, mac, sizeof(mac)))
diff --git a/util.h b/util.h
index 8cf3890..3fae51c 100644
--- a/util.h
+++ b/util.h
@@ -26,12 +26,12 @@
/**
* Table of human readable strings, one for each port state.
*/
-extern char *ps_str[];
+extern const char *ps_str[];
/**
* Table of human readable strings, one for each port event.
*/
-extern char *ev_str[];
+extern const char *ev_str[];
/**
* Convert a clock identity into a human readable string.
@@ -64,7 +64,7 @@ char *pid2str(struct PortIdentity *id);
*/
int str2pid(const char *s, struct PortIdentity *result);
-int generate_clock_identity(struct ClockIdentity *ci, char *name);
+int generate_clock_identity(struct ClockIdentity *ci, const char *name);
/**
* Copies a PTPText to a static_ptp_text. This copies the text into
--
1.8.5.4
------------------------------------------------------------------------------
Managing the Performance of Cloud-Based Applications
Take advantage of what the Cloud has to offer - Avoid Common Pitfalls.
Read the Whitepaper.
http://pubads.g.doubleclick.net/gampad/clk?id=121051231&iu=/4140/ostg.clktrk
_______________________________________________
Linuxptp-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/linuxptp-devel