aboutsummaryrefslogtreecommitdiff
path: root/src/util
diff options
context:
space:
mode:
authorChristian Grothoff <christian@grothoff.org>2014-11-27 11:35:13 +0000
committerChristian Grothoff <christian@grothoff.org>2014-11-27 11:35:13 +0000
commit393b5b11525badff59ff6df0572c5cdf42c1587c (patch)
treebee65dc1a8798ec27e82623f631dd88a39bd09fc /src/util
parent68ac96f244a53f6a5dcdd939183d3904f43e4984 (diff)
downloadgnunet-393b5b11525badff59ff6df0572c5cdf42c1587c.tar.gz
gnunet-393b5b11525badff59ff6df0572c5cdf42c1587c.zip
-return const, do not mangle const input
Diffstat (limited to 'src/util')
-rw-r--r--src/util/mq.c14
1 files changed, 4 insertions, 10 deletions
diff --git a/src/util/mq.c b/src/util/mq.c
index 8098daac2..0d769b150 100644
--- a/src/util/mq.c
+++ b/src/util/mq.c
@@ -809,36 +809,30 @@ GNUNET_MQ_destroy (struct GNUNET_MQ_Handle *mq)
809} 809}
810 810
811 811
812struct GNUNET_MessageHeader * 812const struct GNUNET_MessageHeader *
813GNUNET_MQ_extract_nested_mh_ (const struct GNUNET_MessageHeader *mh, 813GNUNET_MQ_extract_nested_mh_ (const struct GNUNET_MessageHeader *mh,
814 uint16_t base_size) 814 uint16_t base_size)
815{ 815{
816 uint16_t whole_size; 816 uint16_t whole_size;
817 uint16_t nested_size; 817 uint16_t nested_size;
818 struct GNUNET_MessageHeader *nested_msg; 818 const struct GNUNET_MessageHeader *nested_msg;
819 819
820 whole_size = ntohs (mh->size); 820 whole_size = ntohs (mh->size);
821 GNUNET_assert (whole_size >= base_size); 821 GNUNET_assert (whole_size >= base_size);
822
823 nested_size = whole_size - base_size; 822 nested_size = whole_size - base_size;
824
825 if (0 == nested_size) 823 if (0 == nested_size)
826 return NULL; 824 return NULL;
827
828 if (nested_size < sizeof (struct GNUNET_MessageHeader)) 825 if (nested_size < sizeof (struct GNUNET_MessageHeader))
829 { 826 {
830 GNUNET_break_op (0); 827 GNUNET_break_op (0);
831 return NULL; 828 return NULL;
832 } 829 }
833 830 nested_msg = (const struct GNUNET_MessageHeader *) ((char *) mh + base_size);
834 nested_msg = (struct GNUNET_MessageHeader *) ((char *) mh + base_size);
835
836 if (ntohs (nested_msg->size) != nested_size) 831 if (ntohs (nested_msg->size) != nested_size)
837 { 832 {
838 GNUNET_break_op (0); 833 GNUNET_break_op (0);
839 nested_msg->size = htons (nested_size); 834 return NULL;
840 } 835 }
841
842 return nested_msg; 836 return nested_msg;
843} 837}
844 838