(/home/sate/Testcases/c/cve/wireshark-1.2.0/epan/dissectors/packet-megaco.c) |
| |
| 1912 | | | dissect_megaco_eventsdescriptor(tvbuff_t *tvb, packet_info *pinfo, proto_tree *megaco_tree_command_line, gint tvb_RBRKT, gint tvb_previous_offset) |
| 1913 | | | { |
| 1914 | | | |
| 1915 | | | gint tokenlen, tvb_current_offset, tvb_next_offset, tvb_help_offset; |
| 1916 | | | gint tvb_events_end_offset, tvb_events_start_offset, tvb_LBRKT; |
| 1917 | | | proto_tree *megaco_eventsdescriptor_tree, *megaco_eventsdescriptor_ti; |
| 1918 | | | |
| 1919 | | | guint8 tempchar; |
| 1920 | | | gint requested_event_start_offset, requested_event_end_offset; |
| 1921 | | | proto_tree *megaco_requestedevent_tree, *megaco_requestedevent_ti; |
| 1922 | | | |
| 1923 | | | tokenlen = 0; |
| 1924 | | | tvb_current_offset = 0; |
| 1925 | | | tvb_next_offset = 0; |
| 1926 | | | tvb_help_offset = 0; |
| 1927 | | | tvb_events_end_offset = 0; |
| 1928 | | | tvb_events_start_offset = 0; |
| 1929 | | | tvb_help_offset = 0; |
Useless Assignment
This code assigns the variable the same value it already had. |
|
| 1930 | | | requested_event_start_offset = 0; |
| 1931 | | | requested_event_end_offset = 0; |
| 1932 | | | |
| 1933 | | | tokenlen = (tvb_RBRKT+1) - tvb_previous_offset; |
| 1934 | | | |
| 1935 | | | megaco_eventsdescriptor_ti = proto_tree_add_text(megaco_tree_command_line, tvb, tvb_previous_offset, tokenlen, |
| 1936 | | | "%s", tvb_format_text(tvb, tvb_previous_offset, tokenlen)); |
| 1937 | | | |
| 1938 | | | |
| 1939 | | | |
| 1940 | | | |
| 1941 | | | megaco_eventsdescriptor_tree = proto_item_add_subtree(megaco_eventsdescriptor_ti, ett_megaco_eventsdescriptor); |
| 1942 | | | |
| 1943 | | | tvb_current_offset = tvb_find_guint8(tvb, tvb_previous_offset, tvb_RBRKT, '='); |
| 1944 | | | tvb_next_offset = tvb_find_guint8(tvb, tvb_previous_offset, tvb_RBRKT, '{'); |
| 1945 | | | |
| 1946 | | | if ( tvb_current_offset < tvb_RBRKT && tvb_current_offset != -1 ){ |
| 1947 | | | |
| 1948 | | | tvb_current_offset = megaco_tvb_skip_wsp(tvb, tvb_current_offset +1); |
| 1949 | | | tvb_help_offset = megaco_tvb_skip_wsp_return(tvb, tvb_next_offset-1); |
| 1950 | | | |
| 1951 | | | tokenlen = tvb_help_offset - tvb_current_offset; |
| 1952 | | | |
| 1953 | | | proto_tree_add_string(megaco_eventsdescriptor_tree, hf_megaco_requestid, tvb, |
| 1954 | | | tvb_current_offset, tokenlen, |
| 1955 | | | tvb_format_text(tvb, tvb_current_offset, |
| 1956 | | | tokenlen)); |
| 1957 | | | |
| 1958 | | | tvb_events_end_offset = tvb_RBRKT; |
| 1959 | | | tvb_events_start_offset = tvb_previous_offset; |
| 1960 | | | |
| 1961 | | | tvb_RBRKT = tvb_next_offset+1; |
| 1962 | | | tvb_LBRKT = tvb_next_offset+1; |
| 1963 | | | tvb_previous_offset = megaco_tvb_skip_wsp(tvb, tvb_next_offset+1); |
| 1964 | | | |
| 1965 | | | |
| 1966 | | | do { |
| 1967 | | | |
| 1968 | | | tvb_RBRKT = tvb_find_guint8(tvb, tvb_RBRKT+1, |
| 1969 | | | tvb_events_end_offset, '}'); |
| 1970 | | | tvb_LBRKT = tvb_find_guint8(tvb, tvb_LBRKT, |
| 1971 | | | tvb_events_end_offset, '{'); |
| 1972 | | | |
| 1973 | | | tvb_current_offset = tvb_find_guint8(tvb, tvb_previous_offset, |
| 1974 | | | tvb_events_end_offset, ','); |
| 1975 | | | |
| 1976 | | | if (tvb_current_offset == -1 || tvb_current_offset > tvb_events_end_offset){ |
| 1977 | | | tvb_current_offset = tvb_events_end_offset; |
| 1978 | | | } |
| 1979 | | | |
| 1980 | | | |
| 1981 | | | |
| 1982 | | | |
| 1983 | | | if ( tvb_LBRKT > tvb_current_offset || tvb_LBRKT == -1 ){ |
| 1984 | | | |
| 1985 | | | tvb_RBRKT = megaco_tvb_skip_wsp_return(tvb, tvb_current_offset-1)-1; |
| 1986 | | | } |
| 1987 | | | |
| 1988 | | | |
| 1989 | | | |
| 1990 | | | if ( (tvb_current_offset > tvb_LBRKT && tvb_LBRKT != -1)){ |
| 1991 | | | |
| 1992 | | | while ( tvb_LBRKT != -1 && tvb_RBRKT > tvb_LBRKT ){ |
| 1993 | | | |
| 1994 | | | tvb_LBRKT = tvb_find_guint8(tvb, tvb_LBRKT+1, |
| 1995 | | | tvb_events_end_offset, '{'); |
| 1996 | | | if ( tvb_LBRKT < tvb_RBRKT && tvb_LBRKT != -1) |
| 1997 | | | tvb_RBRKT = tvb_find_guint8(tvb, tvb_RBRKT+1, |
| 1998 | | | tvb_events_end_offset, '}'); |
| 1999 | | | } |
| 2000 | | | |
| 2001 | | | } |
| 2002 | | | |
| 2003 | | | tvb_help_offset = tvb_find_guint8(tvb, tvb_previous_offset, tvb_events_end_offset, '{'); |
| 2004 | | | |
| 2005 | | | |
| 2006 | | | |
| 2007 | | | if ( tvb_help_offset < tvb_RBRKT && tvb_help_offset != -1 ){ |
| 2008 | | | |
| 2009 | | | requested_event_start_offset = tvb_help_offset; |
| 2010 | | | requested_event_end_offset = tvb_RBRKT; |
| 2011 | | | tvb_help_offset = megaco_tvb_skip_wsp_return(tvb, tvb_help_offset-1); |
| 2012 | | | tokenlen = tvb_help_offset - tvb_previous_offset; |
| 2013 | | | } |
| 2014 | | | |
| 2015 | | | else { |
| 2016 | | | tokenlen = tvb_RBRKT+1 - tvb_previous_offset; |
| 2017 | | | } |
| 2018 | | | |
| 2019 | | | megaco_requestedevent_ti = proto_tree_add_item(megaco_eventsdescriptor_tree,hf_megaco_pkgdname,tvb,tvb_previous_offset,tokenlen, FALSE); |
| 2020 | | | megaco_requestedevent_tree = proto_item_add_subtree(megaco_requestedevent_ti, ett_megaco_requestedevent); |
| 2021 | | | |
| 2022 | | | if ( tvb_help_offset < tvb_RBRKT && tvb_help_offset != -1 ){ |
| 2023 | | | |
| 2024 | | | tvb_help_offset = megaco_tvb_skip_wsp(tvb, requested_event_start_offset +1); |
| 2025 | | | tempchar = tvb_get_guint8(tvb, tvb_help_offset); |
| 2026 | | | |
| 2027 | | | requested_event_start_offset = megaco_tvb_skip_wsp(tvb, requested_event_start_offset +1); |
| 2028 | | | requested_event_end_offset = megaco_tvb_skip_wsp_return(tvb, requested_event_end_offset-1); |
| 2029 | | | |
| 2030 | | | if ( tempchar == 'D' || tempchar == 'd'){ |
| 2031 | | | dissect_megaco_digitmapdescriptor(tvb, megaco_requestedevent_tree, requested_event_end_offset, requested_event_start_offset); |
| 2032 | | | } |
| 2033 | | | else{ |
| 2034 | | | gchar *msg; |
| 2035 | | | |
| 2036 | | | tokenlen = requested_event_end_offset - requested_event_start_offset; |
| 2037 | | | msg=tvb_format_text(tvb,requested_event_start_offset, tokenlen); |
| 2038 | | | if(!strncmp("h245", msg, 4)){ |
| 2039 | | | dissect_megaco_h245(tvb, pinfo, megaco_requestedevent_tree, requested_event_start_offset, tokenlen, msg); |
| 2040 | | | } else { |
| 2041 | | | proto_tree_add_text(megaco_requestedevent_tree, tvb, requested_event_start_offset, tokenlen, |
| 2042 | | | "%s", msg); |
| 2043 | | | } |
| 2044 | | | } |
| 2045 | | | |
| 2046 | | | } |
| 2047 | | | |
| 2048 | | | tvb_previous_offset = tvb_current_offset; |
| 2049 | | | tvb_current_offset = tvb_find_guint8(tvb, tvb_RBRKT, |
| 2050 | | | tvb_events_end_offset, ','); |
| 2051 | | | |
| 2052 | | | if (tvb_current_offset == -1 || tvb_current_offset > tvb_events_end_offset || tvb_current_offset < tvb_previous_offset ) { |
| 2053 | | | tvb_current_offset = tvb_events_end_offset; |
| 2054 | | | } |
| 2055 | | | |
| 2056 | | | tvb_previous_offset = megaco_tvb_skip_wsp(tvb, tvb_current_offset+1); |
| 2057 | | | |
| 2058 | | | tvb_LBRKT = tvb_previous_offset; |
| 2059 | | | tvb_RBRKT = tvb_previous_offset; |
| 2060 | | | |
| 2061 | | | } while ( tvb_current_offset < tvb_events_end_offset ); |
| 2062 | | | } |
| 2063 | | | } |
| |