Past 1.6 Releases

For upcoming releases, see Development/Roadmap.

1.6.16

Released June 7, 2013 Release notes

Done:

1.6.15

Released May 17, 2013 Release notes

Done:

  • Move over the following revisions:
    • Rev 46805 - Bug 8145 - dissect_rpc_array causes assertion fault when array is empty

    • Rev 46905 - Improve hexline parsing of NetScreen snoop output

    • Rev 48466 - Properly set the TCP ISN's when the SYN and SYN/ACK are captured out-of-order.

    • Rev 48578 - Fix a few cases in the SIP dissector where it was not taking into account that tvb_reported_length_remaining() can return -1.

    • Rev 48597 - Fix the incorrectly duplicated display filter for hf_gsm_map_dlci.

    • Rev 48601 - Fix the incorrectly duplicated display filter for hf_gsm_map_etsi_pdp_type_number.

    • Rev 48619 - SASP: first_flag should be static.

    • Rev 48622 - Fix Coverity CID's 280305-280306: Negative loop bound.

    • Rev 48664 - Newly assigned TLS and DTLS cipher suite names.

    • Rev 48697 - Bug 8450 - Do not try to systematically fetch a third digit for Country Code: its length can be from 1 to 3 digits.

    • Rev 48726 - Bug 8559 - Fix dissection of RAN-INFORMATION-APPLICATION-ERROR RIM PDU Indications.

    • Rev 48814 - Bug 8575 - Fix description of ACE4_APPEND_DATA flag

    • Rev 48944 - Bug 8599 - Possible uninitialized variable in MMS/BER.

    • Rev 49046 - Bug 7755 - Work around a Microsoft bug that prevented the opening of console windows (that change fixes it on Windows 7, but doesn't appear to fix it on Windows XP; whether it fixes it on Windows Vista is unknown)

    • Rev 49114 - Bug 8622 - Fix hf type error in HSRP.

    • Rev 49128 - Bug 7359 - Possible divide by zero error in SNMP decryption.

    • Rev 49154,Rev 49170 - Bug 8627 - LISP control packet incorrectly identified as LISP data based when UDP source port is 4341.

    • Rev 49321 - Bug 6898 - Temporary fix for RTMPT out-of-memory fuzz failures.

    • Rev 49326Bug 8681 - AMR Frame Type uses wrong Value String.

    • Rev 49332 - Bug 8629 - bad tcp checksum not detected

Not done:

  • Move over the following revisions:
    • Rev 47874 - Bug 7400 - Fix Lua 5.2 panic problems. – Doesn't apply cleanly to 1.8. Should this be deferred to 1.10?

    • Rev 48461 - Bug 7310 - glusterfs: improve endianness handling and displaying of dict contents – Doesn't apply cleanly.

    • Rev 45687 - Bug 7882 - AddressString can have a size of 1 – Doesn't apply cleanly.

    • Rev 48563 - Ask 19844 - Add checksum_bad (set to FALSE) to the tree when the checksum is correct. – Doesn't apply cleanly.

    • Rev 48613 - Bug 8532 - Fix filters as well as dissection of lat and long according to 3GPP TS 23.032. – Doesn't apply cleanly.

    • Rev 49019 - Rev 49024 - Bug 8610 - Ensure that tap is called after full dissection, even in case of exception – Doesn't apply cleanly.

    • Rev 49187 - Bug 8608 - Use correct PRF for DTLS 1.2 – Doesn't apply cleanly.

    • Rev 49214 - Bug 8638 - NULL terminate bit field list. – Doesn't exist in 1.6?.

1.6.14

Released March 6, 2013 Release notes

Done:

  • Move over the following revisions:

    • Rev 42893 - Bug 5825 - Fix to BACapp item length causes Buildbot crash output: randpkt-2011-04-13-1899.pcap.

    • Rev 47494 - packet-fmp_notify.c: Add missing hf[] entries.

    • Rev 47605 - Fix ERROR: NO ARRAY: packet-tlv.c, hf_docsis_rcv_mod_enc_ctr_freq_asgn.

    • Rev 47982 - Bug 8382 - Crash in ms-mms dissector (manual backport of r47979).

    • Rev 45324 - Bug 7789 - Fix infinite loop in sflow dissector.

    • Rev 45355 - Bug 7802 - Fix infinite loop in SCTP dissector.

    • Rev 47568 - Fix Coverity CID 973548: Dereference null return value.

    • Rev 47646 - Bug 8320 - Fix typo in case value that led to misdissection of TSPEC IEs.

    • Rev 47658 - Bug 8332 - Bugfix potential buffer overflow in RTPS/RTPS2 dissectors.

    • Rev 47672 - Bug 8335 - Crash in packet-mount.c with packet with negative length field.

    • Rev 47675 - Bug 8331 - Fix decoding long UCS-2 strings in packet-bacapp.c.

    • Rev 47681 - Bug 8337 - Infinite loop in AMPQ dissector.

    • Rev 47692 - Bug 8340 - Divide by zero in ACN dissector.

    • Rev 47708 - Bug 8346 - Memory buffer overrun in packet-cimd.c.

    • Rev 47725 - Bug 6434 - Data combined via ssl_desegment_app_data not visible via "Follow SSL Stream" only decrypted ssl data tabs.

    • Rev 47729 - Bug 8321 - Feed the RTP tap before trying to dissect a possible malformed payload, influencing RTP statistics.

    • Rev 47775 - Bug 8359 - Infinite loop in packet-fcsp.c.

    • Rev 47872 - Bug 7939 - Register media types json-rpc and jsonrequest for JSON.

    • Rev 47877 - Bug 6020 - Bugfix Lua pinfo.cols.protocol not holding value in postdissector.

    • Rev 47921 - Bug 8410 - Fix dissection of flowDurationMicroseconds in Netflow dissector

    • Rev 47936 - Fix dissection of method name in case of RAck header

    • Rev 47966 - Fix Coverity CID 280365: Logically dead code.

    • Rev 48010, Rev 48011 - Bug 8380 - DTLS reassembly issues. Be careful of r48011, it's complicated and will definitely need some reworking to backport safely.

    • Rev 48047 - The file->open dialog should display, "Read filter", not "Display filter".

  • Rev 48062 - Bug 8432 - BE (3) AC is wrongly named as "Video" in (qos_acs)

Not done:

  • Move over the following revisions:
    • Rev 47575 - Bug 8056 - Maximum value of Duration should be 32767. – Doesn't apply cleanly.

    • Rev 47642 - Bug 8318 - Fix JSON decoding of UTF-16 surrogate pairs. – Doesn't apply cleanly.

    • Rev 47653 - Bug 8330 - Another fix for TSPEC IEs (there was a field missing). – Doesn't apply cleanly.

    • Rev 47927 - Bug 8378 - Fix decoding of GSM MAP SMS Diagnostics – Doesn't apply cleanly.

    • Rev 47965 - Fix Coverity CID 280362: Logically dead code. – Doesn't apply cleanly.

1.6.13

Released January 29, 2013 Release notes

Done:

  • Move over the following revisions:
    • Rev 45646 - Bug 7871 - increment offset to point to the first byte after the options (the code used to set an absolute position, if that was 0, we were stuck in an endless loop).

    • Rev 46315 - Bug 8022 - Fix potential crash (and memory leak?) in code that frees the frame data structure on close.

    • Rev 46386 - Bug 8046 - Add names for Fibre Channel over Ethernet group MAC addresses.

    • Rev 46415 - Bug 8040 - Fix R3 inifinite loop.

    • Rev 46420 - Bug 8043 - Fix "MPLS very very large loop".

    • Rev 46345 - Bug 8038 - Prevent a counter overflow in while loops.

    • Rev 46577, Rev 46579 - Bug 7945 - Fix DTN/Bundle fuzz failure.

    • Rev 46705 - Bug 8112 - Ensure bytes exist in tvb unicode string functions.

    • Rev 46739 - Bug 8111 - Set the dtls record length for reassembly before adding a fragment. Does not fix the underlying issue but does shut up the build-bot.

    • Rev 46881 - Add detection of Windows 8 and Windows Server 2012.

    • Rev 46882 - Welcome in 2013.

    • Rev 47045 - Bug 8199 - CMSSTATUS dissector hangs - guint16 needed to prevent rollover.

    • Rev 47046 - Bug 8198 - RTPS dissector crash - bugfix nested loop that wasn't breaking out of the main loop when subloop really wanted it to.

    • Rev 47098 - Bug 8213 - Heap corruption in DCP-ETSI by running past the end of a fragment array.

    • Rev 47123, Rev 47125 - Bug 8222 - fix long loop in DCP-ETSI

    • Rev 46334 - Bug 8035 - Wrong packet bytes are selected for ISUP CUG binary code.

    • Rev 46336 - Bug 8036 - Check length of Slow Protocol OAM Vendor Specific Event Notification and add an expert info if it is not at least 2 bytes long.

    • Rev 46510 - Bug 8075 - Fix reassembly of jumbo SSL frames.

    • Rev 46556 - Bug 8098 - Incorrect dissection of SAC and RAC in 3GPP ULI AVP.

    • Rev 46999 - Bug 8111 - Sanity checks for fragment_set_tot_len().

    • Rev 47000 - Bug 8111 - Revert the temporary workaround in the DTLS dissector.

    • Rev 47114 - Bug 8197 - Null the finfo pointer after we free it. Partially fixes the bug.

    • Rev 47132 - Bug 8227 - Electromagnetic Emission Parser parses field Event Id as Entity Id.

    • Rev 47136 - Bug 8212 - Avoid dissector assert in JXTA dissector.

    • Rev 47144 - Describe terminal services detection correctly.

    • Rev 47173 - snmp pdu's of more than 127 bytes have incorrect length reported.

    • Rev 47223 - CID 280286 - Avoid infinite loop in LAPD dissector (drop last_packet_end_offset at the same time).

    • Rev 47248 - Prevent copying longer than expected NTLM SSP key.

    • Rev 47277 - Bug 8085 - Wrong bytes highlighted with "Find Packet…".

    • Rev 47294 - CID 280529 & 280530 - Check the validity of TLVs before using their retrieved data.

    • Rev 47298, Rev 47300 - Bug 7877 - Illegal character is used in temporary capture file name.

    • Rev 47314 - Bug 8177 - Bugfix crash caused by AirPDcap decryption.

    • Rev 47328 - Bug 2426 - Allow SNMP user table entry to be re-editted even if engineID/Username remains the same.

    • Rev 47329 - make dumpabi target build with multiple digits in library version numbers.

1.6.12

Released November 28, 2012 Release notes

Done:

  • Move over the following revisions:
    • Rev 45340 - Vastly improve the debug presentation( of trees)+.

    • Rev 45357 - Bug 7804 Fix se_tree_lookup32_array_le()

    • Rev 45459 - Bug 7844 - Prevent infinite loop in ICMPv6 dissector

    • Rev 45463, Rev 45464 - Bug 7848 - Make the ISUP CIC field decimal, so it doesn't need proto_tree_add_item_format() and shows up in "Add as filter…" in decimal

    • Rev 45476,Rev 45486 - Fix packet-ndps bugs & possible infinite loops

    • Rev 45477 - Fix possible infinite loops

    • Rev 45500 - packet-fmp_notify: Fix (what appears to be) a minor "off by one" bug in 'for' loop

    • Rev 45524, Rev 45548 - Bug 7858 - When rounding a 32-bit offset value up, take all 32 bits into account so it doesn't wrap around

    • Rev 45545 - Ask 14963 - Handle both Prism header DID value code sets, and clean up some other Prism-header stuff

    • Rev 45609 - Bug 1284 - Handle frames in Prism-header or AVS-header files that have neither an AVS nor a Prism header

    • Rev 45621 - Only cap_len (not pkt_len) bytes of buffer are valid

    • rev 46098 - Bug 8006 - misspelling (typo) in display filter field name

    • Rev 45310 - Bug 7787 USB infinite loops

    • Rev 45321 - Bug 7797 Fix dissection of IEEE 802.11 Channel Switch Announcement element

    • Rev 45331 - When comparing if the window is outside the viewable area's(x,y), take into account that the viewable area's (x,y) may not be (0,0). (This was a slight modification of Rev 34265, which was made to attempt to resolve Bug 553. It is unknown if this additional change finally resolves that bug or if another change such as a GTK+ upgrade finally resolved it, but bug 553 seems to be no longer reproducible.)

    • Rev 45354, Rev 45359, Rev 45360, Rev 45361 - Bug 7803 Various fixes for RADIUS dictionary parsing

    • Rev 45510 - Bug 7855 Fix a STATUS_ACCESS_VIOLATION in ISAKMP dissector

    • Rev 45559 - Bug 7864 - Error in AUXILIARY SECURITY HEADER Parsing for 802.15.4 in dissect_ieee802154_common function. Offset should be +8 not +4

    • Rev 45614 - Bug 7869 WTP infinite loop

    • Rev 45660 - Wireshark-generated PostScript files are DSC non-conforming so be sure to include "%!" in the header comment.

    • Rev 45717 - Bug 7879 - Avoid infinite loop in RTCP dissector.

    • Rev 45742 - Bug 7909 - Fix USB descriptor parsing issue from r45310

    • Rev 45820 - Bug 7913 color filter cancel, delete the incomplete list entry

    • Rev 45823 - Bug 7790 - Add missing offset increment after displaying minimum count

    • Rev 46003, Rev 46004 - Bug 6665 - Sanely handle corrupt tpncp.dat files.

    • Rev 46153 - Bug 8011 - Core dumped during sctp association analysis.

1.6.11

Released October 2, 2012 Release notes

Done:

  • Move over the following revisions:
    • Rev 44691 - Bug 7670 - Use correct filter name and value string for the dissection of Qos attribute "Reliability Class" in GMM/SM message

    • Rev 44510 - Bug 7624 - dissect_per_constrained_integer_64b fails for 64 bits

    • Rev 44513, Rev 44533 - fix field type for some 64 bits header fields

    • Rev 44749 - Bug 7666 - Check that DRDA command has a minimum length of 10 bytes to prevent a potential infinite loop

    • Rev 44790 - Bug 7691 - TKIP dissection : wrong IS_TKIP macro

    • Rev 44844, Rev 44880 - Bug 5979 - Allow Win64 to use more than 2 Gbytes of memory.

    • Rev 44881 - Bug 7718 - Fix dissection of NAS Uplink and Downlink Count in MM Context IE

    • Rev 44940 - Bug 7724 - callsinfo->stop_fd not set in all branches for UNISTIM.

    • Rev 45007 - Fix ICMP and ICMPv6 request/response tracking with checksum corner case.

    • Rev 45111 - Bug 7753 - Fix display of WRITE BUFFER and SEND DIAGNOSTIC fields in SCSI dissector

    • Rev 45142 - Implement and document the Custom plugin system.

    • Rev 45146, Rev 45148 - Bug 5016 - No markers show up when maps are displayed

    • Rev 45150 - Bug 5778 - Volume label field is not displayed correctly.

    • Rev 45174 - Bug 6230 - Truncated/partial JPEG files are not dissected

    • Rev 45229 - -B hasn't been Win32-only for a while, so update the Wireshark man page

1.6.10

Released August 15, 2012 Release notes

Done:

1.6.9

Released July 23, 2012 Release notes

Done:

1.6.8

Released May 22, 2012 Release notes

Done:

Not Done

  • Move over the following revisions:
    • Rev 42623 - Bug 6077 - Rearranging columns in preferences doesn't work – Deferring for 1.6.9. GTK+ bundle needs more testing.

1.6.7

Released April 6, 2012 Release notes

Done:

1.6.6

Released March 27, 2012 Release notes

Done:

  • Move over the following revisions:
    • Rev 39260 - (BSSGP part) Use ENC_NA as encoding for proto_tree_add_item() calls which directly reference an hf item (in hf[] with types:

      FT_NONE FT_BYTES FT_IPV6 FT_IPXNET FT_OID

    • Rev 39640 - (BSSGP part) Fix proto_tree_add_item( encoding args; Do whitespace cleanup (for a few files).

    • Rev 40560 - (BSSGP part) Fix some duplicate display filter names.

    • Rev 41037, Rev 41097, Rev 41098, Rev 41100, Rev 41130 - Bug 6846 - Don't reject pcap-NG blocks with options longer than 100 bytes (the revs listed are in the 1.6.x branch, backported from changes in the trunk)

    • Rev 41057 - Bug 6833 - Handle too-large pointer values in MPEG-2 Transport Stream packets (in effect, a backport by hand of Rev 41001 and Rev 41002)

    • Rev 41043 - Use the correct IE id

    • Rev 41466 - Fix some Dead Store (Dead assignement/Dead increment) Warning found by Clang

    • Rev 41143, Rev 41145, Rev 41152 - Check for pcap-NG blocks with a too-small block length

    • Rev 41333 - Check for non-null-terminated names in NRB records, handle large NRB records (the rev listed is in the 1.6.x branch, backported from Rev 41332 in the trunk)

    • Rev 41348 - Bug 5939 - Fix reading from pipe/stdin (rev 41348 is the relevant part of Rev 37171, which has a whole bunch of feature additions that aren't needed in 1.6.x)

    • Rev 37752 - Protect the columns from being overwritten.

    • Rev 39873 - Ask 8649 - Thou shalt not use proto_tree_add_string() with an FT_BYTES field.

    • Rev 40508 - Bug 6735 - Properly set the per-packet encapsulation on a seek-and-read on a K12 text file

    • Rev 40547 - Use GSlice API instead of GMemChunk API for some memory allocation.

    • Rev 40615 - Bug 5237 - Convert forward slashes in URI to back slashes if WIN32.

    • Rev 40616 - Bug 6687 - Avoid a potential infinite loop by stopping dissection when a message has no tlvblock.

    • Rev 40644 - Bug 5687 - Some PGM options are not parsed correctly.

    • Rev 40702 - Bug 6761 - max_ul_ext isn't printed/decoded to the packet details log in GTP protocol packet.(Wrong length check)

    • Rev 40727 - Bug 6766 - Fix incorrect usage of g_ascii_strdown() (don't port over the epan/wslua/wslua_proto.c changes, they don't apply to 1.6)

    • Rev 40730 - Fix memory leaks involving tvb_get_stringz() by replacing it with tvb_get_ephemeral_stringz().

    • Rev 40769 - Disable the Save-As button in the toolbar if we cannot save the file.

    • Rev 40873 - Bug 6734 - GOOSE Messages don't use the length field to perform the dissection.

    • Rev 40911 - wireshark-user 14477 - Update the documentation to match the sort order.

    • Rev 40927 - Disable the File->Merge… menu item if we cannot save the file.

    • Rev 40937 - Bug 6813 - no menu item Fle->Export->SSL Session Keys in GTK

    • Rev 40944 - Bug 6815 - Don't get strings with tvb_get_ptr() in IAX2.

    • Rev 37856,Rev 40949,Rev 40950 - wireshark-devel 24846 - Correctly display the TCP flags and allow tcp.flags filtering to work properly without potentially causing a crash.

    • Rev 40952 - Bug 6817 - Eliminate infinite recursion in SSL and DTLS dissectors if old-style keys_list preference is used.

    • Rev 40962 - Bug 6823 - Pass pinfo as an argument rather than as a global variable

    • Rev 40967 - Bug 6809 - Fix possible infinite loop in 802.11 dissector

    • Rev 41008 - Bug 6804 - Fix underflow/crash when loading corrupt WTAP_ENCAP_ERF PCAP file.

    • Rev 41025 - Bug 6765 - When handing off from HTTP to a dissector for the entity body, if we have a media type, use it to determine the subdissector before trying other means

    • Rev 41030 - ERF TYPE_PAD records don't necessarily have payload, so don't treat one that doesn't as an error

    • Rev 41036 - Bug 6847 - Fix DTLS decryption

    • Rev 41040 - Add Wireshark_package.pmdoc to the source distribution; NOTE: there's an "svn mv" in here which probably needs to be manually applied.

    • Rev 41041 - Report WTAP_ERR_UNSUPPORTED better, report pcap-NG files with multiple SHBs as WTAP_ERR_UNSUPPORTED and don't crash on them in Wireshark

    • Rev 41045 - Bug 6703 - Show netflow and ZEP timestamps' fractions

    • Rev 41237 - Bug 6077 - Fix drag-n-drop of column preferences by updating GTK version. NOTE: a new Win32 libs tag is probably needed too.

    • Rev 41272 - Bug 6891 - Don't abort if Expression dialog user selects a predefined value which happens to be BASE_DEC_HEX or BASE_HEX_DEC.

    • Rev 41372 - Bug 5356 - Do capture filter checking in a separate thread

    • Rev 41388 - Bug 6826 - USB: unknown GET DESCRIPTOR response triggers assert failure

    • Rev41395 - Bug 2873 - ISO SSAP: ActivityStart: Invalid decoding the activity parameter as a BER Integer

    • Rev 41403 - Bug 6836 - IEEE1588 PTPv2 over IPv6 -> Padding issue.

    • Rev 41536 - Bug 6947 - Don't require a space at the end of the gtp.msisdn filter string

    • Rev 41554 - Bug 6951 - Multiprotocol Label Switching Echo - Return Code: Reserved (5)

    • Rev 41633 - Ask 9461 - If the radiotap data rate is computed from the MCS field, mark it as generated and have it cover the entire field

    • Rev 41675 - Bug 6664 - Fix Diameter crash caused by corrupted dictionary

    • Rev 41680 - Bug 6526 - Properly detect the absence of an access_bpf group on OS X 10.5

    • Rev 41718 - Bug 6972 - ISAKMP : VendorID CheckPoint : Malformed Packet (Wrong minimum Length)

    • Rev 41734 - Bug 6232 - No error for UDP/IPv6 packet with zero checksum

    • Rev 41787 - Bug 6982 - Don't allow users to register HTTP custom header fields with invalid-for-an-hf-abbreviation characters (to avoid asserting out)

Not Done

  • Move over the following revisions:
    • Rev 40384 - Bug 6708 - Wrong tvb_get_bits function call in packet-csn1.c. – Already backported

    • Rev 40627Rev 40634Rev 40635 - Bug 6375 - GPRS RLCMAC dissector not handling valid PDU – Changes don't apply cleanly

    • Rev 41344 - Fix bugs in buffer overflow checking used with calls to g_snprintf() – Does not exist in 1.6

    • Rev 41791 - Don't allow users to register IMF custom header fields with invalid-for-an-hf-abbreviation characters (to avoid asserting out) (as in Bug 6982) – Does not exist in 1.6

1.6.5

Released January 11, 2012 Release notes

Done:

1.6.4

Released November 18, 2011 Release notes

Done:

1.6.3

Released November 1, 2011 Release notes

Done:

1.6.2

Released September 8, 2011 Release notes

Done:

1.6.1

Released July 18, 2011 Release notes

Done:

  • Move over the following revisions:

1.6.0

Released June 7, 2011 Release notes

Done:

  • Move over the following revisions:
    • Rev 37372 - Move the Windows argument list conversion code to a common routine.

    • Rev 37396 - Filter out arg_list_utf_16to8.

    • Rev 37479 - Declare the snapshot_length as unsigned.

    • Rev 37480 - When editcap's -s <snaplen> is used, save the new snaplen in the capture file if it's smaller than the original.

    • Rev 37488 - Handle editcap's snaplen before choplen for consistency. If chopping more bytes than available, chop all by setting caplen to 0. In all cases, leave orig_len alone.

    • Rev 37524 - Bug 5983 - DTLS fragment reassemble failure

    • Rev 37525 - Add Michael Chen to AUTHORS.

    • Rev 37530 - Fix a minor typo about bitmask of a reserved field.

    • Rev 37538 - Dump ABI using all header files related to libwireshark

    • Rev 37540 - Reorganize dumpabi targets to keep temporary files

    • Rev 37543 - Fix wiretap headers to allow error-free ABI dumping.

    • Rev 37544 - Include config.h and define _U_ for dumping ABI.

    • Rev 37750Rev 37554Bug 5988 - Wrong sort of column “Packets” in “RTP Streams” window.

    • Rev 37558 - Bug 5883 - [Dissector bug, protocol SNMP: proto.c:2761: failed assertion "DISSECTOR_ASSERT_NOT_REACHED"]

    • Rev 37564 - Fix an old-style function definition.

    • Rev 37567 & Rev 37568 - Add support for LOAD() to TShark's I/O stats.

  • Bump -version-info to 1:0:0 in {epan wsutil wiretap}/Makefile.am

1.6.0rc2

Released June 2, 2011

Done:

  • Move over the following revisions:

1.6.0rc1

Released May 16, 2011

Done:

  • Move over the following revisions:
    • Rev 37162 - Bug 5921 - Fix for RPL DAO-ACK Processing when DODAG ID present

    • Rev 37167 - Fix ChmodBPF startup item permissions

    • Rev 37181 - Don't pass NULL string pointer to format routines (Netflow)


Imported from https://wiki.wireshark.org/Development/Trunk-1.6 on 2020-08-11 23:13:20 UTC