## ----------------------------------------------- ## ## bes 3.19.1 test suite: ncml autotest testsuite. ## ## ----------------------------------------------- ## testsuite: command line was: $ ./testsuite --jobs=9 ## ---------- ## ## ChangeLog. ## ## ---------- ## | 2017-11-17 James Gallagher | | Merge branch 'master' of https://github.com/opendap/bes | | Various fixes. | | add hyraxctl | | Removed old comments and added a new one to besd.logrotate | ## --------- ## ## Platform. ## ## --------- ## hostname = edamame.local uname -m = x86_64 uname -r = 17.7.0 uname -s = Darwin uname -v = Darwin Kernel Version 17.7.0: Thu Jun 21 22:53:14 PDT 2018; root:xnu-4570.71.2~1/RELEASE_X86_64 /usr/bin/uname -p = i386 /bin/uname -X = unknown /bin/arch = unknown /usr/bin/arch -k = unknown /usr/convex/getsysinfo = unknown /usr/bin/hostinfo = Mach kernel version: Darwin Kernel Version 17.7.0: Thu Jun 21 22:53:14 PDT 2018; root:xnu-4570.71.2~1/RELEASE_X86_64 Kernel configured for up to 8 processors. 4 processors are physically available. 8 processors are logically available. Processor type: x86_64h (Intel x86-64h Haswell) Processors active: 0 1 2 3 4 5 6 7 Primary memory available: 16.00 gigabytes Default processor set: 511 tasks, 3094 threads, 8 processors Load average: 3.42, Mach factor: 4.56 /bin/machine = unknown /usr/bin/oslevel = unknown /bin/universe = unknown PATH: /Users/jimg/src/opendap/hyrax_git/bes/standalone PATH: /Users/jimg/src/opendap/hyrax_git/build/bin PATH: /Users/jimg/src/opendap/hyrax_git/build/deps/bin PATH: /Library/Frameworks/Python.framework/Versions/3.6/bin PATH: /usr/local/apache-maven/apache-maven-3.1.1/bin PATH: /usr/local/apache-ant-1.9.3/bin PATH: /usr/local/mysql/bin PATH: /Users/jimg/Library/Python/3.6/bin PATH: /Applications/Doxygen.app/Contents/Resources PATH: /usr/local/bin PATH: /usr/local/sbin PATH: /bin PATH: /sbin PATH: /usr/bin PATH: /usr/sbin PATH: /Applications/Xcode.app/Contents/Developer/usr/bin PATH: /Users/jimg/bin PATH: /Applications/itt/idl/idl/bin PATH: /usr/local/texlive/2013/bin/x86_64-darwin PATH: /Applications/HP_Fortify/HP_Fortify_SCA_and_Apps_4.10/bin PATH: /Applications/HP_Fortify/HP_Fortify_SCA_and_Apps_4.21/bin testsuite: atconfig: | # Configurable variable values for building test suites. | # Generated by ./config.status. | # Copyright (C) 2012 Free Software Foundation, Inc. | | # The test suite will define top_srcdir=/../.. etc. | at_testdir='modules/ncml_module/tests' | abs_builddir='/Users/jimg/src/opendap/hyrax_git/bes/modules/ncml_module/tests' | at_srcdir='.' | abs_srcdir='/Users/jimg/src/opendap/hyrax_git/bes/modules/ncml_module/tests' | at_top_srcdir='../../..' | abs_top_srcdir='/Users/jimg/src/opendap/hyrax_git/bes' | at_top_build_prefix='../../../' | abs_top_builddir='/Users/jimg/src/opendap/hyrax_git/bes' | | # Backward compatibility with Autotest <= 2.59b: | at_top_builddir=$at_top_build_prefix | | AUTOTEST_PATH='standalone' | | SHELL=${CONFIG_SHELL-'/bin/sh'} testsuite: atlocal: | ## ---------------- ## ## Tested programs. ## ## ---------------- ## ## ------------------ ## ## Running the tests. ## ## ------------------ ## testsuite: starting at: Fri Aug 3 16:14:23 MDT 2018 5. Comparing das response for fnoc1_explicit.ncml to baseline ${abs_srcdir}/baselines/fnoc1_explicit.ncml (attribute_tests.at:9): ok (0m0.139s 0m0.132s) 6. Comparing dds response for fnoc1_explicit.ncml to baseline ${abs_srcdir}/baselines/fnoc1_explicit.ncml (attribute_tests.at:9): ok (0m0.144s 0m0.138s) 2. Comparing dds response for fnoc1_improved.ncml to baseline ${abs_srcdir}/baselines/fnoc1_improved.ncml (attribute_tests.at:6): ok (0m0.141s 0m0.138s) 7. Comparing ddx response for fnoc1_explicit.ncml to baseline ${abs_srcdir}/baselines/fnoc1_explicit.ncml (attribute_tests.at:9): ok (0m0.143s 0m0.142s) 9. Comparing das response for fnoc1_remove.ncml to baseline ${abs_srcdir}/baselines/fnoc1_remove.ncml (attribute_tests.at:12): ok (0m0.144s 0m0.135s) 3. Comparing ddx response for fnoc1_improved.ncml to baseline ${abs_srcdir}/baselines/fnoc1_improved.ncml (attribute_tests.at:6): ok (0m0.135s 0m0.136s) 1. Comparing das response for fnoc1_improved.ncml to baseline ${abs_srcdir}/baselines/fnoc1_improved.ncml (attribute_tests.at:6): ok (0m0.139s 0m0.131s) 4. Comparing dods response for fnoc1_improved.ncml to baseline ${abs_srcdir}/baselines/fnoc1_improved.ncml (attribute_tests.at:6): ok (0m0.149s 0m0.144s) 8. Comparing dods response for fnoc1_explicit.ncml to baseline ${abs_srcdir}/baselines/fnoc1_explicit.ncml (attribute_tests.at:9): ok (0m0.153s 0m0.156s) 10. Comparing dds response for fnoc1_remove.ncml to baseline ${abs_srcdir}/baselines/fnoc1_remove.ncml (attribute_tests.at:12): ok (0m0.136s 0m0.116s) 13. Comparing das response for fnoc1_rename_test.ncml to baseline ${abs_srcdir}/baselines/fnoc1_rename_test.ncml (attribute_tests.at:15): ok (0m0.140s 0m0.116s) 15. Comparing ddx response for fnoc1_rename_test.ncml to baseline ${abs_srcdir}/baselines/fnoc1_rename_test.ncml (attribute_tests.at:15): ok (0m0.138s 0m0.117s) 14. Comparing dds response for fnoc1_rename_test.ncml to baseline ${abs_srcdir}/baselines/fnoc1_rename_test.ncml (attribute_tests.at:15): ok (0m0.138s 0m0.116s) 11. Comparing ddx response for fnoc1_remove.ncml to baseline ${abs_srcdir}/baselines/fnoc1_remove.ncml (attribute_tests.at:12): ok (0m0.140s 0m0.121s) 12. Comparing dods response for fnoc1_remove.ncml to baseline ${abs_srcdir}/baselines/fnoc1_remove.ncml (attribute_tests.at:12): ok (0m0.149s 0m0.139s) 16. Comparing dods response for fnoc1_rename_test.ncml to baseline ${abs_srcdir}/baselines/fnoc1_rename_test.ncml (attribute_tests.at:15): ok (0m0.147s 0m0.130s) 18. Comparing dds response for nested_passthrough.ncml to baseline ${abs_srcdir}/baselines/nested_passthrough.ncml (attribute_tests.at:18): ok (0m0.148s 0m0.110s) 17. Comparing das response for nested_passthrough.ncml to baseline ${abs_srcdir}/baselines/nested_passthrough.ncml (attribute_tests.at:18): ok (0m0.151s 0m0.114s) 19. Comparing ddx response for nested_passthrough.ncml to baseline ${abs_srcdir}/baselines/nested_passthrough.ncml (attribute_tests.at:18): ok (0m0.158s 0m0.114s) 22. Comparing dds response for nest_test.ncml to baseline ${abs_srcdir}/baselines/nest_test.ncml (attribute_tests.at:21): ok (0m0.156s 0m0.113s) 21. Comparing das response for nest_test.ncml to baseline ${abs_srcdir}/baselines/nest_test.ncml (attribute_tests.at:21): ok (0m0.157s 0m0.115s) 23. Comparing ddx response for nest_test.ncml to baseline ${abs_srcdir}/baselines/nest_test.ncml (attribute_tests.at:21): ok (0m0.155s 0m0.119s) 20. Comparing dods response for nested_passthrough.ncml to baseline ${abs_srcdir}/baselines/nested_passthrough.ncml (attribute_tests.at:18): ok (0m0.159s 0m0.120s) 25. Comparing das response for grid_attributes.ncml to baseline ${abs_srcdir}/baselines/grid_attributes.ncml (attribute_tests.at:26): ok (0m0.138s 0m0.120s) 24. Comparing dods response for nest_test.ncml to baseline ${abs_srcdir}/baselines/nest_test.ncml (attribute_tests.at:21): ok (0m0.155s 0m0.122s) 27. Comparing ddx response for grid_attributes.ncml to baseline ${abs_srcdir}/baselines/grid_attributes.ncml (attribute_tests.at:28): ok (0m0.130s 0m0.115s) 26. Comparing dds response for grid_attributes.ncml to baseline ${abs_srcdir}/baselines/grid_attributes.ncml (attribute_tests.at:27): ok (0m0.128s 0m0.112s) 29. Comparing das response for separator_test.ncml to baseline ${abs_srcdir}/baselines/separator_test.ncml (attribute_tests.at:32): ok (0m0.131s 0m0.099s) 30. Comparing dds response for separator_test.ncml to baseline ${abs_srcdir}/baselines/separator_test.ncml (attribute_tests.at:32): ok (0m0.133s 0m0.113s) 31. Comparing ddx response for separator_test.ncml to baseline ${abs_srcdir}/baselines/separator_test.ncml (attribute_tests.at:32): ok (0m0.133s 0m0.111s) 32. Comparing dods response for separator_test.ncml to baseline ${abs_srcdir}/baselines/separator_test.ncml (attribute_tests.at:32): ok (0m0.132s 0m0.111s) 34. Comparing das response for bugs/empty_attr_string.ncml to baseline ${abs_srcdir}/baselines/bugs/empty_attr_string.ncml (attribute_tests.at:36): ok (0m0.132s 0m0.106s) 36. Comparing ddx response for bugs/empty_attr_string.ncml to baseline ${abs_srcdir}/baselines/bugs/empty_attr_string.ncml (attribute_tests.at:36): ok (0m0.128s 0m0.107s) 33. Comparing dods response for separator_test.ncml to getdap (ascii) baseline ${abs_srcdir}/baselines/separator_test.ncml (attribute_tests.at:33): ok (0m0.178s 0m0.144s) 35. Comparing dds response for bugs/empty_attr_string.ncml to baseline ${abs_srcdir}/baselines/bugs/empty_attr_string.ncml (attribute_tests.at:36): ok (0m0.130s 0m0.103s) 37. Comparing dods response for bugs/empty_attr_string.ncml to baseline ${abs_srcdir}/baselines/bugs/empty_attr_string.ncml (attribute_tests.at:36): ok (0m0.126s 0m0.104s) 28. Comparing dods response for grid_attributes.ncml to baseline ${abs_srcdir}/baselines/grid_attributes.ncml (attribute_tests.at:29): ok (0m0.280s 0m0.284s) 39. Comparing das response for attribute_OtherXML.ncml to baseline ${abs_srcdir}/baselines/attribute_OtherXML.ncml (attribute_tests.at:40): ok (0m0.132s 0m0.109s) 40. Comparing dds response for attribute_OtherXML.ncml to baseline ${abs_srcdir}/baselines/attribute_OtherXML.ncml (attribute_tests.at:40): ok (0m0.130s 0m0.107s) 38. Comparing dods response for bugs/empty_attr_string.ncml to getdap (ascii) baseline ${abs_srcdir}/baselines/bugs/empty_attr_string.ncml (attribute_tests.at:37): ok (0m0.177s 0m0.142s) 42. Comparing dods response for attribute_OtherXML.ncml to baseline ${abs_srcdir}/baselines/attribute_OtherXML.ncml (attribute_tests.at:40): ok (0m0.134s 0m0.114s) 41. Comparing ddx response for attribute_OtherXML.ncml to baseline ${abs_srcdir}/baselines/attribute_OtherXML.ncml (attribute_tests.at:40): ok (0m0.136s 0m0.115s) 43. Comparing ddx response for attribute_OtherXML_Attribute.ncml to baseline ${abs_srcdir}/baselines/attribute_OtherXML_Attribute.ncml (attribute_tests.at:47): ok (0m0.134s 0m0.110s) 44. "ddx" response for attribute_OtherXML_malformed.ncml: seeking match to "ParseError:.*libxml SAX2 parser error" (attribute_tests.at:51): ok (0m0.131s 0m0.109s) 46. Comparing ddx response for OtherXML_with_ancestral_namespace.ncml to baseline ${abs_srcdir}/baselines/OtherXML_with_ancestral_namespace.ncml (attribute_tests.at:60): ok (0m0.133s 0m0.111s) 45. "ddx" response for attribute_OtherXML_val_error.ncml: seeking match to "ParseError" (attribute_tests.at:55): ok (0m0.134s 0m0.110s) 47. Comparing ddx response for OtherXML_nested_namespaces.ncml to baseline ${abs_srcdir}/baselines/OtherXML_nested_namespaces.ncml (attribute_tests.at:64): ok (0m0.132s 0m0.110s) 48. Comparing ddx response for OtherXML_shadowed_namespace.ncml to baseline ${abs_srcdir}/baselines/OtherXML_shadowed_namespace.ncml (attribute_tests.at:68): ok (0m0.132s 0m0.108s) 49. Comparing das response for nested_passthrough.ncml to baseline ${abs_srcdir}/baselines/nested_passthrough_cons_1.ncml (attribute_tests.at:71): ok (0m0.158s 0m0.115s) 50. Comparing dds response for nested_passthrough.ncml to baseline ${abs_srcdir}/baselines/nested_passthrough_cons_1.ncml (attribute_tests.at:71): ok (0m0.153s 0m0.111s) 53. Comparing das response for attribute_with_dot.ncml to baseline ${abs_srcdir}/baselines/attribute_with_dot.ncml (attribute_tests.at:74): ok (0m0.134s 0m0.112s) 54. Comparing dds response for attribute_with_dot.ncml to baseline ${abs_srcdir}/baselines/attribute_with_dot.ncml (attribute_tests.at:74): ok (0m0.134s 0m0.111s) 51. Comparing ddx response for nested_passthrough.ncml to baseline ${abs_srcdir}/baselines/nested_passthrough_cons_1.ncml (attribute_tests.at:71): ok (0m0.159s 0m0.117s) 55. Comparing ddx response for attribute_with_dot.ncml to baseline ${abs_srcdir}/baselines/attribute_with_dot.ncml (attribute_tests.at:74): ok (0m0.135s 0m0.110s) 52. Comparing dods response for nested_passthrough.ncml to baseline ${abs_srcdir}/baselines/nested_passthrough_cons_1.ncml (attribute_tests.at:71): ok (0m0.160s 0m0.117s) 56. Comparing dods response for attribute_with_dot.ncml to baseline ${abs_srcdir}/baselines/attribute_with_dot.ncml (attribute_tests.at:74): ok (0m0.135s 0m0.109s) 57. Comparing das response for bugs/attr_name_is_url_bug.ncml to baseline ${abs_srcdir}/baselines/bugs/attr_name_is_url_bug.ncml (attribute_tests.at:77): ok (0m0.136s 0m0.105s) 58. Comparing dds response for bugs/attr_name_is_url_bug.ncml to baseline ${abs_srcdir}/baselines/bugs/attr_name_is_url_bug.ncml (attribute_tests.at:77): ok (0m0.129s 0m0.111s) 59. Comparing ddx response for bugs/attr_name_is_url_bug.ncml to baseline ${abs_srcdir}/baselines/bugs/attr_name_is_url_bug.ncml (attribute_tests.at:77): ok (0m0.133s 0m0.107s) 61. "ddx" response for attr_new_attr_conflicts_var.ncml: seeking match to ".*ParseError.*" (attribute_tests.at:80): ok (0m0.128s 0m0.105s) 63. "ddx" response for types/byte_invalid.ncml: seeking match to "ParseError:.*Invalid Value" (attribute_tests.at:84): ok (0m0.133s 0m0.109s) 62. "ddx" response for types/byte_bounds.ncml: seeking match to "ParseError:.*Invalid Value" (attribute_tests.at:83): ok (0m0.138s 0m0.112s) 60. Comparing dods response for bugs/attr_name_is_url_bug.ncml to baseline ${abs_srcdir}/baselines/bugs/attr_name_is_url_bug.ncml (attribute_tests.at:77): ok (0m0.130s 0m0.105s) 65. "ddx" response for types/float32_min_bounds.ncml: seeking match to "ParseError:.*Invalid Value" (attribute_tests.at:86): ok (0m0.107s 0m0.088s) 66. "ddx" response for types/float32_max_bounds.ncml: seeking match to "ParseError:.*Invalid Value" (attribute_tests.at:87): ok (0m0.121s 0m0.091s) 64. "ddx" response for types/float32_invalid.ncml: seeking match to "ParseError:.*Invalid Value" (attribute_tests.at:85): ok (0m0.118s 0m0.106s) 70. "ddx" response for types/int16_invalid.ncml: seeking match to "ParseError:.*Invalid Value" (attribute_tests.at:91): ok (0m0.137s 0m0.113s) 68. "ddx" response for types/float64_min_bounds.ncml: seeking match to "ParseError:.*Invalid Value" (attribute_tests.at:89): ok (0m0.139s 0m0.118s) 72. "ddx" response for types/int16_max_bounds.ncml: seeking match to "ParseError:.*Invalid Value" (attribute_tests.at:93): ok (0m0.137s 0m0.117s) 71. "ddx" response for types/int16_min_bounds.ncml: seeking match to "ParseError:.*Invalid Value" (attribute_tests.at:92): ok (0m0.137s 0m0.117s) 67. "ddx" response for types/float64_invalid.ncml: seeking match to "ParseError:.*Invalid Value" (attribute_tests.at:88): ok (0m0.140s 0m0.122s) 69. "ddx" response for types/float64_max_bounds.ncml: seeking match to "ParseError:.*Invalid Value" (attribute_tests.at:90): ok (0m0.139s 0m0.117s) 75. "ddx" response for types/int32_max_bounds.ncml: seeking match to "ParseError:.*Invalid Value" (attribute_tests.at:96): ok (0m0.139s 0m0.115s) 74. "ddx" response for types/int32_min_bounds.ncml: seeking match to "ParseError:.*Invalid Value" (attribute_tests.at:95): ok (0m0.139s 0m0.117s) 73. "ddx" response for types/int32_invalid.ncml: seeking match to "ParseError:.*Invalid Value" (attribute_tests.at:94): ok (0m0.138s 0m0.117s) 77. "ddx" response for types/uint16_min_bounds.ncml: seeking match to "ParseError:.*Invalid Value" (attribute_tests.at:98): ok (0m0.137s 0m0.119s) 78. "ddx" response for types/uint16_max_bounds.ncml: seeking match to "ParseError:.*Invalid Value" (attribute_tests.at:99): ok (0m0.138s 0m0.113s) 79. "ddx" response for types/uint32_invalid.ncml: seeking match to "ParseError:.*Invalid Value" (attribute_tests.at:100): ok (0m0.136s 0m0.112s) 81. "ddx" response for types/uint32_max_bounds.ncml: seeking match to "ParseError:.*Invalid Value" (attribute_tests.at:102): ok (0m0.137s 0m0.114s) 80. "ddx" response for types/uint32_min_bounds.ncml: seeking match to "ParseError:.*Invalid Value" (attribute_tests.at:101): ok (0m0.139s 0m0.111s) 76. "ddx" response for types/uint16_invalid.ncml: seeking match to "ParseError:.*Invalid Value" (attribute_tests.at:97): ok (0m0.140s 0m0.120s) 82. "ddx" response for types/string_non_ascii.ncml: seeking match to "ParseError:.*Invalid Value" (attribute_tests.at:103): ok (0m0.139s 0m0.113s) 84. Comparing das response for var_orgName.ncml to baseline ${abs_srcdir}/baselines/var_orgName.ncml (variable_rename.at:6): ok (0m0.141s 0m0.117s) 83. "ddx" response for types/string_overflow.ncml: seeking match to "ParseError:.*Invalid Value" (attribute_tests.at:104): ok (0m0.142s 0m0.123s) 85. Comparing dds response for var_orgName.ncml to baseline ${abs_srcdir}/baselines/var_orgName.ncml (variable_rename.at:6): ok (0m0.139s 0m0.116s) 86. Comparing ddx response for var_orgName.ncml to baseline ${abs_srcdir}/baselines/var_orgName.ncml (variable_rename.at:6): ok (0m0.140s 0m0.118s) 90. Comparing das response for var_orgName_Structure.ncml to baseline ${abs_srcdir}/baselines/var_orgName_Structure.ncml (variable_rename.at:15): ok (0m0.157s 0m0.111s) 89. "ddx" response for var_orgName_err_2.ncml: seeking match to ".*ParseError.*" (variable_rename.at:12): ok (0m0.139s 0m0.115s) 88. "ddx" response for var_orgName_err_1.ncml: seeking match to ".*ParseError.*" (variable_rename.at:9): ok (0m0.138s 0m0.121s) 87. Comparing dods response for var_orgName.ncml to baseline ${abs_srcdir}/baselines/var_orgName.ncml (variable_rename.at:6): ok (0m0.148s 0m0.138s) 91. Comparing dds response for var_orgName_Structure.ncml to baseline ${abs_srcdir}/baselines/var_orgName_Structure.ncml (variable_rename.at:15): ok (0m0.152s 0m0.115s) 92. Comparing ddx response for var_orgName_Structure.ncml to baseline ${abs_srcdir}/baselines/var_orgName_Structure.ncml (variable_rename.at:15): ok (0m0.159s 0m0.119s) 95. Comparing dds response for var_orgName_Structure.ncml to baseline ${abs_srcdir}/baselines/var_orgName_Structure_constraint_1.ncml (variable_rename.at:20): ok (0m0.154s 0m0.116s) 94. Comparing das response for var_orgName_Structure.ncml to baseline ${abs_srcdir}/baselines/var_orgName_Structure_constraint_1.ncml (variable_rename.at:20): ok (0m0.157s 0m0.117s) 93. Comparing dods response for var_orgName_Structure.ncml to baseline ${abs_srcdir}/baselines/var_orgName_Structure.ncml (variable_rename.at:15): ok (0m0.158s 0m0.121s) 99. Comparing dds response for var_orgName_Structure.ncml to baseline ${abs_srcdir}/baselines/var_orgName_Structure_cons_2.ncml (variable_rename.at:22): ok (0m0.154s 0m0.111s) 97. Comparing dods response for var_orgName_Structure.ncml to baseline ${abs_srcdir}/baselines/var_orgName_Structure_constraint_1.ncml (variable_rename.at:20): ok (0m0.155s 0m0.118s) 96. Comparing ddx response for var_orgName_Structure.ncml to baseline ${abs_srcdir}/baselines/var_orgName_Structure_constraint_1.ncml (variable_rename.at:20): ok (0m0.156s 0m0.116s) 98. Comparing das response for var_orgName_Structure.ncml to baseline ${abs_srcdir}/baselines/var_orgName_Structure_cons_2.ncml (variable_rename.at:22): ok (0m0.157s 0m0.114s) 101. Comparing dods response for var_orgName_Structure.ncml to baseline ${abs_srcdir}/baselines/var_orgName_Structure_cons_2.ncml (variable_rename.at:22): ok (0m0.156s 0m0.120s) 100. Comparing ddx response for var_orgName_Structure.ncml to baseline ${abs_srcdir}/baselines/var_orgName_Structure_cons_2.ncml (variable_rename.at:22): ok (0m0.158s 0m0.120s) 104. Comparing ddx response for var_orgName.ncml to baseline ${abs_srcdir}/baselines/var_orgName_cons_2.ncml (variable_rename.at:26): ok (0m0.141s 0m0.117s) 106. Comparing das response for var_orgName.ncml to baseline ${abs_srcdir}/baselines/var_orgName_cons_1.ncml (variable_rename.at:28): ok (0m0.139s 0m0.116s) 102. Comparing das response for var_orgName.ncml to baseline ${abs_srcdir}/baselines/var_orgName_cons_2.ncml (variable_rename.at:26): ok (0m0.140s 0m0.115s) 103. Comparing dds response for var_orgName.ncml to baseline ${abs_srcdir}/baselines/var_orgName_cons_2.ncml (variable_rename.at:26): ok (0m0.140s 0m0.115s) 107. Comparing dds response for var_orgName.ncml to baseline ${abs_srcdir}/baselines/var_orgName_cons_1.ncml (variable_rename.at:28): ok (0m0.138s 0m0.117s) 105. Comparing dods response for var_orgName.ncml to baseline ${abs_srcdir}/baselines/var_orgName_cons_2.ncml (variable_rename.at:26): ok (0m0.142s 0m0.121s) 108. Comparing ddx response for var_orgName.ncml to baseline ${abs_srcdir}/baselines/var_orgName_cons_1.ncml (variable_rename.at:28): ok (0m0.138s 0m0.116s) 110. Comparing das response for var_orgName.ncml to baseline ${abs_srcdir}/baselines/var_orgName_cons_3.ncml (variable_rename.at:30): ok (0m0.139s 0m0.121s) 112. Comparing ddx response for var_orgName.ncml to baseline ${abs_srcdir}/baselines/var_orgName_cons_3.ncml (variable_rename.at:30): ok (0m0.139s 0m0.117s) 116. Comparing ddx response for var_orgName.ncml to baseline ${abs_srcdir}/baselines/var_orgName_cons_4.ncml (variable_rename.at:32): ok (0m0.140s 0m0.111s) 114. Comparing das response for var_orgName.ncml to baseline ${abs_srcdir}/baselines/var_orgName_cons_4.ncml (variable_rename.at:32): ok (0m0.138s 0m0.118s) 115. Comparing dds response for var_orgName.ncml to baseline ${abs_srcdir}/baselines/var_orgName_cons_4.ncml (variable_rename.at:32): ok (0m0.139s 0m0.117s) 111. Comparing dds response for var_orgName.ncml to baseline ${abs_srcdir}/baselines/var_orgName_cons_3.ncml (variable_rename.at:30): ok (0m0.138s 0m0.116s) 113. Comparing dods response for var_orgName.ncml to baseline ${abs_srcdir}/baselines/var_orgName_cons_3.ncml (variable_rename.at:30): ok (0m0.140s 0m0.124s) 109. Comparing dods response for var_orgName.ncml to baseline ${abs_srcdir}/baselines/var_orgName_cons_1.ncml (variable_rename.at:28): ok (0m0.142s 0m0.124s) 117. Comparing dods response for var_orgName.ncml to baseline ${abs_srcdir}/baselines/var_orgName_cons_4.ncml (variable_rename.at:32): ok (0m0.140s 0m0.117s) 120. Comparing ddx response for new_scalars/var_scalar_int.ncml to baseline ${abs_srcdir}/baselines/new_scalars/var_scalar_int.ncml (variable_new_scalars.at:5): ok (0m0.140s 0m0.123s) 118. Comparing das response for new_scalars/var_scalar_int.ncml to baseline ${abs_srcdir}/baselines/new_scalars/var_scalar_int.ncml (variable_new_scalars.at:5): ok (0m0.141s 0m0.119s) 119. Comparing dds response for new_scalars/var_scalar_int.ncml to baseline ${abs_srcdir}/baselines/new_scalars/var_scalar_int.ncml (variable_new_scalars.at:5): ok (0m0.140s 0m0.120s) 123. Comparing das response for new_scalars/var_scalar_string.ncml to baseline ${abs_srcdir}/baselines/new_scalars/var_scalar_string.ncml (variable_new_scalars.at:8): ok (0m0.141s 0m0.123s) 124. Comparing dds response for new_scalars/var_scalar_string.ncml to baseline ${abs_srcdir}/baselines/new_scalars/var_scalar_string.ncml (variable_new_scalars.at:8): ok (0m0.141s 0m0.120s) 125. Comparing ddx response for new_scalars/var_scalar_string.ncml to baseline ${abs_srcdir}/baselines/new_scalars/var_scalar_string.ncml (variable_new_scalars.at:8): ok (0m0.141s 0m0.121s) 121. Comparing dods response for new_scalars/var_scalar_int.ncml to baseline ${abs_srcdir}/baselines/new_scalars/var_scalar_int.ncml (variable_new_scalars.at:5): ok (0m0.150s 0m0.142s) 126. Comparing dods response for new_scalars/var_scalar_string.ncml to baseline ${abs_srcdir}/baselines/new_scalars/var_scalar_string.ncml (variable_new_scalars.at:8): ok (0m0.149s 0m0.138s) 122. Comparing dods response for new_scalars/var_scalar_int.ncml to getdap (ascii) baseline ${abs_srcdir}/baselines/new_scalars/var_scalar_int.ncml (variable_new_scalars.at:6): ok (0m0.210s 0m0.184s) 130. Comparing ddx response for new_scalars/var_scalar_url.ncml to baseline ${abs_srcdir}/baselines/new_scalars/var_scalar_url.ncml (variable_new_scalars.at:11): ok (0m0.139s 0m0.117s) 129. Comparing dds response for new_scalars/var_scalar_url.ncml to baseline ${abs_srcdir}/baselines/new_scalars/var_scalar_url.ncml (variable_new_scalars.at:11): ok (0m0.140s 0m0.116s) 128. Comparing das response for new_scalars/var_scalar_url.ncml to baseline ${abs_srcdir}/baselines/new_scalars/var_scalar_url.ncml (variable_new_scalars.at:11): ok (0m0.140s 0m0.121s) 131. Comparing dods response for new_scalars/var_scalar_url.ncml to baseline ${abs_srcdir}/baselines/new_scalars/var_scalar_url.ncml (variable_new_scalars.at:11): ok (0m0.153s 0m0.145s) 133. Comparing das response for new_scalars/var_scalar_float.ncml to baseline ${abs_srcdir}/baselines/new_scalars/var_scalar_float.ncml (variable_new_scalars.at:14): ok (0m0.141s 0m0.116s) 134. Comparing dds response for new_scalars/var_scalar_float.ncml to baseline ${abs_srcdir}/baselines/new_scalars/var_scalar_float.ncml (variable_new_scalars.at:14): ok (0m0.143s 0m0.114s) 132. Comparing dods response for new_scalars/var_scalar_url.ncml to getdap (ascii) baseline ${abs_srcdir}/baselines/new_scalars/var_scalar_url.ncml (variable_new_scalars.at:12): ok (0m0.206s 0m0.174s) 127. Comparing dods response for new_scalars/var_scalar_string.ncml to getdap (ascii) baseline ${abs_srcdir}/baselines/new_scalars/var_scalar_string.ncml (variable_new_scalars.at:9): ok (0m0.211s 0m0.172s) 138. Comparing das response for new_scalars/var_scalar_double.ncml to baseline ${abs_srcdir}/baselines/new_scalars/var_scalar_double.ncml (variable_new_scalars.at:17): ok (0m0.143s 0m0.119s) 135. Comparing ddx response for new_scalars/var_scalar_float.ncml to baseline ${abs_srcdir}/baselines/new_scalars/var_scalar_float.ncml (variable_new_scalars.at:14): ok (0m0.140s 0m0.116s) 140. Comparing ddx response for new_scalars/var_scalar_double.ncml to baseline ${abs_srcdir}/baselines/new_scalars/var_scalar_double.ncml (variable_new_scalars.at:17): ok (0m0.142s 0m0.117s) 139. Comparing dds response for new_scalars/var_scalar_double.ncml to baseline ${abs_srcdir}/baselines/new_scalars/var_scalar_double.ncml (variable_new_scalars.at:17): ok (0m0.140s 0m0.120s) 136. Comparing dods response for new_scalars/var_scalar_float.ncml to baseline ${abs_srcdir}/baselines/new_scalars/var_scalar_float.ncml (variable_new_scalars.at:14): ok (0m0.153s 0m0.143s) 137. Comparing dods response for new_scalars/var_scalar_float.ncml to getdap (ascii) baseline ${abs_srcdir}/baselines/new_scalars/var_scalar_float.ncml (variable_new_scalars.at:15): ok (0m0.211s 0m0.179s) 141. Comparing dods response for new_scalars/var_scalar_double.ncml to baseline ${abs_srcdir}/baselines/new_scalars/var_scalar_double.ncml (variable_new_scalars.at:17): ok (0m0.152s 0m0.141s) 143. Comparing das response for new_scalars/var_scalar_byte.ncml to baseline ${abs_srcdir}/baselines/new_scalars/var_scalar_byte.ncml (variable_new_scalars.at:20): ok (0m0.140s 0m0.117s) 144. Comparing dds response for new_scalars/var_scalar_byte.ncml to baseline ${abs_srcdir}/baselines/new_scalars/var_scalar_byte.ncml (variable_new_scalars.at:20): ok (0m0.142s 0m0.119s) 145. Comparing ddx response for new_scalars/var_scalar_byte.ncml to baseline ${abs_srcdir}/baselines/new_scalars/var_scalar_byte.ncml (variable_new_scalars.at:20): ok (0m0.144s 0m0.120s) 142. Comparing dods response for new_scalars/var_scalar_double.ncml to getdap (ascii) baseline ${abs_srcdir}/baselines/new_scalars/var_scalar_double.ncml (variable_new_scalars.at:18): ok (0m0.214s 0m0.176s) 148. Comparing das response for new_scalars/var_scalar_short.ncml to baseline ${abs_srcdir}/baselines/new_scalars/var_scalar_short.ncml (variable_new_scalars.at:23): ok (0m0.144s 0m0.118s) 146. Comparing dods response for new_scalars/var_scalar_byte.ncml to baseline ${abs_srcdir}/baselines/new_scalars/var_scalar_byte.ncml (variable_new_scalars.at:20): ok (0m0.154s 0m0.145s) 149. Comparing dds response for new_scalars/var_scalar_short.ncml to baseline ${abs_srcdir}/baselines/new_scalars/var_scalar_short.ncml (variable_new_scalars.at:23): ok (0m0.141s 0m0.121s) 147. Comparing dods response for new_scalars/var_scalar_byte.ncml to getdap (ascii) baseline ${abs_srcdir}/baselines/new_scalars/var_scalar_byte.ncml (variable_new_scalars.at:21): ok (0m0.215s 0m0.173s) 150. Comparing ddx response for new_scalars/var_scalar_short.ncml to baseline ${abs_srcdir}/baselines/new_scalars/var_scalar_short.ncml (variable_new_scalars.at:23): ok (0m0.144s 0m0.117s) 151. Comparing dods response for new_scalars/var_scalar_short.ncml to baseline ${abs_srcdir}/baselines/new_scalars/var_scalar_short.ncml (variable_new_scalars.at:23): ok (0m0.154s 0m0.138s) 153. Comparing das response for new_scalars/var_scalar_long.ncml to baseline ${abs_srcdir}/baselines/new_scalars/var_scalar_long.ncml (variable_new_scalars.at:26): ok (0m0.145s 0m0.118s) 154. Comparing dds response for new_scalars/var_scalar_long.ncml to baseline ${abs_srcdir}/baselines/new_scalars/var_scalar_long.ncml (variable_new_scalars.at:26): ok (0m0.144s 0m0.119s) 155. Comparing ddx response for new_scalars/var_scalar_long.ncml to baseline ${abs_srcdir}/baselines/new_scalars/var_scalar_long.ncml (variable_new_scalars.at:26): ok (0m0.141s 0m0.118s) 152. Comparing dods response for new_scalars/var_scalar_short.ncml to getdap (ascii) baseline ${abs_srcdir}/baselines/new_scalars/var_scalar_short.ncml (variable_new_scalars.at:24): ok (0m0.212s 0m0.178s) 156. Comparing dods response for new_scalars/var_scalar_long.ncml to baseline ${abs_srcdir}/baselines/new_scalars/var_scalar_long.ncml (variable_new_scalars.at:26): ok (0m0.152s 0m0.138s) 158. Comparing das response for new_scalars/var_scalar_uint32.ncml to baseline ${abs_srcdir}/baselines/new_scalars/var_scalar_uint32.ncml (variable_new_scalars.at:29): ok (0m0.143s 0m0.120s) 159. Comparing dds response for new_scalars/var_scalar_uint32.ncml to baseline ${abs_srcdir}/baselines/new_scalars/var_scalar_uint32.ncml (variable_new_scalars.at:29): ok (0m0.143s 0m0.119s) 157. Comparing dods response for new_scalars/var_scalar_long.ncml to getdap (ascii) baseline ${abs_srcdir}/baselines/new_scalars/var_scalar_long.ncml (variable_new_scalars.at:27): ok (0m0.210s 0m0.171s) 160. Comparing ddx response for new_scalars/var_scalar_uint32.ncml to baseline ${abs_srcdir}/baselines/new_scalars/var_scalar_uint32.ncml (variable_new_scalars.at:29): ok (0m0.142s 0m0.119s) 161. Comparing dods response for new_scalars/var_scalar_uint32.ncml to baseline ${abs_srcdir}/baselines/new_scalars/var_scalar_uint32.ncml (variable_new_scalars.at:29): ok (0m0.152s 0m0.138s) 163. "ddx" response for new_scalars/var_scalar_parse_error_1.ncml: seeking match to ".*ParseError.*" (variable_new_scalars.at:33): ok (0m0.139s 0m0.119s) 164. "ddx" response for new_scalars/var_scalar_parse_error_2.ncml: seeking match to ".*ParseError.*" (variable_new_scalars.at:36): ok (0m0.142s 0m0.119s) 165. "ddx" response for new_scalars/var_scalar_parse_error_3.ncml: seeking match to ".*ParseError.*" (variable_new_scalars.at:39): ok (0m0.141s 0m0.120s) 166. "ddx" response for new_scalars/var_scalar_parse_error_4.ncml: seeking match to ".*ParseError.*" (variable_new_scalars.at:42): ok (0m0.139s 0m0.117s) 162. Comparing dods response for new_scalars/var_scalar_uint32.ncml to getdap (ascii) baseline ${abs_srcdir}/baselines/new_scalars/var_scalar_uint32.ncml (variable_new_scalars.at:30): ok (0m0.212s 0m0.167s) 167. "ddx" response for new_scalars/var_scalar_parse_error_5.ncml: seeking match to ".*ParseError.*" (variable_new_scalars.at:45): ok (0m0.142s 0m0.118s) 169. Comparing das response for var_new_Structure.ncml to baseline ${abs_srcdir}/baselines/var_new_Structure.ncml (variable_new_structures.at:5): ok (0m0.135s 0m0.110s) 170. Comparing dds response for var_new_Structure.ncml to baseline ${abs_srcdir}/baselines/var_new_Structure.ncml (variable_new_structures.at:5): ok (0m0.132s 0m0.105s) 168. "ddx" response for new_scalars/var_scalar_parse_error_6.ncml: seeking match to ".*ParseError.*" (variable_new_scalars.at:48): ok (0m0.141s 0m0.118s) 171. Comparing ddx response for var_new_Structure.ncml to baseline ${abs_srcdir}/baselines/var_new_Structure.ncml (variable_new_structures.at:5): ok (0m0.133s 0m0.109s) 172. Comparing dods response for var_new_Structure.ncml to baseline ${abs_srcdir}/baselines/var_new_Structure.ncml (variable_new_structures.at:5): ok (0m0.132s 0m0.108s) 174. Comparing das response for var_new_Structure_nest.ncml to baseline ${abs_srcdir}/baselines/var_new_Structure_nest.ncml (variable_new_structures.at:9): ok (0m0.133s 0m0.107s) 173. Comparing dods response for var_new_Structure.ncml to getdap (ascii) baseline ${abs_srcdir}/baselines/var_new_Structure.ncml (variable_new_structures.at:6): ok (0m0.178s 0m0.137s) 177. Comparing dods response for var_new_Structure_nest.ncml to baseline ${abs_srcdir}/baselines/var_new_Structure_nest.ncml (variable_new_structures.at:9): ok (0m0.130s 0m0.109s) 176. Comparing ddx response for var_new_Structure_nest.ncml to baseline ${abs_srcdir}/baselines/var_new_Structure_nest.ncml (variable_new_structures.at:9): ok (0m0.131s 0m0.111s) 175. Comparing dds response for var_new_Structure_nest.ncml to baseline ${abs_srcdir}/baselines/var_new_Structure_nest.ncml (variable_new_structures.at:9): ok (0m0.132s 0m0.111s) 179. "ddx" response for var_new_structure_parse_error_1.ncml: seeking match to ".*ParseError.*" (variable_new_structures.at:13): ok (0m0.133s 0m0.108s) 180. "ddx" response for var_new_var_conflicts_attr.ncml: seeking match to ".*ParseError.*" (variable_new_structures.at:16): ok (0m0.130s 0m0.105s) 178. Comparing dods response for var_new_Structure_nest.ncml to getdap (ascii) baseline ${abs_srcdir}/baselines/var_new_Structure_nest.ncml (variable_new_structures.at:10): ok (0m0.176s 0m0.140s) 182. Comparing dds response for var_remove.ncml to baseline ${abs_srcdir}/baselines/var_remove.ncml (variable_remove.at:6): ok (0m0.140s 0m0.115s) 181. Comparing das response for var_remove.ncml to baseline ${abs_srcdir}/baselines/var_remove.ncml (variable_remove.at:6): ok (0m0.140s 0m0.113s) 183. Comparing ddx response for var_remove.ncml to baseline ${abs_srcdir}/baselines/var_remove.ncml (variable_remove.at:6): ok (0m0.143s 0m0.118s) 184. Comparing dods response for var_remove.ncml to baseline ${abs_srcdir}/baselines/var_remove.ncml (variable_remove.at:6): ok (0m0.150s 0m0.134s) 186. Comparing das response for var_remove_nested.ncml to baseline ${abs_srcdir}/baselines/var_remove_nested.ncml (variable_remove.at:10): ok (0m0.161s 0m0.114s) 187. Comparing dds response for var_remove_nested.ncml to baseline ${abs_srcdir}/baselines/var_remove_nested.ncml (variable_remove.at:10): ok (0m0.156s 0m0.115s) 185. Comparing dods response for var_remove.ncml to getdap (ascii) baseline ${abs_srcdir}/baselines/var_remove.ncml (variable_remove.at:7): ok (0m0.207s 0m0.169s) 188. Comparing ddx response for var_remove_nested.ncml to baseline ${abs_srcdir}/baselines/var_remove_nested.ncml (variable_remove.at:10): ok (0m0.160s 0m0.114s) 191. Comparing das response for new_arrays/var_array_int_1.ncml to baseline ${abs_srcdir}/baselines/new_arrays/var_array_int_1.ncml (variable_new_arrays.at:5): ok (0m0.134s 0m0.111s) 192. Comparing dds response for new_arrays/var_array_int_1.ncml to baseline ${abs_srcdir}/baselines/new_arrays/var_array_int_1.ncml (variable_new_arrays.at:5): ok (0m0.133s 0m0.111s) 189. Comparing dods response for var_remove_nested.ncml to baseline ${abs_srcdir}/baselines/var_remove_nested.ncml (variable_remove.at:10): ok (0m0.161s 0m0.120s) 193. Comparing ddx response for new_arrays/var_array_int_1.ncml to baseline ${abs_srcdir}/baselines/new_arrays/var_array_int_1.ncml (variable_new_arrays.at:5): ok (0m0.136s 0m0.110s) 190. Comparing dods response for var_remove_nested.ncml to getdap (ascii) baseline ${abs_srcdir}/baselines/var_remove_nested.ncml (variable_remove.at:11): ok (0m0.241s 0m0.154s) 194. Comparing dods response for new_arrays/var_array_int_1.ncml to baseline ${abs_srcdir}/baselines/new_arrays/var_array_int_1.ncml (variable_new_arrays.at:5): ok (0m0.134s 0m0.113s) 197. Comparing dds response for new_arrays/var_array_float_1.ncml to baseline ${abs_srcdir}/baselines/new_arrays/var_array_float_1.ncml (variable_new_arrays.at:8): ok (0m0.132s 0m0.109s) 196. Comparing das response for new_arrays/var_array_float_1.ncml to baseline ${abs_srcdir}/baselines/new_arrays/var_array_float_1.ncml (variable_new_arrays.at:8): ok (0m0.133s 0m0.112s) 195. Comparing dods response for new_arrays/var_array_int_1.ncml to getdap (ascii) baseline ${abs_srcdir}/baselines/new_arrays/var_array_int_1.ncml (variable_new_arrays.at:6): ok (0m0.180s 0m0.143s) 198. Comparing ddx response for new_arrays/var_array_float_1.ncml to baseline ${abs_srcdir}/baselines/new_arrays/var_array_float_1.ncml (variable_new_arrays.at:8): ok (0m0.133s 0m0.107s) 199. Comparing dods response for new_arrays/var_array_float_1.ncml to baseline ${abs_srcdir}/baselines/new_arrays/var_array_float_1.ncml (variable_new_arrays.at:8): ok (0m0.132s 0m0.111s) 201. Comparing das response for new_arrays/var_array_double_1.ncml to baseline ${abs_srcdir}/baselines/new_arrays/var_array_double_1.ncml (variable_new_arrays.at:11): ok (0m0.134s 0m0.110s) 202. Comparing dds response for new_arrays/var_array_double_1.ncml to baseline ${abs_srcdir}/baselines/new_arrays/var_array_double_1.ncml (variable_new_arrays.at:11): ok (0m0.133s 0m0.108s) 203. Comparing ddx response for new_arrays/var_array_double_1.ncml to baseline ${abs_srcdir}/baselines/new_arrays/var_array_double_1.ncml (variable_new_arrays.at:11): ok (0m0.135s 0m0.109s) 200. Comparing dods response for new_arrays/var_array_float_1.ncml to getdap (ascii) baseline ${abs_srcdir}/baselines/new_arrays/var_array_float_1.ncml (variable_new_arrays.at:9): ok (0m0.180s 0m0.146s) 204. Comparing dods response for new_arrays/var_array_double_1.ncml to baseline ${abs_srcdir}/baselines/new_arrays/var_array_double_1.ncml (variable_new_arrays.at:11): ok (0m0.135s 0m0.117s) 206. Comparing das response for new_arrays/var_array_byte_1.ncml to baseline ${abs_srcdir}/baselines/new_arrays/var_array_byte_1.ncml (variable_new_arrays.at:14): ok (0m0.137s 0m0.117s) 207. Comparing dds response for new_arrays/var_array_byte_1.ncml to baseline ${abs_srcdir}/baselines/new_arrays/var_array_byte_1.ncml (variable_new_arrays.at:14): ok (0m0.136s 0m0.116s) 205. Comparing dods response for new_arrays/var_array_double_1.ncml to getdap (ascii) baseline ${abs_srcdir}/baselines/new_arrays/var_array_double_1.ncml (variable_new_arrays.at:12): ok (0m0.179s 0m0.144s) 208. Comparing ddx response for new_arrays/var_array_byte_1.ncml to baseline ${abs_srcdir}/baselines/new_arrays/var_array_byte_1.ncml (variable_new_arrays.at:14): ok (0m0.134s 0m0.113s) 209. Comparing dods response for new_arrays/var_array_byte_1.ncml to baseline ${abs_srcdir}/baselines/new_arrays/var_array_byte_1.ncml (variable_new_arrays.at:14): ok (0m0.134s 0m0.116s) 211. Comparing das response for new_arrays/var_array_short_1.ncml to baseline ${abs_srcdir}/baselines/new_arrays/var_array_short_1.ncml (variable_new_arrays.at:17): ok (0m0.131s 0m0.107s) 212. Comparing dds response for new_arrays/var_array_short_1.ncml to baseline ${abs_srcdir}/baselines/new_arrays/var_array_short_1.ncml (variable_new_arrays.at:17): ok (0m0.132s 0m0.112s) 213. Comparing ddx response for new_arrays/var_array_short_1.ncml to baseline ${abs_srcdir}/baselines/new_arrays/var_array_short_1.ncml (variable_new_arrays.at:17): ok (0m0.134s 0m0.105s) 210. Comparing dods response for new_arrays/var_array_byte_1.ncml to getdap (ascii) baseline ${abs_srcdir}/baselines/new_arrays/var_array_byte_1.ncml (variable_new_arrays.at:15): ok (0m0.179s 0m0.150s) 214. Comparing dods response for new_arrays/var_array_short_1.ncml to baseline ${abs_srcdir}/baselines/new_arrays/var_array_short_1.ncml (variable_new_arrays.at:17): ok (0m0.133s 0m0.110s) 215. Comparing dods response for new_arrays/var_array_short_1.ncml to getdap (ascii) baseline ${abs_srcdir}/baselines/new_arrays/var_array_short_1.ncml (variable_new_arrays.at:18): ok (0m0.178s 0m0.140s) 216. Comparing das response for new_arrays/var_array_long_1.ncml to baseline ${abs_srcdir}/baselines/new_arrays/var_array_long_1.ncml (variable_new_arrays.at:20): ok (0m0.133s 0m0.107s) 217. Comparing dds response for new_arrays/var_array_long_1.ncml to baseline ${abs_srcdir}/baselines/new_arrays/var_array_long_1.ncml (variable_new_arrays.at:20): ok (0m0.131s 0m0.108s) 218. Comparing ddx response for new_arrays/var_array_long_1.ncml to baseline ${abs_srcdir}/baselines/new_arrays/var_array_long_1.ncml (variable_new_arrays.at:20): ok (0m0.133s 0m0.113s) 219. Comparing dods response for new_arrays/var_array_long_1.ncml to baseline ${abs_srcdir}/baselines/new_arrays/var_array_long_1.ncml (variable_new_arrays.at:20): ok (0m0.133s 0m0.113s) 221. Comparing das response for new_arrays/var_array_uint32_1.ncml to baseline ${abs_srcdir}/baselines/new_arrays/var_array_uint32_1.ncml (variable_new_arrays.at:23): ok (0m0.132s 0m0.108s) 220. Comparing dods response for new_arrays/var_array_long_1.ncml to getdap (ascii) baseline ${abs_srcdir}/baselines/new_arrays/var_array_long_1.ncml (variable_new_arrays.at:21): ok (0m0.179s 0m0.141s) 222. Comparing dds response for new_arrays/var_array_uint32_1.ncml to baseline ${abs_srcdir}/baselines/new_arrays/var_array_uint32_1.ncml (variable_new_arrays.at:23): ok (0m0.134s 0m0.106s) 223. Comparing ddx response for new_arrays/var_array_uint32_1.ncml to baseline ${abs_srcdir}/baselines/new_arrays/var_array_uint32_1.ncml (variable_new_arrays.at:23): ok (0m0.135s 0m0.109s) 224. Comparing dods response for new_arrays/var_array_uint32_1.ncml to baseline ${abs_srcdir}/baselines/new_arrays/var_array_uint32_1.ncml (variable_new_arrays.at:23): ok (0m0.133s 0m0.110s) 226. Comparing das response for new_arrays/var_array_string_1.ncml to baseline ${abs_srcdir}/baselines/new_arrays/var_array_string_1.ncml (variable_new_arrays.at:27): ok (0m0.132s 0m0.109s) 227. Comparing dds response for new_arrays/var_array_string_1.ncml to baseline ${abs_srcdir}/baselines/new_arrays/var_array_string_1.ncml (variable_new_arrays.at:27): ok (0m0.132s 0m0.113s) 228. Comparing ddx response for new_arrays/var_array_string_1.ncml to baseline ${abs_srcdir}/baselines/new_arrays/var_array_string_1.ncml (variable_new_arrays.at:27): ok (0m0.133s 0m0.112s) 225. Comparing dods response for new_arrays/var_array_uint32_1.ncml to getdap (ascii) baseline ${abs_srcdir}/baselines/new_arrays/var_array_uint32_1.ncml (variable_new_arrays.at:24): ok (0m0.182s 0m0.140s) 229. Comparing dods response for new_arrays/var_array_string_1.ncml to baseline ${abs_srcdir}/baselines/new_arrays/var_array_string_1.ncml (variable_new_arrays.at:27): ok (0m0.133s 0m0.111s) 231. Comparing das response for new_arrays/var_array_url_1.ncml to baseline ${abs_srcdir}/baselines/new_arrays/var_array_url_1.ncml (variable_new_arrays.at:31): ok (0m0.134s 0m0.108s) 232. Comparing dds response for new_arrays/var_array_url_1.ncml to baseline ${abs_srcdir}/baselines/new_arrays/var_array_url_1.ncml (variable_new_arrays.at:31): ok (0m0.133s 0m0.106s) 230. Comparing dods response for new_arrays/var_array_string_1.ncml to getdap (ascii) baseline ${abs_srcdir}/baselines/new_arrays/var_array_string_1.ncml (variable_new_arrays.at:28): ok (0m0.179s 0m0.143s) 234. Comparing dods response for new_arrays/var_array_url_1.ncml to baseline ${abs_srcdir}/baselines/new_arrays/var_array_url_1.ncml (variable_new_arrays.at:31): ok (0m0.132s 0m0.109s) 233. Comparing ddx response for new_arrays/var_array_url_1.ncml to baseline ${abs_srcdir}/baselines/new_arrays/var_array_url_1.ncml (variable_new_arrays.at:31): ok (0m0.132s 0m0.109s) 238. Comparing ddx response for new_arrays/var_array_char_1.ncml to baseline ${abs_srcdir}/baselines/new_arrays/var_array_char_1.ncml (variable_new_arrays.at:35): ok (0m0.131s 0m0.108s) 236. Comparing das response for new_arrays/var_array_char_1.ncml to baseline ${abs_srcdir}/baselines/new_arrays/var_array_char_1.ncml (variable_new_arrays.at:35): ok (0m0.130s 0m0.108s) 237. Comparing dds response for new_arrays/var_array_char_1.ncml to baseline ${abs_srcdir}/baselines/new_arrays/var_array_char_1.ncml (variable_new_arrays.at:35): ok (0m0.131s 0m0.109s) 239. Comparing dods response for new_arrays/var_array_char_1.ncml to baseline ${abs_srcdir}/baselines/new_arrays/var_array_char_1.ncml (variable_new_arrays.at:35): ok (0m0.133s 0m0.110s) 235. Comparing dods response for new_arrays/var_array_url_1.ncml to getdap (ascii) baseline ${abs_srcdir}/baselines/new_arrays/var_array_url_1.ncml (variable_new_arrays.at:32): ok (0m0.178s 0m0.145s) 241. Comparing das response for new_arrays/var_array_auto_int_1.ncml to baseline ${abs_srcdir}/baselines/new_arrays/var_array_auto_int_1.ncml (variable_new_arrays.at:39): ok (0m0.133s 0m0.113s) 240. Comparing dods response for new_arrays/var_array_char_1.ncml to getdap (ascii) baseline ${abs_srcdir}/baselines/new_arrays/var_array_char_1.ncml (variable_new_arrays.at:36): ok (0m0.181s 0m0.139s) 246. Comparing das response for new_arrays/var_array_auto_float_1.ncml to baseline ${abs_srcdir}/baselines/new_arrays/var_array_auto_float_1.ncml (variable_new_arrays.at:43): ok (0m0.129s 0m0.108s) 242. Comparing dds response for new_arrays/var_array_auto_int_1.ncml to baseline ${abs_srcdir}/baselines/new_arrays/var_array_auto_int_1.ncml (variable_new_arrays.at:39): ok (0m0.130s 0m0.112s) 243. Comparing ddx response for new_arrays/var_array_auto_int_1.ncml to baseline ${abs_srcdir}/baselines/new_arrays/var_array_auto_int_1.ncml (variable_new_arrays.at:39): ok (0m0.132s 0m0.110s) 247. Comparing dds response for new_arrays/var_array_auto_float_1.ncml to baseline ${abs_srcdir}/baselines/new_arrays/var_array_auto_float_1.ncml (variable_new_arrays.at:43): ok (0m0.132s 0m0.107s) 244. Comparing dods response for new_arrays/var_array_auto_int_1.ncml to baseline ${abs_srcdir}/baselines/new_arrays/var_array_auto_int_1.ncml (variable_new_arrays.at:39): ok (0m0.131s 0m0.109s) 245. Comparing dods response for new_arrays/var_array_auto_int_1.ncml to getdap (ascii) baseline ${abs_srcdir}/baselines/new_arrays/var_array_auto_int_1.ncml (variable_new_arrays.at:40): ok (0m0.177s 0m0.144s) 248. Comparing ddx response for new_arrays/var_array_auto_float_1.ncml to baseline ${abs_srcdir}/baselines/new_arrays/var_array_auto_float_1.ncml (variable_new_arrays.at:43): ok (0m0.132s 0m0.103s) 252. Comparing dds response for new_arrays/var_array_auto_double_1.ncml to baseline ${abs_srcdir}/baselines/new_arrays/var_array_auto_double_1.ncml (variable_new_arrays.at:47): ok (0m0.133s 0m0.112s) 249. Comparing dods response for new_arrays/var_array_auto_float_1.ncml to baseline ${abs_srcdir}/baselines/new_arrays/var_array_auto_float_1.ncml (variable_new_arrays.at:43): ok (0m0.134s 0m0.112s) 251. Comparing das response for new_arrays/var_array_auto_double_1.ncml to baseline ${abs_srcdir}/baselines/new_arrays/var_array_auto_double_1.ncml (variable_new_arrays.at:47): ok (0m0.133s 0m0.113s) 253. Comparing ddx response for new_arrays/var_array_auto_double_1.ncml to baseline ${abs_srcdir}/baselines/new_arrays/var_array_auto_double_1.ncml (variable_new_arrays.at:47): ok (0m0.132s 0m0.117s) 254. Comparing dods response for new_arrays/var_array_auto_double_1.ncml to baseline ${abs_srcdir}/baselines/new_arrays/var_array_auto_double_1.ncml (variable_new_arrays.at:47): ok (0m0.133s 0m0.111s) 256. "ddx" response for new_arrays/var_array_error_1.ncml: seeking match to ".*ParseError.*" (variable_new_arrays.at:51): ok (0m0.136s 0m0.108s) 250. Comparing dods response for new_arrays/var_array_auto_float_1.ncml to getdap (ascii) baseline ${abs_srcdir}/baselines/new_arrays/var_array_auto_float_1.ncml (variable_new_arrays.at:44): ok (0m0.179s 0m0.148s) 255. Comparing dods response for new_arrays/var_array_auto_double_1.ncml to getdap (ascii) baseline ${abs_srcdir}/baselines/new_arrays/var_array_auto_double_1.ncml (variable_new_arrays.at:48): ok (0m0.180s 0m0.147s) 257. "ddx" response for new_arrays/var_array_error_2.ncml: seeking match to ".*ParseError.*" (variable_new_arrays.at:54): ok (0m0.134s 0m0.113s) 258. "ddx" response for new_arrays/var_array_error_3.ncml: seeking match to ".*ParseError.*" (variable_new_arrays.at:57): ok (0m0.136s 0m0.112s) 259. "ddx" response for new_arrays/var_array_error_4.ncml: seeking match to ".*ParseError.*" (variable_new_arrays.at:60): ok (0m0.134s 0m0.112s) 260. "ddx" response for new_arrays/var_array_error_5.ncml: seeking match to ".*ParseError.*" (variable_new_arrays.at:63): ok (0m0.135s 0m0.113s) 261. "ddx" response for new_arrays/var_array_error_6.ncml: seeking match to ".*ParseError.*" (variable_new_arrays.at:66): ok (0m0.135s 0m0.110s) 262. "ddx" response for new_arrays/var_array_error_7.ncml: seeking match to ".*ParseError.*" (variable_new_arrays.at:69): ok (0m0.135s 0m0.109s) 263. "ddx" response for new_arrays/var_array_error_8.ncml: seeking match to ".*ParseError.*" (variable_new_arrays.at:72): ok (0m0.133s 0m0.108s) 264. "ddx" response for new_arrays/var_array_error_9.ncml: seeking match to ".*ParseError.*" (variable_new_arrays.at:75): ok (0m0.133s 0m0.106s) 265. "ddx" response for new_arrays/var_array_error_10.ncml: seeking match to ".*ParseError.*" (variable_new_arrays.at:78): ok (0m0.133s 0m0.106s) 266. "ddx" response for new_arrays/var_array_error_11.ncml: seeking match to ".*ParseError.*" (variable_new_arrays.at:81): ok (0m0.130s 0m0.107s) 267. "ddx" response for new_arrays/var_array_error_12.ncml: seeking match to ".*ParseError.*" (variable_new_arrays.at:84): ok (0m0.132s 0m0.109s) 268. "ddx" response for new_arrays/var_array_error_13.ncml: seeking match to ".*ParseError.*" (variable_new_arrays.at:87): ok (0m0.133s 0m0.109s) 271. Comparing das response for new_arrays/var_array_int_1.ncml to baseline ${abs_srcdir}/baselines/new_arrays/var_array_int_1_cons_1.ncml (variable_new_arrays.at:98): ok (0m0.132s 0m0.110s) 270. "ddx" response for new_arrays/var_array_error_15.ncml: seeking match to ".*ParseError.*" (variable_new_arrays.at:93): ok (0m0.133s 0m0.112s) 272. Comparing dds response for new_arrays/var_array_int_1.ncml to baseline ${abs_srcdir}/baselines/new_arrays/var_array_int_1_cons_1.ncml (variable_new_arrays.at:98): ok (0m0.133s 0m0.110s) 269. "ddx" response for new_arrays/var_array_error_14.ncml: seeking match to ".*ParseError.*" (variable_new_arrays.at:90): ok (0m0.133s 0m0.110s) 273. Comparing ddx response for new_arrays/var_array_int_1.ncml to baseline ${abs_srcdir}/baselines/new_arrays/var_array_int_1_cons_1.ncml (variable_new_arrays.at:98): ok (0m0.134s 0m0.104s) 275. Comparing das response for new_arrays/var_array_int_1.ncml to baseline ${abs_srcdir}/baselines/new_arrays/var_array_int_1_cons_2.ncml (variable_new_arrays.at:99): ok (0m0.132s 0m0.110s) 276. Comparing dds response for new_arrays/var_array_int_1.ncml to baseline ${abs_srcdir}/baselines/new_arrays/var_array_int_1_cons_2.ncml (variable_new_arrays.at:99): ok (0m0.131s 0m0.111s) 274. Comparing dods response for new_arrays/var_array_int_1.ncml to baseline ${abs_srcdir}/baselines/new_arrays/var_array_int_1_cons_1.ncml (variable_new_arrays.at:98): ok (0m0.134s 0m0.113s) 277. Comparing ddx response for new_arrays/var_array_int_1.ncml to baseline ${abs_srcdir}/baselines/new_arrays/var_array_int_1_cons_2.ncml (variable_new_arrays.at:99): ok (0m0.131s 0m0.109s) 279. Comparing das response for new_arrays/var_array_int_1.ncml to baseline ${abs_srcdir}/baselines/new_arrays/var_array_int_1_cons_3.ncml (variable_new_arrays.at:100): ok (0m0.131s 0m0.107s) 280. Comparing dds response for new_arrays/var_array_int_1.ncml to baseline ${abs_srcdir}/baselines/new_arrays/var_array_int_1_cons_3.ncml (variable_new_arrays.at:100): ok (0m0.135s 0m0.110s) 281. Comparing ddx response for new_arrays/var_array_int_1.ncml to baseline ${abs_srcdir}/baselines/new_arrays/var_array_int_1_cons_3.ncml (variable_new_arrays.at:100): ok (0m0.134s 0m0.107s) 278. Comparing dods response for new_arrays/var_array_int_1.ncml to baseline ${abs_srcdir}/baselines/new_arrays/var_array_int_1_cons_2.ncml (variable_new_arrays.at:99): ok (0m0.133s 0m0.113s) 282. Comparing dods response for new_arrays/var_array_int_1.ncml to baseline ${abs_srcdir}/baselines/new_arrays/var_array_int_1_cons_3.ncml (variable_new_arrays.at:100): ok (0m0.133s 0m0.111s) 283. Comparing das response for new_arrays/var_array_int_2.ncml to baseline ${abs_srcdir}/baselines/new_arrays/var_array_int_2.ncml (variable_new_multi_arrays.at:5): ok (0m0.132s 0m0.110s) 284. Comparing dds response for new_arrays/var_array_int_2.ncml to baseline ${abs_srcdir}/baselines/new_arrays/var_array_int_2.ncml (variable_new_multi_arrays.at:5): ok (0m0.131s 0m0.111s) 286. Comparing dods response for new_arrays/var_array_int_2.ncml to baseline ${abs_srcdir}/baselines/new_arrays/var_array_int_2.ncml (variable_new_multi_arrays.at:5): ok (0m0.132s 0m0.109s) 285. Comparing ddx response for new_arrays/var_array_int_2.ncml to baseline ${abs_srcdir}/baselines/new_arrays/var_array_int_2.ncml (variable_new_multi_arrays.at:5): ok (0m0.132s 0m0.110s) 289. Comparing dds response for new_arrays/var_array_int_3.ncml to baseline ${abs_srcdir}/baselines/new_arrays/var_array_int_3.ncml (variable_new_multi_arrays.at:9): ok (0m0.133s 0m0.107s) 288. Comparing das response for new_arrays/var_array_int_3.ncml to baseline ${abs_srcdir}/baselines/new_arrays/var_array_int_3.ncml (variable_new_multi_arrays.at:9): ok (0m0.132s 0m0.108s) 287. Comparing dods response for new_arrays/var_array_int_2.ncml to getdap (ascii) baseline ${abs_srcdir}/baselines/new_arrays/var_array_int_2.ncml (variable_new_multi_arrays.at:6): ok (0m0.179s 0m0.145s) 290. Comparing ddx response for new_arrays/var_array_int_3.ncml to baseline ${abs_srcdir}/baselines/new_arrays/var_array_int_3.ncml (variable_new_multi_arrays.at:9): ok (0m0.134s 0m0.107s) 291. Comparing dods response for new_arrays/var_array_int_3.ncml to baseline ${abs_srcdir}/baselines/new_arrays/var_array_int_3.ncml (variable_new_multi_arrays.at:9): ok (0m0.138s 0m0.116s) 293. Comparing das response for new_arrays/var_array_string_2d.ncml to baseline ${abs_srcdir}/baselines/new_arrays/var_array_string_2d.ncml (variable_new_multi_arrays.at:13): ok (0m0.134s 0m0.112s) 295. Comparing ddx response for new_arrays/var_array_string_2d.ncml to baseline ${abs_srcdir}/baselines/new_arrays/var_array_string_2d.ncml (variable_new_multi_arrays.at:13): ok (0m0.135s 0m0.110s) 292. Comparing dods response for new_arrays/var_array_int_3.ncml to getdap (ascii) baseline ${abs_srcdir}/baselines/new_arrays/var_array_int_3.ncml (variable_new_multi_arrays.at:10): ok (0m0.181s 0m0.145s) 294. Comparing dds response for new_arrays/var_array_string_2d.ncml to baseline ${abs_srcdir}/baselines/new_arrays/var_array_string_2d.ncml (variable_new_multi_arrays.at:13): ok (0m0.135s 0m0.113s) 296. Comparing dods response for new_arrays/var_array_string_2d.ncml to baseline ${abs_srcdir}/baselines/new_arrays/var_array_string_2d.ncml (variable_new_multi_arrays.at:13): ok (0m0.136s 0m0.110s) 297. Comparing dods response for new_arrays/var_array_string_2d.ncml to getdap (ascii) baseline ${abs_srcdir}/baselines/new_arrays/var_array_string_2d.ncml (variable_new_multi_arrays.at:14): ok (0m0.182s 0m0.142s) 298. Comparing das response for new_arrays/var_string_3d.ncml to baseline ${abs_srcdir}/baselines/new_arrays/var_string_3d.ncml (variable_new_multi_arrays.at:17): ok (0m0.136s 0m0.109s) 299. Comparing dds response for new_arrays/var_string_3d.ncml to baseline ${abs_srcdir}/baselines/new_arrays/var_string_3d.ncml (variable_new_multi_arrays.at:17): ok (0m0.134s 0m0.110s) 300. Comparing ddx response for new_arrays/var_string_3d.ncml to baseline ${abs_srcdir}/baselines/new_arrays/var_string_3d.ncml (variable_new_multi_arrays.at:17): ok (0m0.136s 0m0.114s) 301. Comparing dods response for new_arrays/var_string_3d.ncml to baseline ${abs_srcdir}/baselines/new_arrays/var_string_3d.ncml (variable_new_multi_arrays.at:17): ok (0m0.135s 0m0.114s) 303. "ddx" response for new_arrays/var_array_error_16.ncml: seeking match to ".*ParseError.*" (variable_new_multi_arrays.at:21): ok (0m0.132s 0m0.112s) 305. Comparing dds response for new_arrays/var_array_int_2.ncml to baseline ${abs_srcdir}/baselines/new_arrays/var_array_int_2_cons_1.ncml (variable_new_multi_arrays.at:25): ok (0m0.133s 0m0.107s) 304. Comparing das response for new_arrays/var_array_int_2.ncml to baseline ${abs_srcdir}/baselines/new_arrays/var_array_int_2_cons_1.ncml (variable_new_multi_arrays.at:25): ok (0m0.131s 0m0.112s) 302. Comparing dods response for new_arrays/var_string_3d.ncml to getdap (ascii) baseline ${abs_srcdir}/baselines/new_arrays/var_string_3d.ncml (variable_new_multi_arrays.at:18): ok (0m0.179s 0m0.146s) 306. Comparing ddx response for new_arrays/var_array_int_2.ncml to baseline ${abs_srcdir}/baselines/new_arrays/var_array_int_2_cons_1.ncml (variable_new_multi_arrays.at:25): ok (0m0.134s 0m0.114s) 308. Comparing das response for new_arrays/var_string_3d.ncml to baseline ${abs_srcdir}/baselines/new_arrays/var_string_3d_cons_1.ncml (variable_new_multi_arrays.at:28): ok (0m0.134s 0m0.113s) 307. Comparing dods response for new_arrays/var_array_int_2.ncml to baseline ${abs_srcdir}/baselines/new_arrays/var_array_int_2_cons_1.ncml (variable_new_multi_arrays.at:25): ok (0m0.135s 0m0.115s) 309. Comparing dds response for new_arrays/var_string_3d.ncml to baseline ${abs_srcdir}/baselines/new_arrays/var_string_3d_cons_1.ncml (variable_new_multi_arrays.at:28): ok (0m0.134s 0m0.109s) 310. Comparing ddx response for new_arrays/var_string_3d.ncml to baseline ${abs_srcdir}/baselines/new_arrays/var_string_3d_cons_1.ncml (variable_new_multi_arrays.at:28): ok (0m0.135s 0m0.107s) 311. Comparing dods response for new_arrays/var_string_3d.ncml to baseline ${abs_srcdir}/baselines/new_arrays/var_string_3d_cons_1.ncml (variable_new_multi_arrays.at:28): ok (0m0.135s 0m0.114s) 312. Comparing das response for new_arrays/var_string_3d.ncml to baseline ${abs_srcdir}/baselines/new_arrays/var_string_3d_cons_2.ncml (variable_new_multi_arrays.at:31): ok (0m0.133s 0m0.112s) 313. Comparing dds response for new_arrays/var_string_3d.ncml to baseline ${abs_srcdir}/baselines/new_arrays/var_string_3d_cons_2.ncml (variable_new_multi_arrays.at:31): ok (0m0.135s 0m0.113s) 314. Comparing ddx response for new_arrays/var_string_3d.ncml to baseline ${abs_srcdir}/baselines/new_arrays/var_string_3d_cons_2.ncml (variable_new_multi_arrays.at:31): ok (0m0.134s 0m0.109s) 315. Comparing dods response for new_arrays/var_string_3d.ncml to baseline ${abs_srcdir}/baselines/new_arrays/var_string_3d_cons_2.ncml (variable_new_multi_arrays.at:31): ok (0m0.136s 0m0.115s) 317. Comparing das response for sample_virtual_dataset.ncml to baseline ${abs_srcdir}/baselines/sample_virtual_dataset.ncml (variable_misc.at:8): ok (0m0.137s 0m0.113s) 316. "ddx" response for var_change_existing_error.ncml: seeking match to ".*ParseError.*" (variable_misc.at:5): ok (0m0.145s 0m0.122s) 318. Comparing dds response for sample_virtual_dataset.ncml to baseline ${abs_srcdir}/baselines/sample_virtual_dataset.ncml (variable_misc.at:8): ok (0m0.138s 0m0.112s) 319. Comparing ddx response for sample_virtual_dataset.ncml to baseline ${abs_srcdir}/baselines/sample_virtual_dataset.ncml (variable_misc.at:8): ok (0m0.138s 0m0.114s) 320. Comparing dods response for sample_virtual_dataset.ncml to baseline ${abs_srcdir}/baselines/sample_virtual_dataset.ncml (variable_misc.at:8): ok (0m0.139s 0m0.111s) 322. Comparing das response for reentrancy_test.ncml to baseline ${abs_srcdir}/baselines/reentrancy_test.ncml (variable_misc.at:12): ok (0m0.139s 0m0.112s) 321. Comparing dods response for sample_virtual_dataset.ncml to getdap (ascii) baseline ${abs_srcdir}/baselines/sample_virtual_dataset.ncml (variable_misc.at:9): ok (0m0.184s 0m0.150s) 323. Comparing dds response for reentrancy_test.ncml to baseline ${abs_srcdir}/baselines/reentrancy_test.ncml (variable_misc.at:12): ok (0m0.138s 0m0.110s) 324. Comparing ddx response for reentrancy_test.ncml to baseline ${abs_srcdir}/baselines/reentrancy_test.ncml (variable_misc.at:12): ok (0m0.137s 0m0.112s) 325. Comparing dods response for reentrancy_test.ncml to baseline ${abs_srcdir}/baselines/reentrancy_test.ncml (variable_misc.at:12): ok (0m0.137s 0m0.111s) 326. "ddx" response for bugs/missing_str_values.ncml: seeking match to ".*ParseError.*" (variable_misc.at:15): ok (0m0.134s 0m0.107s) 327. "ddx" response for bugs/values_set_twice_error.ncml: seeking match to ".*ParseError.*" (variable_misc.at:18): ok (0m0.133s 0m0.107s) 329. Comparing dds response for var_with_dot.ncml to baseline ${abs_srcdir}/baselines/var_with_dot.ncml (variable_misc.at:24): ok (0m0.135s 0m0.110s) 328. Comparing das response for var_with_dot.ncml to baseline ${abs_srcdir}/baselines/var_with_dot.ncml (variable_misc.at:24): ok (0m0.136s 0m0.107s) 330. Comparing ddx response for var_with_dot.ncml to baseline ${abs_srcdir}/baselines/var_with_dot.ncml (variable_misc.at:24): ok (0m0.138s 0m0.110s) 334. "ddx" response for invalid_attrs/error_attribute_attrs.ncml: seeking match to ".*ParseError.*" (parse_error_misc.at:12): ok (0m0.132s 0m0.111s) 331. Comparing dods response for var_with_dot.ncml to baseline ${abs_srcdir}/baselines/var_with_dot.ncml (variable_misc.at:24): ok (0m0.135s 0m0.110s) 333. "ddx" response for invalid_attrs/error_agg_bad_attr.ncml: seeking match to ".*ParseError.*" (parse_error_misc.at:9): ok (0m0.133s 0m0.113s) 335. "ddx" response for invalid_attrs/error_dimension_attrs.ncml: seeking match to ".*ParseError.*" (parse_error_misc.at:15): ok (0m0.133s 0m0.110s) 332. Comparing dods response for var_with_dot.ncml to getdap (ascii) baseline ${abs_srcdir}/baselines/var_with_dot.ncml (variable_misc.at:25): ok (0m0.182s 0m0.145s) 336. "ddx" response for invalid_attrs/error_explicit_attrs.ncml: seeking match to ".*ParseError.*" (parse_error_misc.at:18): ok (0m0.133s 0m0.111s) 338. "ddx" response for invalid_attrs/error_remove_attrs.ncml: seeking match to ".*ParseError.*" (parse_error_misc.at:24): ok (0m0.133s 0m0.108s) 337. "ddx" response for invalid_attrs/error_readMetadata_attrs.ncml: seeking match to ".*ParseError.*" (parse_error_misc.at:21): ok (0m0.133s 0m0.111s) 339. "ddx" response for invalid_attrs/error_values_attrs.ncml: seeking match to ".*ParseError.*" (parse_error_misc.at:27): ok (0m0.134s 0m0.112s) 342. "ddx" response for invalid_attrs/error_netcdf_invalid_1.ncml: seeking match to ".*ParseError.*" (parse_error_misc.at:38): ok (0m0.134s 0m0.111s) 340. "ddx" response for invalid_attrs/error_variable_attrs.ncml: seeking match to ".*ParseError.*" (parse_error_misc.at:30): ok (0m0.131s 0m0.109s) 341. "ddx" response for invalid_attrs/error_netcdf_attrs.ncml: seeking match to ".*ParseError.*" (parse_error_misc.at:33): ok (0m0.133s 0m0.107s) 343. "ddx" response for invalid_attrs/error_netcdf_invalid_2.ncml: seeking match to ".*ParseError.*" (parse_error_misc.at:39): ok (0m0.133s 0m0.107s) 344. "ddx" response for invalid_attrs/error_netcdf_invalid_3.ncml: seeking match to ".*ParseError.*" (parse_error_misc.at:40): ok (0m0.132s 0m0.108s) 346. "ddx" response for invalid_attrs/error_variableAgg_attrs.ncml: seeking match to ".*ParseError.*" (parse_error_misc.at:44): ok (0m0.131s 0m0.111s) 345. "ddx" response for invalid_attrs/error_netcdf_invalid_4.ncml: seeking match to ".*ParseError.*" (parse_error_misc.at:41): ok (0m0.140s 0m0.117s) 348. "ddx" response for invalid_attrs/error_variableAgg_2.ncml: seeking match to ".*ParseError.*" (parse_error_misc.at:50): ok (0m0.132s 0m0.109s) 347. "ddx" response for invalid_attrs/error_variableAgg_1.ncml: seeking match to ".*ParseError.*" (parse_error_misc.at:47): ok (0m0.131s 0m0.107s) 351. "ddx" response for agg/error_agg_in_wrong_loc_1.ncml: seeking match to ".*ParseError.*" (aggregations.at:7): ok (0m0.134s 0m0.111s) 349. "ddx" response for agg/error_multi_aggs.ncml: seeking match to ".*ParseError.*" (aggregations.at:5): ok (0m0.134s 0m0.111s) 350. "ddx" response for agg/error_improper_netcdf_loc.ncml: seeking match to ".*ParseError.*" (aggregations.at:6): ok (0m0.133s 0m0.112s) 352. "ddx" response for agg/error_agg_in_wrong_loc_2.ncml: seeking match to ".*ParseError.*" (aggregations.at:8): ok (0m0.131s 0m0.110s) 353. Comparing das response for agg/virtual_union.ncml to baseline ${abs_srcdir}/baselines/agg/virtual_union.ncml (aggregations.at:12): ok (0m0.138s 0m0.108s) 354. Comparing dds response for agg/virtual_union.ncml to baseline ${abs_srcdir}/baselines/agg/virtual_union.ncml (aggregations.at:12): ok (0m0.136s 0m0.108s) 355. Comparing ddx response for agg/virtual_union.ncml to baseline ${abs_srcdir}/baselines/agg/virtual_union.ncml (aggregations.at:12): ok (0m0.136s 0m0.107s) 356. Comparing dods response for agg/virtual_union.ncml to baseline ${abs_srcdir}/baselines/agg/virtual_union.ncml (aggregations.at:12): ok (0m0.136s 0m0.110s) 357. Comparing dods response for agg/virtual_union.ncml to getdap (ascii) baseline ${abs_srcdir}/baselines/agg/virtual_union.ncml (aggregations.at:13): ok (0m0.184s 0m0.140s) 361. Comparing dods response for agg/multi_nested_unions.ncml to baseline ${abs_srcdir}/baselines/agg/multi_nested_unions.ncml (aggregations.at:16): ok (0m0.133s 0m0.113s) 360. Comparing ddx response for agg/multi_nested_unions.ncml to baseline ${abs_srcdir}/baselines/agg/multi_nested_unions.ncml (aggregations.at:16): ok (0m0.136s 0m0.116s) 359. Comparing dds response for agg/multi_nested_unions.ncml to baseline ${abs_srcdir}/baselines/agg/multi_nested_unions.ncml (aggregations.at:16): ok (0m0.135s 0m0.115s) 358. Comparing das response for agg/multi_nested_unions.ncml to baseline ${abs_srcdir}/baselines/agg/multi_nested_unions.ncml (aggregations.at:16): ok (0m0.135s 0m0.115s) 363. Comparing das response for agg/modify_post_union.ncml to baseline ${abs_srcdir}/baselines/agg/modify_post_union.ncml (aggregations.at:21): ok (0m0.135s 0m0.108s) 362. Comparing dods response for agg/multi_nested_unions.ncml to getdap (ascii) baseline ${abs_srcdir}/baselines/agg/multi_nested_unions.ncml (aggregations.at:17): ok (0m0.180s 0m0.144s) 364. Comparing dds response for agg/modify_post_union.ncml to baseline ${abs_srcdir}/baselines/agg/modify_post_union.ncml (aggregations.at:21): ok (0m0.137s 0m0.107s) 365. Comparing ddx response for agg/modify_post_union.ncml to baseline ${abs_srcdir}/baselines/agg/modify_post_union.ncml (aggregations.at:21): ok (0m0.137s 0m0.107s) 366. Comparing dods response for agg/modify_post_union.ncml to baseline ${abs_srcdir}/baselines/agg/modify_post_union.ncml (aggregations.at:21): ok (0m0.134s 0m0.116s) 370. Comparing ddx response for agg/aggUnionSimple.ncml to baseline ${abs_srcdir}/baselines/agg/aggUnionSimple.ncml (aggregations.at:25): ok (0m0.144s 0m0.131s) 372. Comparing das response for agg/union_with_dimensions.ncml to baseline ${abs_srcdir}/baselines/agg/union_with_dimensions.ncml (aggregations.at:34): ok (0m0.135s 0m0.109s) 374. Comparing ddx response for agg/union_with_dimensions.ncml to baseline ${abs_srcdir}/baselines/agg/union_with_dimensions.ncml (aggregations.at:34): ok (0m0.137s 0m0.111s) 369. Comparing dds response for agg/aggUnionSimple.ncml to baseline ${abs_srcdir}/baselines/agg/aggUnionSimple.ncml (aggregations.at:25): ok (0m0.141s 0m0.132s) 368. Comparing das response for agg/aggUnionSimple.ncml to baseline ${abs_srcdir}/baselines/agg/aggUnionSimple.ncml (aggregations.at:25): ok (0m0.142s 0m0.134s) 373. Comparing dds response for agg/union_with_dimensions.ncml to baseline ${abs_srcdir}/baselines/agg/union_with_dimensions.ncml (aggregations.at:34): ok (0m0.135s 0m0.107s) 367. Comparing dods response for agg/modify_post_union.ncml to getdap (ascii) baseline ${abs_srcdir}/baselines/agg/modify_post_union.ncml (aggregations.at:22): ok (0m0.172s 0m0.137s) 375. Comparing dods response for agg/union_with_dimensions.ncml to baseline ${abs_srcdir}/baselines/agg/union_with_dimensions.ncml (aggregations.at:34): ok (0m0.106s 0m0.092s) 371. Comparing dods response for agg/aggUnionSimple.ncml to baseline ${abs_srcdir}/baselines/agg/aggUnionSimple.ncml (aggregations.at:25): ok (0m0.379s 0m0.385s) 378. "ddx" response for agg/joinNew_error_1.ncml: seeking match to ".*ParseError.*" (aggregations.at:46): ok (0m0.111s 0m0.093s) 377. "ddx" response for agg/union_dimension_mismatch_error.ncml: seeking match to ".*ParseError.*" (aggregations.at:40): ok (0m0.112s 0m0.089s) 376. Comparing dods response for agg/union_with_dimensions.ncml to getdap (ascii) baseline ${abs_srcdir}/baselines/agg/union_with_dimensions.ncml (aggregations.at:35): ok (0m0.143s 0m0.119s) 381. "ddx" response for agg/joinNew_error_4.ncml: seeking match to ".*ParseError.*" (aggregations.at:57): ok (0m0.107s 0m0.092s) 418. Comparing dds response for agg/netcdf_joinNew.ncml to baseline ${abs_srcdir}/baselines/agg/netcdf_joinNew.ncml (aggregations.at:90): ok (0m0.142s 0m0.133s) 417. Comparing das response for agg/netcdf_joinNew.ncml to baseline ${abs_srcdir}/baselines/agg/netcdf_joinNew.ncml (aggregations.at:90): ok (0m0.143s 0m0.137s) 419. Comparing ddx response for agg/netcdf_joinNew.ncml to baseline ${abs_srcdir}/baselines/agg/netcdf_joinNew.ncml (aggregations.at:90): ok (0m0.139s 0m0.125s) 421. Comparing das response for agg/netcdf_joinNew.ncml to baseline ${abs_srcdir}/baselines/agg/netcdf_joinNew_cons_1.ncml (aggregations.at:91): ok (0m0.142s 0m0.120s) 422. Comparing dds response for agg/netcdf_joinNew.ncml to baseline ${abs_srcdir}/baselines/agg/netcdf_joinNew_cons_1.ncml (aggregations.at:91): ok (0m0.140s 0m0.119s) 420. Comparing dods response for agg/netcdf_joinNew.ncml to baseline ${abs_srcdir}/baselines/agg/netcdf_joinNew.ncml (aggregations.at:90): ok (0m0.174s 0m0.170s) 423. Comparing ddx response for agg/netcdf_joinNew.ncml to baseline ${abs_srcdir}/baselines/agg/netcdf_joinNew_cons_1.ncml (aggregations.at:91): ok (0m0.144s 0m0.114s) 424. Comparing dods response for agg/netcdf_joinNew.ncml to baseline ${abs_srcdir}/baselines/agg/netcdf_joinNew_cons_1.ncml (aggregations.at:91): ok (0m0.138s 0m0.115s) 426. Comparing dds response for agg/joinNew_hdf5.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_hdf5.ncml (aggregations.at:94): ok (0m0.132s 0m0.104s) 427. Comparing ddx response for agg/joinNew_hdf5.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_hdf5.ncml (aggregations.at:94): ok (0m0.132s 0m0.109s) 425. Comparing das response for agg/joinNew_hdf5.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_hdf5.ncml (aggregations.at:94): ok (0m0.133s 0m0.108s) 428. Comparing dods response for agg/joinNew_hdf5.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_hdf5.ncml (aggregations.at:94): ok (0m0.114s 0m0.100s) 439. "ddx" response for agg/joinNew_explicit_map_err_1.ncml: seeking match to ".*ParseError.*" (aggregations.at:110): ok (0m0.132s 0m0.111s) 441. Comparing das response for agg/joinNew_string_coordVal.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_string_coordVal.ncml (aggregations.at:124): ok (0m0.139s 0m0.119s) 443. Comparing ddx response for agg/joinNew_string_coordVal.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_string_coordVal.ncml (aggregations.at:124): ok (0m0.140s 0m0.114s) 442. Comparing dds response for agg/joinNew_string_coordVal.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_string_coordVal.ncml (aggregations.at:124): ok (0m0.140s 0m0.124s) 446. Comparing das response for agg/joinNew_numeric_coordValue.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_numeric_coordValue.ncml (aggregations.at:128): ok (0m0.140s 0m0.112s) 444. Comparing dods response for agg/joinNew_string_coordVal.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_string_coordVal.ncml (aggregations.at:124): ok (0m0.172s 0m0.173s) 445. Comparing dods response for agg/joinNew_string_coordVal.ncml to getdap (ascii) baseline ${abs_srcdir}/baselines/agg/joinNew_string_coordVal.ncml (aggregations.at:125): ok (0m0.258s 0m0.210s) 448. Comparing ddx response for agg/joinNew_numeric_coordValue.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_numeric_coordValue.ncml (aggregations.at:128): ok (0m0.143s 0m0.120s) 447. Comparing dds response for agg/joinNew_numeric_coordValue.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_numeric_coordValue.ncml (aggregations.at:128): ok (0m0.141s 0m0.121s) 451. "ddx" response for agg/joinNew_string_coordVal_error.ncml: seeking match to ".*ParseError.*" (aggregations.at:134): ok (0m0.140s 0m0.118s) 452. "ddx" response for agg/joinNew_numeric_coordValue_error_1.ncml: seeking match to ".*ParseError.*" (aggregations.at:136): ok (0m0.141s 0m0.112s) 449. Comparing dods response for agg/joinNew_numeric_coordValue.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_numeric_coordValue.ncml (aggregations.at:128): ok (0m0.177s 0m0.179s) 450. Comparing dods response for agg/joinNew_numeric_coordValue.ncml to getdap (ascii) baseline ${abs_srcdir}/baselines/agg/joinNew_numeric_coordValue.ncml (aggregations.at:129): ok (0m0.259s 0m0.210s) 455. Comparing dds response for agg/joinNew_grid.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_grid_hslab_0 (aggregations.at:154): ok (0m0.158s 0m0.114s) 453. "ddx" response for agg/joinNew_numeric_coordValue_error_2.ncml: seeking match to ".*ParseError.*" (aggregations.at:138): ok (0m0.139s 0m0.118s) 454. Comparing das response for agg/joinNew_grid.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_grid_hslab_0 (aggregations.at:154): ok (0m0.159s 0m0.115s) 456. Comparing ddx response for agg/joinNew_grid.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_grid_hslab_0 (aggregations.at:154): ok (0m0.159s 0m0.109s) 457. Comparing dods response for agg/joinNew_grid.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_grid_hslab_0 (aggregations.at:154): ok (0m0.180s 0m0.114s) 458. Comparing dods response for agg/joinNew_grid.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_grid_hslab_1 (aggregations.at:158): ok (0m0.175s 0m0.102s) 462. Comparing dds response for agg/joinNew_grid.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_grid_arr_hslab_0 (aggregations.at:163): ok (0m0.160s 0m0.110s) 461. Comparing das response for agg/joinNew_grid.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_grid_arr_hslab_0 (aggregations.at:163): ok (0m0.162s 0m0.107s) 463. Comparing ddx response for agg/joinNew_grid.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_grid_arr_hslab_0 (aggregations.at:163): ok (0m0.162s 0m0.115s) 460. Comparing dods response for agg/joinNew_grid.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_grid_hslab_3 (aggregations.at:160): ok (0m0.194s 0m0.120s) 464. Comparing dods response for agg/joinNew_grid.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_grid_arr_hslab_0 (aggregations.at:163): ok (0m0.196s 0m0.120s) 459. Comparing dods response for agg/joinNew_grid.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_grid_hslab_2 (aggregations.at:159): ok (0m0.199s 0m0.120s) 466. Comparing das response for agg/joinNew_grid.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_grid_stride_evens (aggregations.at:172): ok (0m0.144s 0m0.100s) 465. Comparing dods response for agg/joinNew_grid.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_grid_arr_hslab_0123 (aggregations.at:166): ok (0m0.269s 0m0.135s) 467. Comparing dds response for agg/joinNew_grid.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_grid_stride_evens (aggregations.at:172): ok (0m0.145s 0m0.100s) 468. Comparing ddx response for agg/joinNew_grid.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_grid_stride_evens (aggregations.at:172): ok (0m0.150s 0m0.098s) 469. Comparing dods response for agg/joinNew_grid.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_grid_stride_evens (aggregations.at:172): ok (0m0.225s 0m0.114s) 473. Comparing ddx response for agg/joinNew_grid.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_grid_proj_lat (aggregations.at:178): ok (0m0.165s 0m0.116s) 471. Comparing das response for agg/joinNew_grid.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_grid_proj_lat (aggregations.at:178): ok (0m0.162s 0m0.117s) 472. Comparing dds response for agg/joinNew_grid.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_grid_proj_lat (aggregations.at:178): ok (0m0.162s 0m0.113s) 474. Comparing dods response for agg/joinNew_grid.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_grid_proj_lat (aggregations.at:178): ok (0m0.177s 0m0.126s) 476. Comparing dds response for agg/joinNew_scan.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_scan_hslab_0 (aggregations.at:182): ok (0m0.158s 0m0.112s) 475. Comparing das response for agg/joinNew_scan.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_scan_hslab_0 (aggregations.at:182): ok (0m0.156s 0m0.112s) 470. Comparing dods response for agg/joinNew_grid.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_grid_stride_odds (aggregations.at:175): ok (0m0.226s 0m0.128s) 477. Comparing ddx response for agg/joinNew_scan.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_scan_hslab_0 (aggregations.at:182): ok (0m0.165s 0m0.113s) 483. "ddx" response for agg/joinNew_scan_dir_error.ncml: seeking match to ".*ParseError.*" (aggregations.at:192): ok (0m0.133s 0m0.109s) 482. "ddx" response for agg/joinNew_scan_error.ncml: seeking match to ".*ParseError.*" (aggregations.at:189): ok (0m0.132s 0m0.106s) 478. Comparing dods response for agg/joinNew_scan.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_scan_hslab_0 (aggregations.at:182): ok (0m0.203s 0m0.121s) 481. Comparing dods response for agg/joinNew_scan.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_scan_hslab_3 (aggregations.at:185): ok (0m0.199s 0m0.121s) 479. Comparing dods response for agg/joinNew_scan.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_scan_hslab_1 (aggregations.at:183): ok (0m0.203s 0m0.122s) 480. Comparing dods response for agg/joinNew_scan.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_scan_hslab_2 (aggregations.at:184): ok (0m0.205s 0m0.124s) 484. Comparing das response for agg/joinNew_scan_regexp_1.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_scan_regexp_hslab_0 (aggregations.at:195): ok (0m0.166s 0m0.113s) 485. Comparing dds response for agg/joinNew_scan_regexp_1.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_scan_regexp_hslab_0 (aggregations.at:195): ok (0m0.160s 0m0.112s) 486. Comparing ddx response for agg/joinNew_scan_regexp_1.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_scan_regexp_hslab_0 (aggregations.at:195): ok (0m0.160s 0m0.111s) 489. Comparing dods response for agg/joinNew_scan_regexp_1.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_scan_regexp_hslab_2 (aggregations.at:197): ok (0m0.195s 0m0.111s) 487. Comparing dods response for agg/joinNew_scan_regexp_1.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_scan_regexp_hslab_0 (aggregations.at:195): ok (0m0.195s 0m0.119s) 488. Comparing dods response for agg/joinNew_scan_regexp_1.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_scan_regexp_hslab_1 (aggregations.at:196): ok (0m0.193s 0m0.120s) 497. Invoking touch on first three grid files for scan@olderThan test... (aggregations.at:215): ok (0m0.011s 0m0.017s) 490. Comparing dods response for agg/joinNew_scan_regexp_1.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_scan_regexp_hslab_3 (aggregations.at:198): ok (0m0.195s 0m0.122s) 491. Comparing dods response for agg/joinNew_scan_regexp_2.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_scan_regexp_2_hslab_0 (aggregations.at:200): ok (0m0.196s 0m0.122s) 495. "ddx" response for agg/joinNew_scan_regexp_error_1.ncml: seeking match to ".*ParseError.*" (aggregations.at:206): ok (0m0.124s 0m0.101s) 496. "ddx" response for agg/joinNew_scan_olderThan_error_1.ncml: seeking match to ".*ParseError.*" (aggregations.at:210): ok (0m0.124s 0m0.101s) 493. Comparing dods response for agg/joinNew_scan_regexp_2.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_scan_regexp_2_hslab_2 (aggregations.at:202): ok (0m0.190s 0m0.119s) 492. Comparing dods response for agg/joinNew_scan_regexp_2.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_scan_regexp_2_hslab_1 (aggregations.at:201): ok (0m0.195s 0m0.121s) 494. Comparing dods response for agg/joinNew_scan_regexp_2.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_scan_regexp_2_hslab_3 (aggregations.at:203): ok (0m0.193s 0m0.119s) 498. Comparing dods response for agg/joinNew_scan_olderThan.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_scan_olderThan_hslab (aggregations.at:220): ok (0m0.201s 0m0.121s) 499. Comparing das response for agg/joinNew_scan_dfm.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_scan_dfm.ncml (aggregations.at:224): ok (0m0.143s 0m0.110s) 500. Comparing dds response for agg/joinNew_scan_dfm.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_scan_dfm.ncml (aggregations.at:224): ok (0m0.144s 0m0.118s) 501. Comparing ddx response for agg/joinNew_scan_dfm.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_scan_dfm.ncml (aggregations.at:224): ok (0m0.143s 0m0.120s) 504. Comparing das response for agg/joinNew_scan_dfm_2.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_scan_dfm_2.ncml (aggregations.at:231): ok (0m0.144s 0m0.122s) 505. Comparing dds response for agg/joinNew_scan_dfm_2.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_scan_dfm_2.ncml (aggregations.at:231): ok (0m0.145s 0m0.121s) 509. "ddx" response for agg/joinNew_scan_dfm_err_2.ncml: seeking match to ".*ParseError.*" (aggregations.at:235): ok (0m0.136s 0m0.116s) 506. Comparing ddx response for agg/joinNew_scan_dfm_2.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_scan_dfm_2.ncml (aggregations.at:231): ok (0m0.148s 0m0.117s) 510. Comparing das response for agg/joinNew_grid_metadata.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_grid_metadata.ncml (aggregations.at:242): ok (0m0.165s 0m0.129s) 502. Comparing dods response for agg/joinNew_scan_dfm.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_scan_dfm.ncml (aggregations.at:224): ok (0m0.235s 0m0.264s) 511. Comparing dds response for agg/joinNew_grid_metadata.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_grid_metadata.ncml (aggregations.at:242): ok (0m0.164s 0m0.120s) 512. Comparing ddx response for agg/joinNew_grid_metadata.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_grid_metadata.ncml (aggregations.at:242): ok (0m0.168s 0m0.118s) 503. Comparing dods response for agg/joinNew_scan_dfm.ncml to getdap (ascii) baseline ${abs_srcdir}/baselines/agg/joinNew_scan_dfm.ncml (aggregations.at:225): ok (0m0.284s 0m0.305s) 507. Comparing dods response for agg/joinNew_scan_dfm_2.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_scan_dfm_2.ncml (aggregations.at:231): ok (0m0.235s 0m0.270s) 508. Comparing dods response for agg/joinNew_scan_dfm_2.ncml to getdap (ascii) baseline ${abs_srcdir}/baselines/agg/joinNew_scan_dfm_2.ncml (aggregations.at:232): ok (0m0.289s 0m0.302s) 514. Comparing das response for agg/joinNew_grid_pre_metadata.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_grid_pre_metadata.ncml (aggregations.at:245): ok (0m0.163s 0m0.131s) 515. Comparing dds response for agg/joinNew_grid_pre_metadata.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_grid_pre_metadata.ncml (aggregations.at:245): ok (0m0.163s 0m0.111s) 516. Comparing ddx response for agg/joinNew_grid_pre_metadata.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_grid_pre_metadata.ncml (aggregations.at:245): ok (0m0.166s 0m0.111s) 519. Comparing dds response for agg/joinNew_grid_meta_2.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_grid_meta_2.ncml (aggregations.at:248): ok (0m0.150s 0m0.112s) 518. Comparing das response for agg/joinNew_grid_meta_2.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_grid_meta_2.ncml (aggregations.at:248): ok (0m0.156s 0m0.110s) 520. Comparing ddx response for agg/joinNew_grid_meta_2.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_grid_meta_2.ncml (aggregations.at:248): ok (0m0.151s 0m0.115s) 513. Comparing dods response for agg/joinNew_grid_metadata.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_grid_metadata.ncml (aggregations.at:242): ok (0m0.253s 0m0.230s) 523. Comparing dds response for agg/joinNew_grid_meta_everywhere.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_grid_meta_everywhere.ncml (aggregations.at:253): ok (0m0.119s 0m0.086s) 522. Comparing das response for agg/joinNew_grid_meta_everywhere.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_grid_meta_everywhere.ncml (aggregations.at:253): ok (0m0.123s 0m0.091s) 517. Comparing dods response for agg/joinNew_grid_pre_metadata.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_grid_pre_metadata.ncml (aggregations.at:245): ok (0m0.248s 0m0.214s) 521. Comparing dods response for agg/joinNew_grid_meta_2.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_grid_meta_2.ncml (aggregations.at:248): ok (0m0.208s 0m0.194s) 524. Comparing ddx response for agg/joinNew_grid_meta_everywhere.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_grid_meta_everywhere.ncml (aggregations.at:253): ok (0m0.151s 0m0.092s) 527. "ddx" response for agg/joinNew_bug_1514.ncml: seeking match to ".*ParseError.*" (aggregations.at:262): ok (0m0.161s 0m0.116s) 528. "ddx" response for agg/error_joinExisting_2.ncml: seeking match to ".*ParseError.*" (aggregations.at:294): ok (0m0.129s 0m0.107s) 526. "ddx" response for agg/joinNew_grid_meta_err_1.ncml: seeking match to ".*ParseError.*" (aggregations.at:259): ok (0m0.160s 0m0.114s) 525. Comparing dods response for agg/joinNew_grid_meta_everywhere.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_grid_meta_everywhere.ncml (aggregations.at:253): ok (0m0.453s 0m0.330s) 553. "ddx" response for agg/joinExisting_varAgg_err_1.ncml: seeking match to ".*ParseError.*" (aggregations.at:343): ok (0m0.135s 0m0.110s) 554. "ddx" response for agg/joinExisting_varAgg_err_2.ncml: seeking match to ".*ParseError.*" (aggregations.at:346): ok (0m0.134s 0m0.123s) 555. "ddx" response for agg/joinExisting_varAgg_err_3.ncml: seeking match to ".*ParseError.*" (aggregations.at:349): ok (0m0.139s 0m0.104s) 556. Comparing das response for agg/joinExist_ugrid_scan.ncml to baseline ${abs_srcdir}/baselines/agg/joinExist_ugrid_scan.ncml (aggregations.at:353): ok (0m0.151s 0m0.118s) 557. Comparing dds response for agg/joinExist_ugrid_scan.ncml to baseline ${abs_srcdir}/baselines/agg/joinExist_ugrid_scan.ncml (aggregations.at:353): ok (0m0.149s 0m0.118s) 558. Comparing ddx response for agg/joinExist_ugrid_scan.ncml to baseline ${abs_srcdir}/baselines/agg/joinExist_ugrid_scan.ncml (aggregations.at:353): ok (0m0.148s 0m0.111s) 560. Comparing das response for agg/joinExisting_nc.ncml to baseline ${abs_srcdir}/baselines/agg/joinExisting_nc.ncml (aggregations.at:361): ok (0m0.152s 0m0.129s) 559. Comparing dods response for agg/joinExist_ugrid_scan.ncml to baseline ${abs_srcdir}/baselines/agg/joinExist_ugrid_scan.ncml (aggregations.at:353): ok (0m0.203s 0m0.136s) 561. Comparing dds response for agg/joinExisting_nc.ncml to baseline ${abs_srcdir}/baselines/agg/joinExisting_nc.ncml (aggregations.at:361): ok (0m0.150s 0m0.137s) 562. Comparing ddx response for agg/joinExisting_nc.ncml to baseline ${abs_srcdir}/baselines/agg/joinExisting_nc.ncml (aggregations.at:361): ok (0m0.151s 0m0.133s) 564. Comparing dods response for agg/joinExisting_nc.ncml to baseline ${abs_srcdir}/baselines/agg/joinExisting_nc_cons_1 (aggregations.at:364): ok (0m0.172s 0m0.170s) 563. Comparing dods response for agg/joinExisting_nc.ncml to baseline ${abs_srcdir}/baselines/agg/joinExisting_nc.ncml (aggregations.at:361): ok (0m0.172s 0m0.169s) 566. Comparing dds response for agg/joinExisting_simple_grid.ncml to baseline ${abs_srcdir}/baselines/agg/joinExisting_simple_grid.ncml (aggregations.at:372): ok (0m0.149s 0m0.128s) 565. Comparing das response for agg/joinExisting_simple_grid.ncml to baseline ${abs_srcdir}/baselines/agg/joinExisting_simple_grid.ncml (aggregations.at:372): ok (0m0.150s 0m0.129s) 567. Comparing ddx response for agg/joinExisting_simple_grid.ncml to baseline ${abs_srcdir}/baselines/agg/joinExisting_simple_grid.ncml (aggregations.at:372): ok (0m0.154s 0m0.134s) 572. Comparing dods response for agg/joinExisting_simple_grid.ncml to baseline ${abs_srcdir}/baselines/agg/joinExisting_simple_grid_cons_3 (aggregations.at:383): ok (0m0.160s 0m0.161s) 569. Comparing dods response for agg/joinExisting_simple_grid.ncml to baseline ${abs_srcdir}/baselines/agg/joinExisting_simple_grid_cons_0 (aggregations.at:376): ok (0m0.173s 0m0.182s) 573. Comparing dods response for agg/joinExisting_simple_grid.ncml to baseline ${abs_srcdir}/baselines/agg/joinExisting_simple_grid_cons_4 (aggregations.at:386): ok (0m0.169s 0m0.173s) 574. Comparing dods response for agg/joinExisting_simple_grid.ncml to baseline ${abs_srcdir}/baselines/agg/joinExisting_simple_grid_cons_6 (aggregations.at:394): ok (0m0.177s 0m0.187s) 571. Comparing dods response for agg/joinExisting_simple_grid.ncml to baseline ${abs_srcdir}/baselines/agg/joinExisting_simple_grid_cons_2 (aggregations.at:380): ok (0m0.188s 0m0.207s) 570. Comparing dods response for agg/joinExisting_simple_grid.ncml to baseline ${abs_srcdir}/baselines/agg/joinExisting_simple_grid_cons_1 (aggregations.at:377): ok (0m0.188s 0m0.198s) 568. Comparing dods response for agg/joinExisting_simple_grid.ncml to baseline ${abs_srcdir}/baselines/agg/joinExisting_simple_grid.ncml (aggregations.at:372): ok (0m0.208s 0m0.232s) 582. Comparing dds response for agg/joinExist_scan_ncoords.ncml to baseline ${abs_srcdir}/baselines/agg/joinExist_scan_ncoords.ncml (aggregations.at:407): ok (0m0.141s 0m0.124s) 581. Comparing das response for agg/joinExist_scan_ncoords.ncml to baseline ${abs_srcdir}/baselines/agg/joinExist_scan_ncoords.ncml (aggregations.at:407): ok (0m0.141s 0m0.121s) 576. Comparing dods response for agg/joinExisting_simple_grid.ncml to baseline ${abs_srcdir}/baselines/agg/joinExisting_simple_grid_cons_8 (aggregations.at:396): ok (0m0.173s 0m0.186s) 575. Comparing dods response for agg/joinExisting_simple_grid.ncml to baseline ${abs_srcdir}/baselines/agg/joinExisting_simple_grid_cons_7 (aggregations.at:395): ok (0m0.176s 0m0.181s) 579. Comparing dods response for agg/joinExisting_simple_grid.ncml to baseline ${abs_srcdir}/baselines/agg/joinExisting_simple_grid_cons_11 (aggregations.at:401): ok (0m0.156s 0m0.140s) 577. Comparing dods response for agg/joinExisting_simple_grid.ncml to baseline ${abs_srcdir}/baselines/agg/joinExisting_simple_grid_cons_9 (aggregations.at:399): ok (0m0.158s 0m0.143s) 578. Comparing dods response for agg/joinExisting_simple_grid.ncml to baseline ${abs_srcdir}/baselines/agg/joinExisting_simple_grid_cons_10 (aggregations.at:400): ok (0m0.158s 0m0.142s) 583. Comparing ddx response for agg/joinExist_scan_ncoords.ncml to baseline ${abs_srcdir}/baselines/agg/joinExist_scan_ncoords.ncml (aggregations.at:407): ok (0m0.139s 0m0.116s) 588. "ddx" response for agg/joinExist_grid_meta_err_1.ncml: seeking match to ".*ParseError.*" (aggregations.at:423): ok (0m0.143s 0m0.122s) 585. Comparing ddx response for agg/joinExist_grid_add_meta.ncml to baseline ${abs_srcdir}/baselines/agg/joinExist_grid_add_meta (aggregations.at:414): ok (0m0.145s 0m0.121s) 580. Comparing dods response for agg/joinExisting_simple_grid.ncml to baseline ${abs_srcdir}/baselines/agg/joinExisting_simple_grid_cons_12 (aggregations.at:404): ok (0m0.183s 0m0.188s) 586. Comparing ddx response for agg/joinExist_grid_add_cont_meta.ncml to baseline ${abs_srcdir}/baselines/agg/joinExist_grid_add_cont_meta (aggregations.at:417): ok (0m0.145s 0m0.123s) 589. Comparing das response for agg/joinExisting_load_ncoords.ncml to baseline ${abs_srcdir}/baselines/agg/joinExisting_load_ncoords.ncml (aggregations.at:430): ok (0m0.152s 0m0.133s) 587. Comparing ddx response for agg/joinExist_grid_mod_meta.ncml to baseline ${abs_srcdir}/baselines/agg/joinExist_grid_mod_meta (aggregations.at:420): ok (0m0.146s 0m0.121s) 590. Comparing dds response for agg/joinExisting_load_ncoords.ncml to baseline ${abs_srcdir}/baselines/agg/joinExisting_load_ncoords.ncml (aggregations.at:430): ok (0m0.152s 0m0.132s) 591. Comparing ddx response for agg/joinExisting_load_ncoords.ncml to baseline ${abs_srcdir}/baselines/agg/joinExisting_load_ncoords.ncml (aggregations.at:430): ok (0m0.149s 0m0.131s) 595. Comparing ddx response for agg/joinExist_scan.ncml to baseline ${abs_srcdir}/baselines/agg/joinExist_scan.ncml (aggregations.at:434): ok (0m0.144s 0m0.126s) 594. Comparing dds response for agg/joinExist_scan.ncml to baseline ${abs_srcdir}/baselines/agg/joinExist_scan.ncml (aggregations.at:434): ok (0m0.144s 0m0.120s) 593. Comparing das response for agg/joinExist_scan.ncml to baseline ${abs_srcdir}/baselines/agg/joinExist_scan.ncml (aggregations.at:434): ok (0m0.144s 0m0.118s) 584. Comparing dods response for agg/joinExist_scan_ncoords.ncml to baseline ${abs_srcdir}/baselines/agg/joinExist_scan_ncoords.ncml (aggregations.at:407): ok (0m0.198s 0m0.213s) 597. Comparing das response for gateway/gateway_aggregation.ncml to baseline ${abs_srcdir}/baselines/gateway/gateway_aggregation.ncml (gateway_tests.at:4): ok (0m0.148s 0m0.119s) 598. Comparing dds response for gateway/gateway_aggregation.ncml to baseline ${abs_srcdir}/baselines/gateway/gateway_aggregation.ncml (gateway_tests.at:4): ok (0m0.151s 0m0.121s) 599. Comparing ddx response for gateway/gateway_aggregation.ncml to baseline ${abs_srcdir}/baselines/gateway/gateway_aggregation.ncml (gateway_tests.at:4): ok (0m0.148s 0m0.119s) 592. Comparing dods response for agg/joinExisting_load_ncoords.ncml to baseline ${abs_srcdir}/baselines/agg/joinExisting_load_ncoords.ncml (aggregations.at:430): ok (0m0.173s 0m0.172s) 601. Comparing das response for gateway/gateway_var_mods.ncml to baseline ${abs_srcdir}/baselines/gateway/gateway_var_mods.ncml (gateway_tests.at:5): ok (0m0.145s 0m0.117s) 596. Comparing dods response for agg/joinExist_scan.ncml to baseline ${abs_srcdir}/baselines/agg/joinExist_scan.ncml (aggregations.at:434): ok (0m0.198s 0m0.210s) 607. Comparing ddx response for gdal/joinNew_geotiff.ncml to baseline ${abs_srcdir}/baselines/gdal/joinNew_geotiff.ncml (handler_tests.at:6): ok (0m0.129s 0m0.111s) 602. Comparing dds response for gateway/gateway_var_mods.ncml to baseline ${abs_srcdir}/baselines/gateway/gateway_var_mods.ncml (gateway_tests.at:5): ok (0m0.145s 0m0.119s) 606. Comparing dds response for gdal/joinNew_geotiff.ncml to baseline ${abs_srcdir}/baselines/gdal/joinNew_geotiff.ncml (handler_tests.at:6): ok (0m0.130s 0m0.109s) 605. Comparing das response for gdal/joinNew_geotiff.ncml to baseline ${abs_srcdir}/baselines/gdal/joinNew_geotiff.ncml (handler_tests.at:6): ok (0m0.129s 0m0.107s) 603. Comparing ddx response for gateway/gateway_var_mods.ncml to baseline ${abs_srcdir}/baselines/gateway/gateway_var_mods.ncml (gateway_tests.at:5): ok (0m0.147s 0m0.119s) 604. Comparing dods response for gateway/gateway_var_mods.ncml to baseline ${abs_srcdir}/baselines/gateway/gateway_var_mods.ncml (gateway_tests.at:5): ok (0m0.161s 0m0.150s) 600. Comparing dods response for gateway/gateway_aggregation.ncml to baseline ${abs_srcdir}/baselines/gateway/gateway_aggregation.ncml (gateway_tests.at:4): ok (0m0.246s 0m0.263s) 608. Comparing dods response for gdal/joinNew_geotiff.ncml to baseline ${abs_srcdir}/baselines/gdal/joinNew_geotiff.ncml (handler_tests.at:6): ok (0m0.187s 0m0.101s) testsuite: ending at: Fri Aug 3 16:15:14 MDT 2018 testsuite: test suite duration: 0h 0m 51s ## ------------- ## ## Test results. ## ## ------------- ## ERROR: All 608 tests were run, 72 failed unexpectedly. ## ------------------------ ## ## Summary of the failures. ## ## ------------------------ ## Failed tests: bes 3.19.1 test suite: ncml autotest testsuite test groups: NUM: FILE-NAME:LINE TEST-GROUP-NAME KEYWORDS 379: aggregations.at:50 "dods" response for agg/joinNew_error_2.ncml: seeking match to ".*ParseError.*" "dods" 380: aggregations.at:54 "dods" response for agg/joinNew_error_3.ncml: seeking match to ".*ParseError.*" "dods" 382: aggregations.at:60 Comparing das response for agg/joinNew_simple.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_simple.ncml das 383: aggregations.at:60 Comparing dds response for agg/joinNew_simple.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_simple.ncml dds 384: aggregations.at:60 Comparing ddx response for agg/joinNew_simple.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_simple.ncml ddx 385: aggregations.at:60 Comparing dods response for agg/joinNew_simple.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_simple.ncml dods 386: aggregations.at:61 Comparing dods response for agg/joinNew_simple.ncml to getdap (ascii) baseline ${abs_srcdir}/baselines/agg/joinNew_simple.ncml dods 387: aggregations.at:64 Comparing das response for agg/joinNew_simple_2.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_simple_2.ncml das 388: aggregations.at:64 Comparing dds response for agg/joinNew_simple_2.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_simple_2.ncml dds 389: aggregations.at:64 Comparing ddx response for agg/joinNew_simple_2.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_simple_2.ncml ddx 390: aggregations.at:64 Comparing dods response for agg/joinNew_simple_2.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_simple_2.ncml dods 391: aggregations.at:65 Comparing dods response for agg/joinNew_simple_2.ncml to getdap (ascii) baseline ${abs_srcdir}/baselines/agg/joinNew_simple_2.ncml dods 392: aggregations.at:68 Comparing das response for agg/joinNew_simple_3.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_simple_3.ncml das 393: aggregations.at:68 Comparing dds response for agg/joinNew_simple_3.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_simple_3.ncml dds 394: aggregations.at:68 Comparing ddx response for agg/joinNew_simple_3.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_simple_3.ncml ddx 395: aggregations.at:68 Comparing dods response for agg/joinNew_simple_3.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_simple_3.ncml dods 396: aggregations.at:69 Comparing dods response for agg/joinNew_simple_3.ncml to getdap (ascii) baseline ${abs_srcdir}/baselines/agg/joinNew_simple_3.ncml dods 397: aggregations.at:75 Comparing das response for agg/joinNew_simple.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_simple_cons_1.ncml das 398: aggregations.at:75 Comparing dds response for agg/joinNew_simple.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_simple_cons_1.ncml dds 399: aggregations.at:75 Comparing ddx response for agg/joinNew_simple.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_simple_cons_1.ncml ddx 400: aggregations.at:75 Comparing dods response for agg/joinNew_simple.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_simple_cons_1.ncml dods 401: aggregations.at:76 Comparing das response for agg/joinNew_simple.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_simple_cons_2.ncml das 402: aggregations.at:76 Comparing dds response for agg/joinNew_simple.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_simple_cons_2.ncml dds 403: aggregations.at:76 Comparing ddx response for agg/joinNew_simple.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_simple_cons_2.ncml ddx 404: aggregations.at:76 Comparing dods response for agg/joinNew_simple.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_simple_cons_2.ncml dods 405: aggregations.at:80 Comparing das response for agg/joinNew_simple_2.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_simple_2_cons_1.ncml das 406: aggregations.at:80 Comparing dds response for agg/joinNew_simple_2.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_simple_2_cons_1.ncml dds 407: aggregations.at:80 Comparing ddx response for agg/joinNew_simple_2.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_simple_2_cons_1.ncml ddx 408: aggregations.at:80 Comparing dods response for agg/joinNew_simple_2.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_simple_2_cons_1.ncml dods 409: aggregations.at:83 Comparing das response for agg/joinNew_simple_2.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_simple_2_cons_2.ncml das 410: aggregations.at:83 Comparing dds response for agg/joinNew_simple_2.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_simple_2_cons_2.ncml dds 411: aggregations.at:83 Comparing ddx response for agg/joinNew_simple_2.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_simple_2_cons_2.ncml ddx 412: aggregations.at:83 Comparing dods response for agg/joinNew_simple_2.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_simple_2_cons_2.ncml dods 413: aggregations.at:87 Comparing das response for agg/joinNew_simple_2.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_simple_2_cons_3.ncml das 414: aggregations.at:87 Comparing dds response for agg/joinNew_simple_2.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_simple_2_cons_3.ncml dds 415: aggregations.at:87 Comparing ddx response for agg/joinNew_simple_2.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_simple_2_cons_3.ncml ddx 416: aggregations.at:87 Comparing dods response for agg/joinNew_simple_2.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_simple_2_cons_3.ncml dods 429: aggregations.at:99 Comparing das response for agg/joinNew_with_explicit_map.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_with_explicit_map.ncml das 430: aggregations.at:99 Comparing dds response for agg/joinNew_with_explicit_map.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_with_explicit_map.ncml dds 431: aggregations.at:99 Comparing ddx response for agg/joinNew_with_explicit_map.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_with_explicit_map.ncml ddx 432: aggregations.at:99 Comparing dods response for agg/joinNew_with_explicit_map.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_with_explicit_map.ncml dods 433: aggregations.at:100 Comparing dods response for agg/joinNew_with_explicit_map.ncml to getdap (ascii) baseline ${abs_srcdir}/baselines/agg/joinNew_with_explicit_map.ncml dods 434: aggregations.at:105 Comparing das response for agg/joinNew_explicit_autogen.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_explicit_autogen.ncml das 435: aggregations.at:105 Comparing dds response for agg/joinNew_explicit_autogen.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_explicit_autogen.ncml dds 436: aggregations.at:105 Comparing ddx response for agg/joinNew_explicit_autogen.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_explicit_autogen.ncml ddx 437: aggregations.at:105 Comparing dods response for agg/joinNew_explicit_autogen.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_explicit_autogen.ncml dods 438: aggregations.at:106 Comparing dods response for agg/joinNew_explicit_autogen.ncml to getdap (ascii) baseline ${abs_srcdir}/baselines/agg/joinNew_explicit_autogen.ncml dods 440: aggregations.at:115 "ddx" response for agg/joinNew_explicit_map_err_2.ncml: seeking match to ".*ParseError.*" "ddx" 529: aggregations.at:297 Comparing das response for agg/joinExisting_virtual.ncml to baseline ${abs_srcdir}/baselines/agg/joinExisting_virtual.ncml das 530: aggregations.at:297 Comparing dds response for agg/joinExisting_virtual.ncml to baseline ${abs_srcdir}/baselines/agg/joinExisting_virtual.ncml dds 531: aggregations.at:297 Comparing ddx response for agg/joinExisting_virtual.ncml to baseline ${abs_srcdir}/baselines/agg/joinExisting_virtual.ncml ddx 532: aggregations.at:297 Comparing dods response for agg/joinExisting_virtual.ncml to baseline ${abs_srcdir}/baselines/agg/joinExisting_virtual.ncml dods 533: aggregations.at:304 Comparing dods response for agg/joinExisting_virtual.ncml to baseline ${abs_srcdir}/baselines/agg/joinExisting_virtual_cons_1 dods 534: aggregations.at:307 Comparing dods response for agg/joinExisting_virtual.ncml to baseline ${abs_srcdir}/baselines/agg/joinExisting_virtual_cons_2 dods 535: aggregations.at:310 Comparing dods response for agg/joinExisting_virtual.ncml to baseline ${abs_srcdir}/baselines/agg/joinExisting_virtual_cons_3 dods 536: aggregations.at:313 Comparing dods response for agg/joinExisting_virtual.ncml to baseline ${abs_srcdir}/baselines/agg/joinExisting_virtual_cons_4 dods 537: aggregations.at:316 Comparing dods response for agg/joinExisting_virtual.ncml to baseline ${abs_srcdir}/baselines/agg/joinExisting_virtual_cons_5 dods 538: aggregations.at:322 Comparing das response for agg/joinExisting_virtual_fine.ncml to baseline ${abs_srcdir}/baselines/agg/joinExisting_virtual_fine.ncml das 539: aggregations.at:322 Comparing dds response for agg/joinExisting_virtual_fine.ncml to baseline ${abs_srcdir}/baselines/agg/joinExisting_virtual_fine.ncml dds 540: aggregations.at:322 Comparing ddx response for agg/joinExisting_virtual_fine.ncml to baseline ${abs_srcdir}/baselines/agg/joinExisting_virtual_fine.ncml ddx 541: aggregations.at:322 Comparing dods response for agg/joinExisting_virtual_fine.ncml to baseline ${abs_srcdir}/baselines/agg/joinExisting_virtual_fine.ncml dods 542: aggregations.at:325 Comparing dods response for agg/joinExisting_virtual_fine.ncml to baseline ${abs_srcdir}/baselines/agg/joinExisting_fine_cons_1 dods 543: aggregations.at:328 Comparing dods response for agg/joinExisting_virtual_fine.ncml to baseline ${abs_srcdir}/baselines/agg/joinExisting_fine_cons_2 dods 544: aggregations.at:331 Comparing dods response for agg/joinExisting_virtual_fine.ncml to baseline ${abs_srcdir}/baselines/agg/joinExisting_fine_cons_3 dods 545: aggregations.at:334 Comparing das response for agg/joinExisting_multi.ncml to baseline ${abs_srcdir}/baselines/agg/joinExisting_multi.ncml das 546: aggregations.at:334 Comparing dds response for agg/joinExisting_multi.ncml to baseline ${abs_srcdir}/baselines/agg/joinExisting_multi.ncml dds 547: aggregations.at:334 Comparing ddx response for agg/joinExisting_multi.ncml to baseline ${abs_srcdir}/baselines/agg/joinExisting_multi.ncml ddx 548: aggregations.at:334 Comparing dods response for agg/joinExisting_multi.ncml to baseline ${abs_srcdir}/baselines/agg/joinExisting_multi.ncml dods 549: aggregations.at:340 Comparing das response for agg/joinExisting_varAgg.ncml to baseline ${abs_srcdir}/baselines/agg/joinExisting_varAgg.ncml das 550: aggregations.at:340 Comparing dds response for agg/joinExisting_varAgg.ncml to baseline ${abs_srcdir}/baselines/agg/joinExisting_varAgg.ncml dds 551: aggregations.at:340 Comparing ddx response for agg/joinExisting_varAgg.ncml to baseline ${abs_srcdir}/baselines/agg/joinExisting_varAgg.ncml ddx 552: aggregations.at:340 Comparing dods response for agg/joinExisting_varAgg.ncml to baseline ${abs_srcdir}/baselines/agg/joinExisting_varAgg.ncml dods ## ---------------------- ## ## Detailed failed tests. ## ## ---------------------- ## # -*- compilation -*- 379. aggregations.at:50: testing "dods" response for agg/joinNew_error_2.ncml: seeking match to ".*ParseError.*" ... ./aggregations.at:50: besstandalone -c $abs_builddir/bes.conf -i ./test.bescmd stderr: Width: 20 Name: V Width: 20 Name: V Width: 40 Name: V ================================================================= ==75655==ERROR: AddressSanitizer: heap-buffer-overflow on address 0x603000011004 at pc 0x00010eb8d3fe bp 0x7ffee180b9b0 sp 0x7ffee180b160 READ of size 40 at 0x603000011004 thread T0 #0 0x10eb8d3fd in __asan_memcpy (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x4f3fd) Provided dSYM: [/Users/jimg/src/opendap/hyrax_git/build/lib/libdap.25.dylib.dSYM/Contents/Resources/DWARF/libdap.25.dylib] does not match symbol owner 0x7fa087205b80 #1 0x110793f39 in libdap::Vector::val2buf(void*, bool) Vector.cc:1212 #2 0x11077d5e7 in libdap::Vector::m_duplicate(libdap::Vector const&) Vector.cc:116 #3 0x110781733 in libdap::Vector::Vector(libdap::Vector const&) Vector.cc:297 #4 0x1107cf385 in libdap::Array::Array(libdap::Array const&) Array.cc:164 #5 0x119a988da in agg_util::ArrayAggregationBase::ArrayAggregationBase(agg_util::ArrayAggregationBase const&) ArrayAggregationBase.cc:56 #6 0x119a87f84 in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(agg_util::ArrayAggregateOnOuterDimension const&) ArrayAggregateOnOuterDimension.cc:70 #7 0x119a8835c in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(agg_util::ArrayAggregateOnOuterDimension const&) ArrayAggregateOnOuterDimension.cc:71 #8 0x119a8889c in agg_util::ArrayAggregateOnOuterDimension::ptr_duplicate() ArrayAggregateOnOuterDimension.cc:85 #9 0x1106800fd in libdap::DDS::add_var(libdap::BaseType*) DDS.cc:607 #10 0x1199eade8 in ncml_module::AggregationElement::processAggVarJoinNewForArray(libdap::DDS&, libdap::Array const&, agg_util::Dimension const&, std::__1::vector, std::__1::allocator > > const&) AggregationElement.cc:867 #11 0x1199b5db0 in ncml_module::AggregationElement::processJoinNewOnAggVar(libdap::DDS*, std::__1::basic_string, std::__1::allocator > const&, libdap::DDS const&) AggregationElement.cc:801 #12 0x11997b4d7 in ncml_module::AggregationElement::processJoinNew() AggregationElement.cc:420 #13 0x119971320 in ncml_module::AggregationElement::handleEnd() AggregationElement.cc:217 #14 0x119dbfb9f in ncml_module::NCMLParser::processEndNCMLElement(std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:1186 #15 0x119dc735b in ncml_module::NCMLParser::onEndElementWithNamespace(std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:324 #16 0x119f2b8c9 in ncmlSax2EndElementNs(void*, unsigned char const*, unsigned char const*, unsigned char const*) SaxParserWrapper.cc:242 #17 0x7fff597e1d8e in xmlParseEndTag2 (libxml2.2.dylib:x86_64+0x37d8e) #18 0x7fff597e0440 in xmlParseElement (libxml2.2.dylib:x86_64+0x36440) #19 0x7fff597e005a in xmlParseContent (libxml2.2.dylib:x86_64+0x3605a) #20 0x7fff597e03f1 in xmlParseElement (libxml2.2.dylib:x86_64+0x363f1) #21 0x7fff597e2b7a in xmlParseDocument (libxml2.2.dylib:x86_64+0x38b7a) #22 0x119f1c9ae in ncml_module::SaxParserWrapper::parse(std::__1::basic_string, std::__1::allocator > const&) SaxParserWrapper.cc:338 #23 0x119db1d0b in ncml_module::NCMLParser::parseInto(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType, BESDapResponse*) NCMLParser.cc:185 #24 0x119e33346 in ncml_module::NCMLRequestHandler::ncml_build_data(BESDataHandlerInterface&) NCMLRequestHandler.cc:297 #25 0x10e62bc8f in BESRequestHandlerList::execute_current(BESDataHandlerInterface&) BESRequestHandlerList.cc:273 #26 0x10e62a0a4 in BESRequestHandlerList::execute_each(BESDataHandlerInterface&) BESRequestHandlerList.cc:167 #27 0x11023288c in BESDataResponseHandler::execute(BESDataHandlerInterface&) BESDataResponseHandler.cc:148 #28 0x10ea43d5a in BESXMLInterface::execute_data_request_plan() BESXMLInterface.cc:285 #29 0x10e49fb8d in BESInterface::execute_request(std::__1::basic_string, std::__1::allocator > const&) BESInterface.cc:513 #30 0x10e4048d8 in StandAloneClient::executeCommand(std::__1::basic_string, std::__1::allocator > const&, int) StandAloneClient.cc:237 #31 0x10e4023aa in StandAloneClient::executeCommands(std::__1::basic_ifstream >&, int) StandAloneClient.cc:349 #32 0x10e3e7e6d in StandAloneApp::run() StandAloneApp.cc:251 #33 0x10e70fc24 in BESApp::main(int, char**) BESApp.cc:58 #34 0x10e3eb12e in main StandAloneApp.cc:345 #35 0x7fff59ad3014 in start (libdyld.dylib:x86_64+0x1014) 0x603000011004 is located 0 bytes to the right of 20-byte region [0x603000010ff0,0x603000011004) allocated by thread T0 here: #0 0x10eba0cb2 in wrap__Znam (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x62cb2) #1 0x11077eb3c in libdap::Vector::m_create_cardinal_data_buffer_for_type(unsigned int) Vector.cc:203 #2 0x110793c15 in libdap::Vector::val2buf(void*, bool) Vector.cc:1206 #3 0x11077d5e7 in libdap::Vector::m_duplicate(libdap::Vector const&) Vector.cc:116 #4 0x110781733 in libdap::Vector::Vector(libdap::Vector const&) Vector.cc:297 #5 0x1107cf385 in libdap::Array::Array(libdap::Array const&) Array.cc:164 #6 0x119a98116 in agg_util::ArrayAggregationBase::ArrayAggregationBase(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&) ArrayAggregationBase.cc:50 #7 0x119a877d2 in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&, agg_util::Dimension const&) ArrayAggregateOnOuterDimension.cc:59 #8 0x119a87e34 in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&, agg_util::Dimension const&) ArrayAggregateOnOuterDimension.cc:61 #9 0x1199e87ae in ncml_module::AggregationElement::processAggVarJoinNewForArray(libdap::DDS&, libdap::Array const&, agg_util::Dimension const&, std::__1::vector, std::__1::allocator > > const&) AggregationElement.cc:855 #10 0x1199b5db0 in ncml_module::AggregationElement::processJoinNewOnAggVar(libdap::DDS*, std::__1::basic_string, std::__1::allocator > const&, libdap::DDS const&) AggregationElement.cc:801 #11 0x11997b4d7 in ncml_module::AggregationElement::processJoinNew() AggregationElement.cc:420 #12 0x119971320 in ncml_module::AggregationElement::handleEnd() AggregationElement.cc:217 #13 0x119dbfb9f in ncml_module::NCMLParser::processEndNCMLElement(std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:1186 #14 0x119dc735b in ncml_module::NCMLParser::onEndElementWithNamespace(std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:324 #15 0x119f2b8c9 in ncmlSax2EndElementNs(void*, unsigned char const*, unsigned char const*, unsigned char const*) SaxParserWrapper.cc:242 #16 0x7fff597e1d8e in xmlParseEndTag2 (libxml2.2.dylib:x86_64+0x37d8e) #17 0x7fff597e0440 in xmlParseElement (libxml2.2.dylib:x86_64+0x36440) #18 0x7fff597e005a in xmlParseContent (libxml2.2.dylib:x86_64+0x3605a) #19 0x7fff597e03f1 in xmlParseElement (libxml2.2.dylib:x86_64+0x363f1) #20 0x7fff597e2b7a in xmlParseDocument (libxml2.2.dylib:x86_64+0x38b7a) #21 0x119f1c9ae in ncml_module::SaxParserWrapper::parse(std::__1::basic_string, std::__1::allocator > const&) SaxParserWrapper.cc:338 #22 0x119db1d0b in ncml_module::NCMLParser::parseInto(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType, BESDapResponse*) NCMLParser.cc:185 #23 0x119e33346 in ncml_module::NCMLRequestHandler::ncml_build_data(BESDataHandlerInterface&) NCMLRequestHandler.cc:297 #24 0x10e62bc8f in BESRequestHandlerList::execute_current(BESDataHandlerInterface&) BESRequestHandlerList.cc:273 #25 0x10e62a0a4 in BESRequestHandlerList::execute_each(BESDataHandlerInterface&) BESRequestHandlerList.cc:167 #26 0x11023288c in BESDataResponseHandler::execute(BESDataHandlerInterface&) BESDataResponseHandler.cc:148 #27 0x10ea43d5a in BESXMLInterface::execute_data_request_plan() BESXMLInterface.cc:285 #28 0x10e49fb8d in BESInterface::execute_request(std::__1::basic_string, std::__1::allocator > const&) BESInterface.cc:513 #29 0x10e4048d8 in StandAloneClient::executeCommand(std::__1::basic_string, std::__1::allocator > const&, int) StandAloneClient.cc:237 SUMMARY: AddressSanitizer: heap-buffer-overflow (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x4f3fd) in __asan_memcpy Shadow bytes around the buggy address: 0x1c06000021b0: fd fd fd fa fa fa fd fd fd fa fa fa 00 00 04 fa 0x1c06000021c0: fa fa 00 00 00 fa fa fa 00 00 00 fa fa fa 00 00 0x1c06000021d0: 04 fa fa fa fd fd fd fd fa fa fd fd fd fd fa fa 0x1c06000021e0: fd fd fd fd fa fa fd fd fd fa fa fa 00 00 00 fa 0x1c06000021f0: fa fa fd fd fd fa fa fa 00 00 00 fa fa fa 00 00 =>0x1c0600002200:[04]fa fa fa 00 00 04 fa fa fa 00 00 00 fa fa fa 0x1c0600002210: 00 00 00 fa fa fa 00 00 04 fa fa fa fa fa fa fa 0x1c0600002220: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c0600002230: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c0600002240: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c0600002250: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa Shadow byte legend (one shadow byte represents 8 application bytes): Addressable: 00 Partially addressable: 01 02 03 04 05 06 07 Heap left redzone: fa Freed heap region: fd Stack left redzone: f1 Stack mid redzone: f2 Stack right redzone: f3 Stack after return: f5 Stack use after scope: f8 Global redzone: f9 Global init order: f6 Poisoned by user: f7 Container overflow: fc Array cookie: ac Intra object redzone: bb ASan internal: fe Left alloca redzone: ca Right alloca redzone: cb ==75655==ABORTING /Users/jimg/src/opendap/hyrax_git/bes/modules/ncml_module/tests/testsuite.dir/at-groups/379/test-source: line 42: 75655 Abort trap: 6 besstandalone -c $abs_builddir/bes.conf -i ./test.bescmd stdout: ./aggregations.at:50: exit code was 134, expected 0 379. aggregations.at:50: 379. "dods" response for agg/joinNew_error_2.ncml: seeking match to ".*ParseError.*" (aggregations.at:50): FAILED (aggregations.at:50) # -*- compilation -*- 380. aggregations.at:54: testing "dods" response for agg/joinNew_error_3.ncml: seeking match to ".*ParseError.*" ... ./aggregations.at:54: besstandalone -c $abs_builddir/bes.conf -i ./test.bescmd stderr: Width: 20 Name: V Width: 20 Name: V Width: 40 Name: V ================================================================= ==75654==ERROR: AddressSanitizer: heap-buffer-overflow on address 0x603000010fd4 at pc 0x0001045e63fe bp 0x7ffeebdae9b0 sp 0x7ffeebdae160 READ of size 40 at 0x603000010fd4 thread T0 #0 0x1045e63fd in __asan_memcpy (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x4f3fd) Provided dSYM: [/Users/jimg/src/opendap/hyrax_git/build/lib/libdap.25.dylib.dSYM/Contents/Resources/DWARF/libdap.25.dylib] does not match symbol owner 0x7f86e7205ac0 #1 0x108193f39 in libdap::Vector::val2buf(void*, bool) Vector.cc:1212 #2 0x10817d5e7 in libdap::Vector::m_duplicate(libdap::Vector const&) Vector.cc:116 #3 0x108181733 in libdap::Vector::Vector(libdap::Vector const&) Vector.cc:297 #4 0x1081cf385 in libdap::Array::Array(libdap::Array const&) Array.cc:164 #5 0x10f1e38da in agg_util::ArrayAggregationBase::ArrayAggregationBase(agg_util::ArrayAggregationBase const&) ArrayAggregationBase.cc:56 #6 0x10f1d2f84 in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(agg_util::ArrayAggregateOnOuterDimension const&) ArrayAggregateOnOuterDimension.cc:70 #7 0x10f1d335c in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(agg_util::ArrayAggregateOnOuterDimension const&) ArrayAggregateOnOuterDimension.cc:71 #8 0x10f1d389c in agg_util::ArrayAggregateOnOuterDimension::ptr_duplicate() ArrayAggregateOnOuterDimension.cc:85 #9 0x1080800fd in libdap::DDS::add_var(libdap::BaseType*) DDS.cc:607 #10 0x10f135de8 in ncml_module::AggregationElement::processAggVarJoinNewForArray(libdap::DDS&, libdap::Array const&, agg_util::Dimension const&, std::__1::vector, std::__1::allocator > > const&) AggregationElement.cc:867 #11 0x10f100db0 in ncml_module::AggregationElement::processJoinNewOnAggVar(libdap::DDS*, std::__1::basic_string, std::__1::allocator > const&, libdap::DDS const&) AggregationElement.cc:801 #12 0x10f0c64d7 in ncml_module::AggregationElement::processJoinNew() AggregationElement.cc:420 #13 0x10f0bc320 in ncml_module::AggregationElement::handleEnd() AggregationElement.cc:217 #14 0x10f50ab9f in ncml_module::NCMLParser::processEndNCMLElement(std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:1186 #15 0x10f51235b in ncml_module::NCMLParser::onEndElementWithNamespace(std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:324 #16 0x10f6768c9 in ncmlSax2EndElementNs(void*, unsigned char const*, unsigned char const*, unsigned char const*) SaxParserWrapper.cc:242 #17 0x7fff597e1d8e in xmlParseEndTag2 (libxml2.2.dylib:x86_64+0x37d8e) #18 0x7fff597e0440 in xmlParseElement (libxml2.2.dylib:x86_64+0x36440) #19 0x7fff597e005a in xmlParseContent (libxml2.2.dylib:x86_64+0x3605a) #20 0x7fff597e03f1 in xmlParseElement (libxml2.2.dylib:x86_64+0x363f1) #21 0x7fff597e2b7a in xmlParseDocument (libxml2.2.dylib:x86_64+0x38b7a) #22 0x10f6679ae in ncml_module::SaxParserWrapper::parse(std::__1::basic_string, std::__1::allocator > const&) SaxParserWrapper.cc:338 #23 0x10f4fcd0b in ncml_module::NCMLParser::parseInto(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType, BESDapResponse*) NCMLParser.cc:185 #24 0x10f57e346 in ncml_module::NCMLRequestHandler::ncml_build_data(BESDataHandlerInterface&) NCMLRequestHandler.cc:297 #25 0x104087c8f in BESRequestHandlerList::execute_current(BESDataHandlerInterface&) BESRequestHandlerList.cc:273 #26 0x1040860a4 in BESRequestHandlerList::execute_each(BESDataHandlerInterface&) BESRequestHandlerList.cc:167 #27 0x107c3288c in BESDataResponseHandler::execute(BESDataHandlerInterface&) BESDataResponseHandler.cc:148 #28 0x1044a1d5a in BESXMLInterface::execute_data_request_plan() BESXMLInterface.cc:285 #29 0x103efbb8d in BESInterface::execute_request(std::__1::basic_string, std::__1::allocator > const&) BESInterface.cc:513 #30 0x103e618d8 in StandAloneClient::executeCommand(std::__1::basic_string, std::__1::allocator > const&, int) StandAloneClient.cc:237 #31 0x103e5f3aa in StandAloneClient::executeCommands(std::__1::basic_ifstream >&, int) StandAloneClient.cc:349 #32 0x103e44e6d in StandAloneApp::run() StandAloneApp.cc:251 #33 0x10416bc24 in BESApp::main(int, char**) BESApp.cc:58 #34 0x103e4812e in main StandAloneApp.cc:345 #35 0x7fff59ad3014 in start (libdyld.dylib:x86_64+0x1014) 0x603000010fd4 is located 0 bytes to the right of 20-byte region [0x603000010fc0,0x603000010fd4) allocated by thread T0 here: #0 0x1045f9cb2 in wrap__Znam (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x62cb2) #1 0x10817eb3c in libdap::Vector::m_create_cardinal_data_buffer_for_type(unsigned int) Vector.cc:203 #2 0x108193c15 in libdap::Vector::val2buf(void*, bool) Vector.cc:1206 #3 0x10817d5e7 in libdap::Vector::m_duplicate(libdap::Vector const&) Vector.cc:116 #4 0x108181733 in libdap::Vector::Vector(libdap::Vector const&) Vector.cc:297 #5 0x1081cf385 in libdap::Array::Array(libdap::Array const&) Array.cc:164 #6 0x10f1e3116 in agg_util::ArrayAggregationBase::ArrayAggregationBase(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&) ArrayAggregationBase.cc:50 #7 0x10f1d27d2 in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&, agg_util::Dimension const&) ArrayAggregateOnOuterDimension.cc:59 #8 0x10f1d2e34 in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&, agg_util::Dimension const&) ArrayAggregateOnOuterDimension.cc:61 #9 0x10f1337ae in ncml_module::AggregationElement::processAggVarJoinNewForArray(libdap::DDS&, libdap::Array const&, agg_util::Dimension const&, std::__1::vector, std::__1::allocator > > const&) AggregationElement.cc:855 #10 0x10f100db0 in ncml_module::AggregationElement::processJoinNewOnAggVar(libdap::DDS*, std::__1::basic_string, std::__1::allocator > const&, libdap::DDS const&) AggregationElement.cc:801 #11 0x10f0c64d7 in ncml_module::AggregationElement::processJoinNew() AggregationElement.cc:420 #12 0x10f0bc320 in ncml_module::AggregationElement::handleEnd() AggregationElement.cc:217 #13 0x10f50ab9f in ncml_module::NCMLParser::processEndNCMLElement(std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:1186 #14 0x10f51235b in ncml_module::NCMLParser::onEndElementWithNamespace(std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:324 #15 0x10f6768c9 in ncmlSax2EndElementNs(void*, unsigned char const*, unsigned char const*, unsigned char const*) SaxParserWrapper.cc:242 #16 0x7fff597e1d8e in xmlParseEndTag2 (libxml2.2.dylib:x86_64+0x37d8e) #17 0x7fff597e0440 in xmlParseElement (libxml2.2.dylib:x86_64+0x36440) #18 0x7fff597e005a in xmlParseContent (libxml2.2.dylib:x86_64+0x3605a) #19 0x7fff597e03f1 in xmlParseElement (libxml2.2.dylib:x86_64+0x363f1) #20 0x7fff597e2b7a in xmlParseDocument (libxml2.2.dylib:x86_64+0x38b7a) #21 0x10f6679ae in ncml_module::SaxParserWrapper::parse(std::__1::basic_string, std::__1::allocator > const&) SaxParserWrapper.cc:338 #22 0x10f4fcd0b in ncml_module::NCMLParser::parseInto(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType, BESDapResponse*) NCMLParser.cc:185 #23 0x10f57e346 in ncml_module::NCMLRequestHandler::ncml_build_data(BESDataHandlerInterface&) NCMLRequestHandler.cc:297 #24 0x104087c8f in BESRequestHandlerList::execute_current(BESDataHandlerInterface&) BESRequestHandlerList.cc:273 #25 0x1040860a4 in BESRequestHandlerList::execute_each(BESDataHandlerInterface&) BESRequestHandlerList.cc:167 #26 0x107c3288c in BESDataResponseHandler::execute(BESDataHandlerInterface&) BESDataResponseHandler.cc:148 #27 0x1044a1d5a in BESXMLInterface::execute_data_request_plan() BESXMLInterface.cc:285 #28 0x103efbb8d in BESInterface::execute_request(std::__1::basic_string, std::__1::allocator > const&) BESInterface.cc:513 #29 0x103e618d8 in StandAloneClient::executeCommand(std::__1::basic_string, std::__1::allocator > const&, int) StandAloneClient.cc:237 SUMMARY: AddressSanitizer: heap-buffer-overflow (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x4f3fd) in __asan_memcpy Shadow bytes around the buggy address: 0x1c06000021a0: fd fd fa fa fd fd fd fd fa fa fd fd fd fa fa fa 0x1c06000021b0: fd fd fd fd fa fa fd fd fd fa fa fa 00 00 00 fa 0x1c06000021c0: fa fa 00 00 00 fa fa fa fd fd fd fd fa fa fd fd 0x1c06000021d0: fd fd fa fa fd fd fd fd fa fa 00 00 00 fc fa fa 0x1c06000021e0: fd fd fd fa fa fa 00 00 00 fa fa fa fd fd fd fa =>0x1c06000021f0: fa fa 00 00 00 fa fa fa 00 00[04]fa fa fa 00 00 0x1c0600002200: 04 fa fa fa 00 00 00 fa fa fa 00 00 00 fa fa fa 0x1c0600002210: 00 00 04 fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c0600002220: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c0600002230: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c0600002240: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa Shadow byte legend (one shadow byte represents 8 application bytes): Addressable: 00 Partially addressable: 01 02 03 04 05 06 07 Heap left redzone: fa Freed heap region: fd Stack left redzone: f1 Stack mid redzone: f2 Stack right redzone: f3 Stack after return: f5 Stack use after scope: f8 Global redzone: f9 Global init order: f6 Poisoned by user: f7 Container overflow: fc Array cookie: ac Intra object redzone: bb ASan internal: fe Left alloca redzone: ca Right alloca redzone: cb ==75654==ABORTING /Users/jimg/src/opendap/hyrax_git/bes/modules/ncml_module/tests/testsuite.dir/at-groups/380/test-source: line 42: 75654 Abort trap: 6 besstandalone -c $abs_builddir/bes.conf -i ./test.bescmd stdout: ./aggregations.at:54: exit code was 134, expected 0 380. aggregations.at:54: 380. "dods" response for agg/joinNew_error_3.ncml: seeking match to ".*ParseError.*" (aggregations.at:54): FAILED (aggregations.at:54) # -*- compilation -*- 382. aggregations.at:60: testing Comparing das response for agg/joinNew_simple.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_simple.ncml ... ./aggregations.at:60: besstandalone -c $abs_builddir/bes.conf -i ./test.bescmd stderr: Width: 20 Name: V Width: 20 Name: V Width: 40 Name: V ================================================================= ==75755==ERROR: AddressSanitizer: heap-buffer-overflow on address 0x603000011754 at pc 0x000107eb03fe bp 0x7ffee84e7810 sp 0x7ffee84e6fc0 READ of size 40 at 0x603000011754 thread T0 #0 0x107eb03fd in __asan_memcpy (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x4f3fd) Provided dSYM: [/Users/jimg/src/opendap/hyrax_git/build/lib/libdap.25.dylib.dSYM/Contents/Resources/DWARF/libdap.25.dylib] does not match symbol owner 0x7ffcbd3018b0 #1 0x10ba93f39 in libdap::Vector::val2buf(void*, bool) Vector.cc:1212 #2 0x10ba7d5e7 in libdap::Vector::m_duplicate(libdap::Vector const&) Vector.cc:116 #3 0x10ba81733 in libdap::Vector::Vector(libdap::Vector const&) Vector.cc:297 #4 0x10bacf385 in libdap::Array::Array(libdap::Array const&) Array.cc:164 #5 0x112aaa8da in agg_util::ArrayAggregationBase::ArrayAggregationBase(agg_util::ArrayAggregationBase const&) ArrayAggregationBase.cc:56 #6 0x112a99f84 in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(agg_util::ArrayAggregateOnOuterDimension const&) ArrayAggregateOnOuterDimension.cc:70 #7 0x112a9a35c in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(agg_util::ArrayAggregateOnOuterDimension const&) ArrayAggregateOnOuterDimension.cc:71 #8 0x112a9a89c in agg_util::ArrayAggregateOnOuterDimension::ptr_duplicate() ArrayAggregateOnOuterDimension.cc:85 #9 0x10b9800fd in libdap::DDS::add_var(libdap::BaseType*) DDS.cc:607 #10 0x1129fcde8 in ncml_module::AggregationElement::processAggVarJoinNewForArray(libdap::DDS&, libdap::Array const&, agg_util::Dimension const&, std::__1::vector, std::__1::allocator > > const&) AggregationElement.cc:867 #11 0x1129c7db0 in ncml_module::AggregationElement::processJoinNewOnAggVar(libdap::DDS*, std::__1::basic_string, std::__1::allocator > const&, libdap::DDS const&) AggregationElement.cc:801 #12 0x11298d4d7 in ncml_module::AggregationElement::processJoinNew() AggregationElement.cc:420 #13 0x112983320 in ncml_module::AggregationElement::handleEnd() AggregationElement.cc:217 #14 0x112dd1b9f in ncml_module::NCMLParser::processEndNCMLElement(std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:1186 #15 0x112dd935b in ncml_module::NCMLParser::onEndElementWithNamespace(std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:324 #16 0x112f3d8c9 in ncmlSax2EndElementNs(void*, unsigned char const*, unsigned char const*, unsigned char const*) SaxParserWrapper.cc:242 #17 0x7fff597e1d8e in xmlParseEndTag2 (libxml2.2.dylib:x86_64+0x37d8e) #18 0x7fff597e0440 in xmlParseElement (libxml2.2.dylib:x86_64+0x36440) #19 0x7fff597e005a in xmlParseContent (libxml2.2.dylib:x86_64+0x3605a) #20 0x7fff597e03f1 in xmlParseElement (libxml2.2.dylib:x86_64+0x363f1) #21 0x7fff597e2b7a in xmlParseDocument (libxml2.2.dylib:x86_64+0x38b7a) #22 0x112f2e9ae in ncml_module::SaxParserWrapper::parse(std::__1::basic_string, std::__1::allocator > const&) SaxParserWrapper.cc:338 #23 0x112dc3d0b in ncml_module::NCMLParser::parseInto(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType, BESDapResponse*) NCMLParser.cc:185 #24 0x112dbd1e7 in ncml_module::NCMLParser::parse(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType) NCMLParser.cc:155 #25 0x112e37841 in ncml_module::NCMLRequestHandler::ncml_build_das(BESDataHandlerInterface&) NCMLRequestHandler.cc:172 #26 0x107950c8f in BESRequestHandlerList::execute_current(BESDataHandlerInterface&) BESRequestHandlerList.cc:273 #27 0x10794f0a4 in BESRequestHandlerList::execute_each(BESDataHandlerInterface&) BESRequestHandlerList.cc:167 #28 0x10b521ff0 in BESDASResponseHandler::execute(BESDataHandlerInterface&) BESDASResponseHandler.cc:95 #29 0x107d65d5a in BESXMLInterface::execute_data_request_plan() BESXMLInterface.cc:285 #30 0x1077c4b8d in BESInterface::execute_request(std::__1::basic_string, std::__1::allocator > const&) BESInterface.cc:513 #31 0x1077288d8 in StandAloneClient::executeCommand(std::__1::basic_string, std::__1::allocator > const&, int) StandAloneClient.cc:237 #32 0x1077263aa in StandAloneClient::executeCommands(std::__1::basic_ifstream >&, int) StandAloneClient.cc:349 #33 0x10770be6d in StandAloneApp::run() StandAloneApp.cc:251 #34 0x107a34c24 in BESApp::main(int, char**) BESApp.cc:58 #35 0x10770f12e in main StandAloneApp.cc:345 #36 0x7fff59ad3014 in start (libdyld.dylib:x86_64+0x1014) 0x603000011754 is located 0 bytes to the right of 20-byte region [0x603000011740,0x603000011754) allocated by thread T0 here: #0 0x107ec3cb2 in wrap__Znam (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x62cb2) #1 0x10ba7eb3c in libdap::Vector::m_create_cardinal_data_buffer_for_type(unsigned int) Vector.cc:203 #2 0x10ba93c15 in libdap::Vector::val2buf(void*, bool) Vector.cc:1206 #3 0x10ba7d5e7 in libdap::Vector::m_duplicate(libdap::Vector const&) Vector.cc:116 #4 0x10ba81733 in libdap::Vector::Vector(libdap::Vector const&) Vector.cc:297 #5 0x10bacf385 in libdap::Array::Array(libdap::Array const&) Array.cc:164 #6 0x112aaa116 in agg_util::ArrayAggregationBase::ArrayAggregationBase(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&) ArrayAggregationBase.cc:50 #7 0x112a997d2 in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&, agg_util::Dimension const&) ArrayAggregateOnOuterDimension.cc:59 #8 0x112a99e34 in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&, agg_util::Dimension const&) ArrayAggregateOnOuterDimension.cc:61 #9 0x1129fa7ae in ncml_module::AggregationElement::processAggVarJoinNewForArray(libdap::DDS&, libdap::Array const&, agg_util::Dimension const&, std::__1::vector, std::__1::allocator > > const&) AggregationElement.cc:855 #10 0x1129c7db0 in ncml_module::AggregationElement::processJoinNewOnAggVar(libdap::DDS*, std::__1::basic_string, std::__1::allocator > const&, libdap::DDS const&) AggregationElement.cc:801 #11 0x11298d4d7 in ncml_module::AggregationElement::processJoinNew() AggregationElement.cc:420 #12 0x112983320 in ncml_module::AggregationElement::handleEnd() AggregationElement.cc:217 #13 0x112dd1b9f in ncml_module::NCMLParser::processEndNCMLElement(std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:1186 #14 0x112dd935b in ncml_module::NCMLParser::onEndElementWithNamespace(std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:324 #15 0x112f3d8c9 in ncmlSax2EndElementNs(void*, unsigned char const*, unsigned char const*, unsigned char const*) SaxParserWrapper.cc:242 #16 0x7fff597e1d8e in xmlParseEndTag2 (libxml2.2.dylib:x86_64+0x37d8e) #17 0x7fff597e0440 in xmlParseElement (libxml2.2.dylib:x86_64+0x36440) #18 0x7fff597e005a in xmlParseContent (libxml2.2.dylib:x86_64+0x3605a) #19 0x7fff597e03f1 in xmlParseElement (libxml2.2.dylib:x86_64+0x363f1) #20 0x7fff597e2b7a in xmlParseDocument (libxml2.2.dylib:x86_64+0x38b7a) #21 0x112f2e9ae in ncml_module::SaxParserWrapper::parse(std::__1::basic_string, std::__1::allocator > const&) SaxParserWrapper.cc:338 #22 0x112dc3d0b in ncml_module::NCMLParser::parseInto(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType, BESDapResponse*) NCMLParser.cc:185 #23 0x112dbd1e7 in ncml_module::NCMLParser::parse(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType) NCMLParser.cc:155 #24 0x112e37841 in ncml_module::NCMLRequestHandler::ncml_build_das(BESDataHandlerInterface&) NCMLRequestHandler.cc:172 #25 0x107950c8f in BESRequestHandlerList::execute_current(BESDataHandlerInterface&) BESRequestHandlerList.cc:273 #26 0x10794f0a4 in BESRequestHandlerList::execute_each(BESDataHandlerInterface&) BESRequestHandlerList.cc:167 #27 0x10b521ff0 in BESDASResponseHandler::execute(BESDataHandlerInterface&) BESDASResponseHandler.cc:95 #28 0x107d65d5a in BESXMLInterface::execute_data_request_plan() BESXMLInterface.cc:285 #29 0x1077c4b8d in BESInterface::execute_request(std::__1::basic_string, std::__1::allocator > const&) BESInterface.cc:513 SUMMARY: AddressSanitizer: heap-buffer-overflow (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x4f3fd) in __asan_memcpy Shadow bytes around the buggy address: 0x1c0600002290: 00 fa fa fa 00 00 00 fa fa fa fd fd fd fa fa fa 0x1c06000022a0: 00 00 00 fa fa fa 00 00 00 fa fa fa fd fd fd fd 0x1c06000022b0: fa fa fd fd fd fd fa fa fd fd fd fd fa fa fd fd 0x1c06000022c0: fd fd fa fa fd fd fd fa fa fa 00 00 00 fa fa fa 0x1c06000022d0: fd fd fd fa fa fa 00 00 00 fa fa fa 00 00 00 fa =>0x1c06000022e0: fa fa 00 00 00 fa fa fa 00 00[04]fa fa fa 00 00 0x1c06000022f0: 00 fa fa fa 00 00 00 fa fa fa 00 00 04 fa fa fa 0x1c0600002300: 00 00 00 fa fa fa 00 00 00 fa fa fa 00 00 04 fa 0x1c0600002310: fa fa 00 00 00 fa fa fa 00 00 00 fa fa fa fa fa 0x1c0600002320: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c0600002330: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa Shadow byte legend (one shadow byte represents 8 application bytes): Addressable: 00 Partially addressable: 01 02 03 04 05 06 07 Heap left redzone: fa Freed heap region: fd Stack left redzone: f1 Stack mid redzone: f2 Stack right redzone: f3 Stack after return: f5 Stack use after scope: f8 Global redzone: f9 Global init order: f6 Poisoned by user: f7 Container overflow: fc Array cookie: ac Intra object redzone: bb ASan internal: fe Left alloca redzone: ca Right alloca redzone: cb ==75755==ABORTING /Users/jimg/src/opendap/hyrax_git/bes/modules/ncml_module/tests/testsuite.dir/at-groups/382/test-source: line 44: 75755 Abort trap: 6 besstandalone -c $abs_builddir/bes.conf -i ./test.bescmd stdout: ./aggregations.at:60: exit code was 134, expected 0 382. aggregations.at:60: 382. Comparing das response for agg/joinNew_simple.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_simple.ncml (aggregations.at:60): FAILED (aggregations.at:60) # -*- compilation -*- 383. aggregations.at:60: testing Comparing dds response for agg/joinNew_simple.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_simple.ncml ... ./aggregations.at:60: besstandalone -c $abs_builddir/bes.conf -i ./test.bescmd stderr: Width: 20 Name: V Width: 20 Name: V Width: 40 Name: V ================================================================= ==75795==ERROR: AddressSanitizer: heap-buffer-overflow on address 0x603000011754 at pc 0x00010f7283fe bp 0x7ffee0c73b30 sp 0x7ffee0c732e0 READ of size 40 at 0x603000011754 thread T0 #0 0x10f7283fd in __asan_memcpy (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x4f3fd) Provided dSYM: [/Users/jimg/src/opendap/hyrax_git/build/lib/libdap.25.dylib.dSYM/Contents/Resources/DWARF/libdap.25.dylib] does not match symbol owner 0x7ffb08905d60 #1 0x1132dbf39 in libdap::Vector::val2buf(void*, bool) Vector.cc:1212 #2 0x1132c55e7 in libdap::Vector::m_duplicate(libdap::Vector const&) Vector.cc:116 #3 0x1132c9733 in libdap::Vector::Vector(libdap::Vector const&) Vector.cc:297 #4 0x113317385 in libdap::Array::Array(libdap::Array const&) Array.cc:164 #5 0x11a3c28da in agg_util::ArrayAggregationBase::ArrayAggregationBase(agg_util::ArrayAggregationBase const&) ArrayAggregationBase.cc:56 #6 0x11a3b1f84 in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(agg_util::ArrayAggregateOnOuterDimension const&) ArrayAggregateOnOuterDimension.cc:70 #7 0x11a3b235c in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(agg_util::ArrayAggregateOnOuterDimension const&) ArrayAggregateOnOuterDimension.cc:71 #8 0x11a3b289c in agg_util::ArrayAggregateOnOuterDimension::ptr_duplicate() ArrayAggregateOnOuterDimension.cc:85 #9 0x1131c80fd in libdap::DDS::add_var(libdap::BaseType*) DDS.cc:607 #10 0x11a314de8 in ncml_module::AggregationElement::processAggVarJoinNewForArray(libdap::DDS&, libdap::Array const&, agg_util::Dimension const&, std::__1::vector, std::__1::allocator > > const&) AggregationElement.cc:867 #11 0x11a2dfdb0 in ncml_module::AggregationElement::processJoinNewOnAggVar(libdap::DDS*, std::__1::basic_string, std::__1::allocator > const&, libdap::DDS const&) AggregationElement.cc:801 #12 0x11a2a54d7 in ncml_module::AggregationElement::processJoinNew() AggregationElement.cc:420 #13 0x11a29b320 in ncml_module::AggregationElement::handleEnd() AggregationElement.cc:217 #14 0x11a6e9b9f in ncml_module::NCMLParser::processEndNCMLElement(std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:1186 #15 0x11a6f135b in ncml_module::NCMLParser::onEndElementWithNamespace(std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:324 #16 0x11a8558c9 in ncmlSax2EndElementNs(void*, unsigned char const*, unsigned char const*, unsigned char const*) SaxParserWrapper.cc:242 #17 0x7fff597e1d8e in xmlParseEndTag2 (libxml2.2.dylib:x86_64+0x37d8e) #18 0x7fff597e0440 in xmlParseElement (libxml2.2.dylib:x86_64+0x36440) #19 0x7fff597e005a in xmlParseContent (libxml2.2.dylib:x86_64+0x3605a) #20 0x7fff597e03f1 in xmlParseElement (libxml2.2.dylib:x86_64+0x363f1) #21 0x7fff597e2b7a in xmlParseDocument (libxml2.2.dylib:x86_64+0x38b7a) #22 0x11a8469ae in ncml_module::SaxParserWrapper::parse(std::__1::basic_string, std::__1::allocator > const&) SaxParserWrapper.cc:338 #23 0x11a6dbd0b in ncml_module::NCMLParser::parseInto(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType, BESDapResponse*) NCMLParser.cc:185 #24 0x11a757aae in ncml_module::NCMLRequestHandler::ncml_build_dds(BESDataHandlerInterface&) NCMLRequestHandler.cc:260 #25 0x10f1c4c8f in BESRequestHandlerList::execute_current(BESDataHandlerInterface&) BESRequestHandlerList.cc:273 #26 0x10f1c30a4 in BESRequestHandlerList::execute_each(BESDataHandlerInterface&) BESRequestHandlerList.cc:167 #27 0x112d28048 in BESDDSResponseHandler::execute(BESDataHandlerInterface&) BESDDSResponseHandler.cc:107 #28 0x10f5ddd5a in BESXMLInterface::execute_data_request_plan() BESXMLInterface.cc:285 #29 0x10f038b8d in BESInterface::execute_request(std::__1::basic_string, std::__1::allocator > const&) BESInterface.cc:513 #30 0x10ef9c8d8 in StandAloneClient::executeCommand(std::__1::basic_string, std::__1::allocator > const&, int) StandAloneClient.cc:237 #31 0x10ef9a3aa in StandAloneClient::executeCommands(std::__1::basic_ifstream >&, int) StandAloneClient.cc:349 #32 0x10ef7fe6d in StandAloneApp::run() StandAloneApp.cc:251 #33 0x10f2a8c24 in BESApp::main(int, char**) BESApp.cc:58 #34 0x10ef8312e in main StandAloneApp.cc:345 #35 0x7fff59ad3014 in start (libdyld.dylib:x86_64+0x1014) 0x603000011754 is located 0 bytes to the right of 20-byte region [0x603000011740,0x603000011754) allocated by thread T0 here: #0 0x10f73bcb2 in wrap__Znam (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x62cb2) #1 0x1132c6b3c in libdap::Vector::m_create_cardinal_data_buffer_for_type(unsigned int) Vector.cc:203 #2 0x1132dbc15 in libdap::Vector::val2buf(void*, bool) Vector.cc:1206 #3 0x1132c55e7 in libdap::Vector::m_duplicate(libdap::Vector const&) Vector.cc:116 #4 0x1132c9733 in libdap::Vector::Vector(libdap::Vector const&) Vector.cc:297 #5 0x113317385 in libdap::Array::Array(libdap::Array const&) Array.cc:164 #6 0x11a3c2116 in agg_util::ArrayAggregationBase::ArrayAggregationBase(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&) ArrayAggregationBase.cc:50 #7 0x11a3b17d2 in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&, agg_util::Dimension const&) ArrayAggregateOnOuterDimension.cc:59 #8 0x11a3b1e34 in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&, agg_util::Dimension const&) ArrayAggregateOnOuterDimension.cc:61 #9 0x11a3127ae in ncml_module::AggregationElement::processAggVarJoinNewForArray(libdap::DDS&, libdap::Array const&, agg_util::Dimension const&, std::__1::vector, std::__1::allocator > > const&) AggregationElement.cc:855 #10 0x11a2dfdb0 in ncml_module::AggregationElement::processJoinNewOnAggVar(libdap::DDS*, std::__1::basic_string, std::__1::allocator > const&, libdap::DDS const&) AggregationElement.cc:801 #11 0x11a2a54d7 in ncml_module::AggregationElement::processJoinNew() AggregationElement.cc:420 #12 0x11a29b320 in ncml_module::AggregationElement::handleEnd() AggregationElement.cc:217 #13 0x11a6e9b9f in ncml_module::NCMLParser::processEndNCMLElement(std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:1186 #14 0x11a6f135b in ncml_module::NCMLParser::onEndElementWithNamespace(std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:324 #15 0x11a8558c9 in ncmlSax2EndElementNs(void*, unsigned char const*, unsigned char const*, unsigned char const*) SaxParserWrapper.cc:242 #16 0x7fff597e1d8e in xmlParseEndTag2 (libxml2.2.dylib:x86_64+0x37d8e) #17 0x7fff597e0440 in xmlParseElement (libxml2.2.dylib:x86_64+0x36440) #18 0x7fff597e005a in xmlParseContent (libxml2.2.dylib:x86_64+0x3605a) #19 0x7fff597e03f1 in xmlParseElement (libxml2.2.dylib:x86_64+0x363f1) #20 0x7fff597e2b7a in xmlParseDocument (libxml2.2.dylib:x86_64+0x38b7a) #21 0x11a8469ae in ncml_module::SaxParserWrapper::parse(std::__1::basic_string, std::__1::allocator > const&) SaxParserWrapper.cc:338 #22 0x11a6dbd0b in ncml_module::NCMLParser::parseInto(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType, BESDapResponse*) NCMLParser.cc:185 #23 0x11a757aae in ncml_module::NCMLRequestHandler::ncml_build_dds(BESDataHandlerInterface&) NCMLRequestHandler.cc:260 #24 0x10f1c4c8f in BESRequestHandlerList::execute_current(BESDataHandlerInterface&) BESRequestHandlerList.cc:273 #25 0x10f1c30a4 in BESRequestHandlerList::execute_each(BESDataHandlerInterface&) BESRequestHandlerList.cc:167 #26 0x112d28048 in BESDDSResponseHandler::execute(BESDataHandlerInterface&) BESDDSResponseHandler.cc:107 #27 0x10f5ddd5a in BESXMLInterface::execute_data_request_plan() BESXMLInterface.cc:285 #28 0x10f038b8d in BESInterface::execute_request(std::__1::basic_string, std::__1::allocator > const&) BESInterface.cc:513 #29 0x10ef9c8d8 in StandAloneClient::executeCommand(std::__1::basic_string, std::__1::allocator > const&, int) StandAloneClient.cc:237 SUMMARY: AddressSanitizer: heap-buffer-overflow (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x4f3fd) in __asan_memcpy Shadow bytes around the buggy address: 0x1c0600002290: 00 fa fa fa 00 00 00 fa fa fa fd fd fd fa fa fa 0x1c06000022a0: 00 00 00 fa fa fa 00 00 00 fa fa fa fd fd fd fd 0x1c06000022b0: fa fa fd fd fd fd fa fa fd fd fd fd fa fa fd fd 0x1c06000022c0: fd fd fa fa fd fd fd fa fa fa 00 00 00 fa fa fa 0x1c06000022d0: fd fd fd fa fa fa 00 00 00 fa fa fa 00 00 00 fa =>0x1c06000022e0: fa fa 00 00 00 fa fa fa 00 00[04]fa fa fa 00 00 0x1c06000022f0: 00 fa fa fa 00 00 00 fa fa fa 00 00 04 fa fa fa 0x1c0600002300: 00 00 00 fa fa fa 00 00 00 fa fa fa 00 00 04 fa 0x1c0600002310: fa fa 00 00 00 fa fa fa 00 00 00 fa fa fa fa fa 0x1c0600002320: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c0600002330: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa Shadow byte legend (one shadow byte represents 8 application bytes): Addressable: 00 Partially addressable: 01 02 03 04 05 06 07 Heap left redzone: fa Freed heap region: fd Stack left redzone: f1 Stack mid redzone: f2 Stack right redzone: f3 Stack after return: f5 Stack use after scope: f8 Global redzone: f9 Global init order: f6 Poisoned by user: f7 Container overflow: fc Array cookie: ac Intra object redzone: bb ASan internal: fe Left alloca redzone: ca Right alloca redzone: cb ==75795==ABORTING /Users/jimg/src/opendap/hyrax_git/bes/modules/ncml_module/tests/testsuite.dir/at-groups/383/test-source: line 44: 75795 Abort trap: 6 besstandalone -c $abs_builddir/bes.conf -i ./test.bescmd stdout: ./aggregations.at:60: exit code was 134, expected 0 383. aggregations.at:60: 383. Comparing dds response for agg/joinNew_simple.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_simple.ncml (aggregations.at:60): FAILED (aggregations.at:60) # -*- compilation -*- 384. aggregations.at:60: testing Comparing ddx response for agg/joinNew_simple.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_simple.ncml ... ./aggregations.at:60: besstandalone -c $abs_builddir/bes.conf -i ./test.bescmd stderr: Width: 20 Name: V Width: 20 Name: V Width: 40 Name: V ================================================================= ==75830==ERROR: AddressSanitizer: heap-buffer-overflow on address 0x603000011724 at pc 0x0001074793fe bp 0x7ffee8f1b6d0 sp 0x7ffee8f1ae80 READ of size 40 at 0x603000011724 thread T0 #0 0x1074793fd in __asan_memcpy (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x4f3fd) Provided dSYM: [/Users/jimg/src/opendap/hyrax_git/build/lib/libdap.25.dylib.dSYM/Contents/Resources/DWARF/libdap.25.dylib] does not match symbol owner 0x7fbc33104cf0 #1 0x10b093f39 in libdap::Vector::val2buf(void*, bool) Vector.cc:1212 #2 0x10b07d5e7 in libdap::Vector::m_duplicate(libdap::Vector const&) Vector.cc:116 #3 0x10b081733 in libdap::Vector::Vector(libdap::Vector const&) Vector.cc:297 #4 0x10b0cf385 in libdap::Array::Array(libdap::Array const&) Array.cc:164 #5 0x1120768da in agg_util::ArrayAggregationBase::ArrayAggregationBase(agg_util::ArrayAggregationBase const&) ArrayAggregationBase.cc:56 #6 0x112065f84 in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(agg_util::ArrayAggregateOnOuterDimension const&) ArrayAggregateOnOuterDimension.cc:70 #7 0x11206635c in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(agg_util::ArrayAggregateOnOuterDimension const&) ArrayAggregateOnOuterDimension.cc:71 #8 0x11206689c in agg_util::ArrayAggregateOnOuterDimension::ptr_duplicate() ArrayAggregateOnOuterDimension.cc:85 #9 0x10af800fd in libdap::DDS::add_var(libdap::BaseType*) DDS.cc:607 #10 0x111fc8de8 in ncml_module::AggregationElement::processAggVarJoinNewForArray(libdap::DDS&, libdap::Array const&, agg_util::Dimension const&, std::__1::vector, std::__1::allocator > > const&) AggregationElement.cc:867 #11 0x111f93db0 in ncml_module::AggregationElement::processJoinNewOnAggVar(libdap::DDS*, std::__1::basic_string, std::__1::allocator > const&, libdap::DDS const&) AggregationElement.cc:801 #12 0x111f594d7 in ncml_module::AggregationElement::processJoinNew() AggregationElement.cc:420 #13 0x111f4f320 in ncml_module::AggregationElement::handleEnd() AggregationElement.cc:217 #14 0x11239db9f in ncml_module::NCMLParser::processEndNCMLElement(std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:1186 #15 0x1123a535b in ncml_module::NCMLParser::onEndElementWithNamespace(std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:324 #16 0x1125098c9 in ncmlSax2EndElementNs(void*, unsigned char const*, unsigned char const*, unsigned char const*) SaxParserWrapper.cc:242 #17 0x7fff597e1d8e in xmlParseEndTag2 (libxml2.2.dylib:x86_64+0x37d8e) #18 0x7fff597e0440 in xmlParseElement (libxml2.2.dylib:x86_64+0x36440) #19 0x7fff597e005a in xmlParseContent (libxml2.2.dylib:x86_64+0x3605a) #20 0x7fff597e03f1 in xmlParseElement (libxml2.2.dylib:x86_64+0x363f1) #21 0x7fff597e2b7a in xmlParseDocument (libxml2.2.dylib:x86_64+0x38b7a) #22 0x1124fa9ae in ncml_module::SaxParserWrapper::parse(std::__1::basic_string, std::__1::allocator > const&) SaxParserWrapper.cc:338 #23 0x11238fd0b in ncml_module::NCMLParser::parseInto(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType, BESDapResponse*) NCMLParser.cc:185 #24 0x11240baae in ncml_module::NCMLRequestHandler::ncml_build_dds(BESDataHandlerInterface&) NCMLRequestHandler.cc:260 #25 0x106f18c8f in BESRequestHandlerList::execute_current(BESDataHandlerInterface&) BESRequestHandlerList.cc:273 #26 0x106f170a4 in BESRequestHandlerList::execute_each(BESDataHandlerInterface&) BESRequestHandlerList.cc:167 #27 0x10ab2a5dc in BESDDXResponseHandler::execute(BESDataHandlerInterface&) BESDDXResponseHandler.cc:122 #28 0x107334d5a in BESXMLInterface::execute_data_request_plan() BESXMLInterface.cc:285 #29 0x106d8cb8d in BESInterface::execute_request(std::__1::basic_string, std::__1::allocator > const&) BESInterface.cc:513 #30 0x106cf48d8 in StandAloneClient::executeCommand(std::__1::basic_string, std::__1::allocator > const&, int) StandAloneClient.cc:237 #31 0x106cf23aa in StandAloneClient::executeCommands(std::__1::basic_ifstream >&, int) StandAloneClient.cc:349 #32 0x106cd7e6d in StandAloneApp::run() StandAloneApp.cc:251 #33 0x106ffcc24 in BESApp::main(int, char**) BESApp.cc:58 #34 0x106cdb12e in main StandAloneApp.cc:345 #35 0x7fff59ad3014 in start (libdyld.dylib:x86_64+0x1014) 0x603000011724 is located 0 bytes to the right of 20-byte region [0x603000011710,0x603000011724) allocated by thread T0 here: #0 0x10748ccb2 in wrap__Znam (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x62cb2) #1 0x10b07eb3c in libdap::Vector::m_create_cardinal_data_buffer_for_type(unsigned int) Vector.cc:203 #2 0x10b093c15 in libdap::Vector::val2buf(void*, bool) Vector.cc:1206 #3 0x10b07d5e7 in libdap::Vector::m_duplicate(libdap::Vector const&) Vector.cc:116 #4 0x10b081733 in libdap::Vector::Vector(libdap::Vector const&) Vector.cc:297 #5 0x10b0cf385 in libdap::Array::Array(libdap::Array const&) Array.cc:164 #6 0x112076116 in agg_util::ArrayAggregationBase::ArrayAggregationBase(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&) ArrayAggregationBase.cc:50 #7 0x1120657d2 in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&, agg_util::Dimension const&) ArrayAggregateOnOuterDimension.cc:59 #8 0x112065e34 in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&, agg_util::Dimension const&) ArrayAggregateOnOuterDimension.cc:61 #9 0x111fc67ae in ncml_module::AggregationElement::processAggVarJoinNewForArray(libdap::DDS&, libdap::Array const&, agg_util::Dimension const&, std::__1::vector, std::__1::allocator > > const&) AggregationElement.cc:855 #10 0x111f93db0 in ncml_module::AggregationElement::processJoinNewOnAggVar(libdap::DDS*, std::__1::basic_string, std::__1::allocator > const&, libdap::DDS const&) AggregationElement.cc:801 #11 0x111f594d7 in ncml_module::AggregationElement::processJoinNew() AggregationElement.cc:420 #12 0x111f4f320 in ncml_module::AggregationElement::handleEnd() AggregationElement.cc:217 #13 0x11239db9f in ncml_module::NCMLParser::processEndNCMLElement(std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:1186 #14 0x1123a535b in ncml_module::NCMLParser::onEndElementWithNamespace(std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:324 #15 0x1125098c9 in ncmlSax2EndElementNs(void*, unsigned char const*, unsigned char const*, unsigned char const*) SaxParserWrapper.cc:242 #16 0x7fff597e1d8e in xmlParseEndTag2 (libxml2.2.dylib:x86_64+0x37d8e) #17 0x7fff597e0440 in xmlParseElement (libxml2.2.dylib:x86_64+0x36440) #18 0x7fff597e005a in xmlParseContent (libxml2.2.dylib:x86_64+0x3605a) #19 0x7fff597e03f1 in xmlParseElement (libxml2.2.dylib:x86_64+0x363f1) #20 0x7fff597e2b7a in xmlParseDocument (libxml2.2.dylib:x86_64+0x38b7a) #21 0x1124fa9ae in ncml_module::SaxParserWrapper::parse(std::__1::basic_string, std::__1::allocator > const&) SaxParserWrapper.cc:338 #22 0x11238fd0b in ncml_module::NCMLParser::parseInto(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType, BESDapResponse*) NCMLParser.cc:185 #23 0x11240baae in ncml_module::NCMLRequestHandler::ncml_build_dds(BESDataHandlerInterface&) NCMLRequestHandler.cc:260 #24 0x106f18c8f in BESRequestHandlerList::execute_current(BESDataHandlerInterface&) BESRequestHandlerList.cc:273 #25 0x106f170a4 in BESRequestHandlerList::execute_each(BESDataHandlerInterface&) BESRequestHandlerList.cc:167 #26 0x10ab2a5dc in BESDDXResponseHandler::execute(BESDataHandlerInterface&) BESDDXResponseHandler.cc:122 #27 0x107334d5a in BESXMLInterface::execute_data_request_plan() BESXMLInterface.cc:285 #28 0x106d8cb8d in BESInterface::execute_request(std::__1::basic_string, std::__1::allocator > const&) BESInterface.cc:513 #29 0x106cf48d8 in StandAloneClient::executeCommand(std::__1::basic_string, std::__1::allocator > const&, int) StandAloneClient.cc:237 SUMMARY: AddressSanitizer: heap-buffer-overflow (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x4f3fd) in __asan_memcpy Shadow bytes around the buggy address: 0x1c0600002290: 00 fa fa fa fd fd fd fa fa fa 00 00 00 fa fa fa 0x1c06000022a0: 00 00 00 fa fa fa fd fd fd fd fa fa fd fd fd fd 0x1c06000022b0: fa fa fd fd fd fd fa fa fd fd fd fd fa fa fd fd 0x1c06000022c0: fd fa fa fa 00 00 00 fa fa fa fd fd fd fa fa fa 0x1c06000022d0: 00 00 00 fa fa fa 00 00 00 fa fa fa 00 00 00 fa =>0x1c06000022e0: fa fa 00 00[04]fa fa fa 00 00 00 fa fa fa 00 00 0x1c06000022f0: 00 fa fa fa 00 00 04 fa fa fa 00 00 00 fa fa fa 0x1c0600002300: 00 00 00 fa fa fa 00 00 04 fa fa fa 00 00 00 fa 0x1c0600002310: fa fa 00 00 00 fa fa fa fa fa fa fa fa fa fa fa 0x1c0600002320: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c0600002330: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa Shadow byte legend (one shadow byte represents 8 application bytes): Addressable: 00 Partially addressable: 01 02 03 04 05 06 07 Heap left redzone: fa Freed heap region: fd Stack left redzone: f1 Stack mid redzone: f2 Stack right redzone: f3 Stack after return: f5 Stack use after scope: f8 Global redzone: f9 Global init order: f6 Poisoned by user: f7 Container overflow: fc Array cookie: ac Intra object redzone: bb ASan internal: fe Left alloca redzone: ca Right alloca redzone: cb ==75830==ABORTING /Users/jimg/src/opendap/hyrax_git/bes/modules/ncml_module/tests/testsuite.dir/at-groups/384/test-source: line 44: 75830 Abort trap: 6 besstandalone -c $abs_builddir/bes.conf -i ./test.bescmd stdout: ./aggregations.at:60: exit code was 134, expected 0 384. aggregations.at:60: 384. Comparing ddx response for agg/joinNew_simple.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_simple.ncml (aggregations.at:60): FAILED (aggregations.at:60) # -*- compilation -*- 385. aggregations.at:60: testing Comparing dods response for agg/joinNew_simple.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_simple.ncml ... ./aggregations.at:60: besstandalone -c $abs_builddir/bes.conf -i ./test.bescmd stderr: Width: 20 Name: V Width: 20 Name: V Width: 40 Name: V ================================================================= ==75864==ERROR: AddressSanitizer: heap-buffer-overflow on address 0x603000011724 at pc 0x0001097d93fe bp 0x7ffee6bc39b0 sp 0x7ffee6bc3160 READ of size 40 at 0x603000011724 thread T0 #0 0x1097d93fd in __asan_memcpy (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x4f3fd) Provided dSYM: [/Users/jimg/src/opendap/hyrax_git/build/lib/libdap.25.dylib.dSYM/Contents/Resources/DWARF/libdap.25.dylib] does not match symbol owner 0x7fcd16a05b80 #1 0x10d393f39 in libdap::Vector::val2buf(void*, bool) Vector.cc:1212 #2 0x10d37d5e7 in libdap::Vector::m_duplicate(libdap::Vector const&) Vector.cc:116 #3 0x10d381733 in libdap::Vector::Vector(libdap::Vector const&) Vector.cc:297 #4 0x10d3cf385 in libdap::Array::Array(libdap::Array const&) Array.cc:164 #5 0x1143ce8da in agg_util::ArrayAggregationBase::ArrayAggregationBase(agg_util::ArrayAggregationBase const&) ArrayAggregationBase.cc:56 #6 0x1143bdf84 in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(agg_util::ArrayAggregateOnOuterDimension const&) ArrayAggregateOnOuterDimension.cc:70 #7 0x1143be35c in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(agg_util::ArrayAggregateOnOuterDimension const&) ArrayAggregateOnOuterDimension.cc:71 #8 0x1143be89c in agg_util::ArrayAggregateOnOuterDimension::ptr_duplicate() ArrayAggregateOnOuterDimension.cc:85 #9 0x10d2800fd in libdap::DDS::add_var(libdap::BaseType*) DDS.cc:607 #10 0x114320de8 in ncml_module::AggregationElement::processAggVarJoinNewForArray(libdap::DDS&, libdap::Array const&, agg_util::Dimension const&, std::__1::vector, std::__1::allocator > > const&) AggregationElement.cc:867 #11 0x1142ebdb0 in ncml_module::AggregationElement::processJoinNewOnAggVar(libdap::DDS*, std::__1::basic_string, std::__1::allocator > const&, libdap::DDS const&) AggregationElement.cc:801 #12 0x1142b14d7 in ncml_module::AggregationElement::processJoinNew() AggregationElement.cc:420 #13 0x1142a7320 in ncml_module::AggregationElement::handleEnd() AggregationElement.cc:217 #14 0x1146f5b9f in ncml_module::NCMLParser::processEndNCMLElement(std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:1186 #15 0x1146fd35b in ncml_module::NCMLParser::onEndElementWithNamespace(std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:324 #16 0x1148618c9 in ncmlSax2EndElementNs(void*, unsigned char const*, unsigned char const*, unsigned char const*) SaxParserWrapper.cc:242 #17 0x7fff597e1d8e in xmlParseEndTag2 (libxml2.2.dylib:x86_64+0x37d8e) #18 0x7fff597e0440 in xmlParseElement (libxml2.2.dylib:x86_64+0x36440) #19 0x7fff597e005a in xmlParseContent (libxml2.2.dylib:x86_64+0x3605a) #20 0x7fff597e03f1 in xmlParseElement (libxml2.2.dylib:x86_64+0x363f1) #21 0x7fff597e2b7a in xmlParseDocument (libxml2.2.dylib:x86_64+0x38b7a) #22 0x1148529ae in ncml_module::SaxParserWrapper::parse(std::__1::basic_string, std::__1::allocator > const&) SaxParserWrapper.cc:338 #23 0x1146e7d0b in ncml_module::NCMLParser::parseInto(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType, BESDapResponse*) NCMLParser.cc:185 #24 0x114769346 in ncml_module::NCMLRequestHandler::ncml_build_data(BESDataHandlerInterface&) NCMLRequestHandler.cc:297 #25 0x109275c8f in BESRequestHandlerList::execute_current(BESDataHandlerInterface&) BESRequestHandlerList.cc:273 #26 0x1092740a4 in BESRequestHandlerList::execute_each(BESDataHandlerInterface&) BESRequestHandlerList.cc:167 #27 0x10ce3288c in BESDataResponseHandler::execute(BESDataHandlerInterface&) BESDataResponseHandler.cc:148 #28 0x10968fd5a in BESXMLInterface::execute_data_request_plan() BESXMLInterface.cc:285 #29 0x1090e9b8d in BESInterface::execute_request(std::__1::basic_string, std::__1::allocator > const&) BESInterface.cc:513 #30 0x10904c8d8 in StandAloneClient::executeCommand(std::__1::basic_string, std::__1::allocator > const&, int) StandAloneClient.cc:237 #31 0x10904a3aa in StandAloneClient::executeCommands(std::__1::basic_ifstream >&, int) StandAloneClient.cc:349 #32 0x10902fe6d in StandAloneApp::run() StandAloneApp.cc:251 #33 0x109359c24 in BESApp::main(int, char**) BESApp.cc:58 #34 0x10903312e in main StandAloneApp.cc:345 #35 0x7fff59ad3014 in start (libdyld.dylib:x86_64+0x1014) 0x603000011724 is located 0 bytes to the right of 20-byte region [0x603000011710,0x603000011724) allocated by thread T0 here: #0 0x1097eccb2 in wrap__Znam (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x62cb2) #1 0x10d37eb3c in libdap::Vector::m_create_cardinal_data_buffer_for_type(unsigned int) Vector.cc:203 #2 0x10d393c15 in libdap::Vector::val2buf(void*, bool) Vector.cc:1206 #3 0x10d37d5e7 in libdap::Vector::m_duplicate(libdap::Vector const&) Vector.cc:116 #4 0x10d381733 in libdap::Vector::Vector(libdap::Vector const&) Vector.cc:297 #5 0x10d3cf385 in libdap::Array::Array(libdap::Array const&) Array.cc:164 #6 0x1143ce116 in agg_util::ArrayAggregationBase::ArrayAggregationBase(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&) ArrayAggregationBase.cc:50 #7 0x1143bd7d2 in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&, agg_util::Dimension const&) ArrayAggregateOnOuterDimension.cc:59 #8 0x1143bde34 in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&, agg_util::Dimension const&) ArrayAggregateOnOuterDimension.cc:61 #9 0x11431e7ae in ncml_module::AggregationElement::processAggVarJoinNewForArray(libdap::DDS&, libdap::Array const&, agg_util::Dimension const&, std::__1::vector, std::__1::allocator > > const&) AggregationElement.cc:855 #10 0x1142ebdb0 in ncml_module::AggregationElement::processJoinNewOnAggVar(libdap::DDS*, std::__1::basic_string, std::__1::allocator > const&, libdap::DDS const&) AggregationElement.cc:801 #11 0x1142b14d7 in ncml_module::AggregationElement::processJoinNew() AggregationElement.cc:420 #12 0x1142a7320 in ncml_module::AggregationElement::handleEnd() AggregationElement.cc:217 #13 0x1146f5b9f in ncml_module::NCMLParser::processEndNCMLElement(std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:1186 #14 0x1146fd35b in ncml_module::NCMLParser::onEndElementWithNamespace(std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:324 #15 0x1148618c9 in ncmlSax2EndElementNs(void*, unsigned char const*, unsigned char const*, unsigned char const*) SaxParserWrapper.cc:242 #16 0x7fff597e1d8e in xmlParseEndTag2 (libxml2.2.dylib:x86_64+0x37d8e) #17 0x7fff597e0440 in xmlParseElement (libxml2.2.dylib:x86_64+0x36440) #18 0x7fff597e005a in xmlParseContent (libxml2.2.dylib:x86_64+0x3605a) #19 0x7fff597e03f1 in xmlParseElement (libxml2.2.dylib:x86_64+0x363f1) #20 0x7fff597e2b7a in xmlParseDocument (libxml2.2.dylib:x86_64+0x38b7a) #21 0x1148529ae in ncml_module::SaxParserWrapper::parse(std::__1::basic_string, std::__1::allocator > const&) SaxParserWrapper.cc:338 #22 0x1146e7d0b in ncml_module::NCMLParser::parseInto(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType, BESDapResponse*) NCMLParser.cc:185 #23 0x114769346 in ncml_module::NCMLRequestHandler::ncml_build_data(BESDataHandlerInterface&) NCMLRequestHandler.cc:297 #24 0x109275c8f in BESRequestHandlerList::execute_current(BESDataHandlerInterface&) BESRequestHandlerList.cc:273 #25 0x1092740a4 in BESRequestHandlerList::execute_each(BESDataHandlerInterface&) BESRequestHandlerList.cc:167 #26 0x10ce3288c in BESDataResponseHandler::execute(BESDataHandlerInterface&) BESDataResponseHandler.cc:148 #27 0x10968fd5a in BESXMLInterface::execute_data_request_plan() BESXMLInterface.cc:285 #28 0x1090e9b8d in BESInterface::execute_request(std::__1::basic_string, std::__1::allocator > const&) BESInterface.cc:513 #29 0x10904c8d8 in StandAloneClient::executeCommand(std::__1::basic_string, std::__1::allocator > const&, int) StandAloneClient.cc:237 SUMMARY: AddressSanitizer: heap-buffer-overflow (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x4f3fd) in __asan_memcpy Shadow bytes around the buggy address: 0x1c0600002290: 00 fa fa fa fd fd fd fa fa fa 00 00 00 fa fa fa 0x1c06000022a0: 00 00 00 fa fa fa fd fd fd fd fa fa fd fd fd fd 0x1c06000022b0: fa fa fd fd fd fd fa fa fd fd fd fd fa fa fd fd 0x1c06000022c0: fd fa fa fa 00 00 00 fa fa fa fd fd fd fa fa fa 0x1c06000022d0: 00 00 00 fa fa fa 00 00 00 fa fa fa 00 00 00 fa =>0x1c06000022e0: fa fa 00 00[04]fa fa fa 00 00 00 fa fa fa 00 00 0x1c06000022f0: 00 fa fa fa 00 00 04 fa fa fa 00 00 00 fa fa fa 0x1c0600002300: 00 00 00 fa fa fa 00 00 04 fa fa fa 00 00 00 fa 0x1c0600002310: fa fa 00 00 00 fa fa fa fa fa fa fa fa fa fa fa 0x1c0600002320: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c0600002330: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa Shadow byte legend (one shadow byte represents 8 application bytes): Addressable: 00 Partially addressable: 01 02 03 04 05 06 07 Heap left redzone: fa Freed heap region: fd Stack left redzone: f1 Stack mid redzone: f2 Stack right redzone: f3 Stack after return: f5 Stack use after scope: f8 Global redzone: f9 Global init order: f6 Poisoned by user: f7 Container overflow: fc Array cookie: ac Intra object redzone: bb ASan internal: fe Left alloca redzone: ca Right alloca redzone: cb ==75864==ABORTING /Users/jimg/src/opendap/hyrax_git/bes/modules/ncml_module/tests/testsuite.dir/at-groups/385/test-source: line 44: 75864 Abort trap: 6 besstandalone -c $abs_builddir/bes.conf -i ./test.bescmd stdout: ./aggregations.at:60: exit code was 134, expected 0 385. aggregations.at:60: 385. Comparing dods response for agg/joinNew_simple.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_simple.ncml (aggregations.at:60): FAILED (aggregations.at:60) # -*- compilation -*- 386. aggregations.at:61: testing Comparing dods response for agg/joinNew_simple.ncml to getdap (ascii) baseline ${abs_srcdir}/baselines/agg/joinNew_simple.ncml ... ./aggregations.at:61: besstandalone -c $abs_builddir/bes.conf -i ./test.bescmd stderr: Width: 20 Name: V Width: 20 Name: V Width: 40 Name: V ================================================================= ==75898==ERROR: AddressSanitizer: heap-buffer-overflow on address 0x603000011724 at pc 0x00010a1a33fe bp 0x7ffee61f59b0 sp 0x7ffee61f5160 READ of size 40 at 0x603000011724 thread T0 #0 0x10a1a33fd in __asan_memcpy (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x4f3fd) Provided dSYM: [/Users/jimg/src/opendap/hyrax_git/build/lib/libdap.25.dylib.dSYM/Contents/Resources/DWARF/libdap.25.dylib] does not match symbol owner 0x7ffd6e60dee0 #1 0x10dd93f39 in libdap::Vector::val2buf(void*, bool) Vector.cc:1212 #2 0x10dd7d5e7 in libdap::Vector::m_duplicate(libdap::Vector const&) Vector.cc:116 #3 0x10dd81733 in libdap::Vector::Vector(libdap::Vector const&) Vector.cc:297 #4 0x10ddcf385 in libdap::Array::Array(libdap::Array const&) Array.cc:164 #5 0x1157a68da in agg_util::ArrayAggregationBase::ArrayAggregationBase(agg_util::ArrayAggregationBase const&) ArrayAggregationBase.cc:56 #6 0x115795f84 in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(agg_util::ArrayAggregateOnOuterDimension const&) ArrayAggregateOnOuterDimension.cc:70 #7 0x11579635c in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(agg_util::ArrayAggregateOnOuterDimension const&) ArrayAggregateOnOuterDimension.cc:71 #8 0x11579689c in agg_util::ArrayAggregateOnOuterDimension::ptr_duplicate() ArrayAggregateOnOuterDimension.cc:85 #9 0x10dc800fd in libdap::DDS::add_var(libdap::BaseType*) DDS.cc:607 #10 0x1156f8de8 in ncml_module::AggregationElement::processAggVarJoinNewForArray(libdap::DDS&, libdap::Array const&, agg_util::Dimension const&, std::__1::vector, std::__1::allocator > > const&) AggregationElement.cc:867 #11 0x1156c3db0 in ncml_module::AggregationElement::processJoinNewOnAggVar(libdap::DDS*, std::__1::basic_string, std::__1::allocator > const&, libdap::DDS const&) AggregationElement.cc:801 #12 0x1156894d7 in ncml_module::AggregationElement::processJoinNew() AggregationElement.cc:420 #13 0x11567f320 in ncml_module::AggregationElement::handleEnd() AggregationElement.cc:217 #14 0x115acdb9f in ncml_module::NCMLParser::processEndNCMLElement(std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:1186 #15 0x115ad535b in ncml_module::NCMLParser::onEndElementWithNamespace(std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:324 #16 0x115c398c9 in ncmlSax2EndElementNs(void*, unsigned char const*, unsigned char const*, unsigned char const*) SaxParserWrapper.cc:242 #17 0x7fff597e1d8e in xmlParseEndTag2 (libxml2.2.dylib:x86_64+0x37d8e) #18 0x7fff597e0440 in xmlParseElement (libxml2.2.dylib:x86_64+0x36440) #19 0x7fff597e005a in xmlParseContent (libxml2.2.dylib:x86_64+0x3605a) #20 0x7fff597e03f1 in xmlParseElement (libxml2.2.dylib:x86_64+0x363f1) #21 0x7fff597e2b7a in xmlParseDocument (libxml2.2.dylib:x86_64+0x38b7a) #22 0x115c2a9ae in ncml_module::SaxParserWrapper::parse(std::__1::basic_string, std::__1::allocator > const&) SaxParserWrapper.cc:338 #23 0x115abfd0b in ncml_module::NCMLParser::parseInto(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType, BESDapResponse*) NCMLParser.cc:185 #24 0x115b41346 in ncml_module::NCMLRequestHandler::ncml_build_data(BESDataHandlerInterface&) NCMLRequestHandler.cc:297 #25 0x109c42c8f in BESRequestHandlerList::execute_current(BESDataHandlerInterface&) BESRequestHandlerList.cc:273 #26 0x109c410a4 in BESRequestHandlerList::execute_each(BESDataHandlerInterface&) BESRequestHandlerList.cc:167 #27 0x10d83288c in BESDataResponseHandler::execute(BESDataHandlerInterface&) BESDataResponseHandler.cc:148 #28 0x10a05cd5a in BESXMLInterface::execute_data_request_plan() BESXMLInterface.cc:285 #29 0x109ab6b8d in BESInterface::execute_request(std::__1::basic_string, std::__1::allocator > const&) BESInterface.cc:513 #30 0x109a1a8d8 in StandAloneClient::executeCommand(std::__1::basic_string, std::__1::allocator > const&, int) StandAloneClient.cc:237 #31 0x109a183aa in StandAloneClient::executeCommands(std::__1::basic_ifstream >&, int) StandAloneClient.cc:349 #32 0x1099fde6d in StandAloneApp::run() StandAloneApp.cc:251 #33 0x109d26c24 in BESApp::main(int, char**) BESApp.cc:58 #34 0x109a0112e in main StandAloneApp.cc:345 #35 0x7fff59ad3014 in start (libdyld.dylib:x86_64+0x1014) 0x603000011724 is located 0 bytes to the right of 20-byte region [0x603000011710,0x603000011724) allocated by thread T0 here: #0 0x10a1b6cb2 in wrap__Znam (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x62cb2) #1 0x10dd7eb3c in libdap::Vector::m_create_cardinal_data_buffer_for_type(unsigned int) Vector.cc:203 #2 0x10dd93c15 in libdap::Vector::val2buf(void*, bool) Vector.cc:1206 #3 0x10dd7d5e7 in libdap::Vector::m_duplicate(libdap::Vector const&) Vector.cc:116 #4 0x10dd81733 in libdap::Vector::Vector(libdap::Vector const&) Vector.cc:297 #5 0x10ddcf385 in libdap::Array::Array(libdap::Array const&) Array.cc:164 #6 0x1157a6116 in agg_util::ArrayAggregationBase::ArrayAggregationBase(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&) ArrayAggregationBase.cc:50 #7 0x1157957d2 in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&, agg_util::Dimension const&) ArrayAggregateOnOuterDimension.cc:59 #8 0x115795e34 in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&, agg_util::Dimension const&) ArrayAggregateOnOuterDimension.cc:61 #9 0x1156f67ae in ncml_module::AggregationElement::processAggVarJoinNewForArray(libdap::DDS&, libdap::Array const&, agg_util::Dimension const&, std::__1::vector, std::__1::allocator > > const&) AggregationElement.cc:855 #10 0x1156c3db0 in ncml_module::AggregationElement::processJoinNewOnAggVar(libdap::DDS*, std::__1::basic_string, std::__1::allocator > const&, libdap::DDS const&) AggregationElement.cc:801 #11 0x1156894d7 in ncml_module::AggregationElement::processJoinNew() AggregationElement.cc:420 #12 0x11567f320 in ncml_module::AggregationElement::handleEnd() AggregationElement.cc:217 #13 0x115acdb9f in ncml_module::NCMLParser::processEndNCMLElement(std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:1186 #14 0x115ad535b in ncml_module::NCMLParser::onEndElementWithNamespace(std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:324 #15 0x115c398c9 in ncmlSax2EndElementNs(void*, unsigned char const*, unsigned char const*, unsigned char const*) SaxParserWrapper.cc:242 #16 0x7fff597e1d8e in xmlParseEndTag2 (libxml2.2.dylib:x86_64+0x37d8e) #17 0x7fff597e0440 in xmlParseElement (libxml2.2.dylib:x86_64+0x36440) #18 0x7fff597e005a in xmlParseContent (libxml2.2.dylib:x86_64+0x3605a) #19 0x7fff597e03f1 in xmlParseElement (libxml2.2.dylib:x86_64+0x363f1) #20 0x7fff597e2b7a in xmlParseDocument (libxml2.2.dylib:x86_64+0x38b7a) #21 0x115c2a9ae in ncml_module::SaxParserWrapper::parse(std::__1::basic_string, std::__1::allocator > const&) SaxParserWrapper.cc:338 #22 0x115abfd0b in ncml_module::NCMLParser::parseInto(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType, BESDapResponse*) NCMLParser.cc:185 #23 0x115b41346 in ncml_module::NCMLRequestHandler::ncml_build_data(BESDataHandlerInterface&) NCMLRequestHandler.cc:297 #24 0x109c42c8f in BESRequestHandlerList::execute_current(BESDataHandlerInterface&) BESRequestHandlerList.cc:273 #25 0x109c410a4 in BESRequestHandlerList::execute_each(BESDataHandlerInterface&) BESRequestHandlerList.cc:167 #26 0x10d83288c in BESDataResponseHandler::execute(BESDataHandlerInterface&) BESDataResponseHandler.cc:148 #27 0x10a05cd5a in BESXMLInterface::execute_data_request_plan() BESXMLInterface.cc:285 #28 0x109ab6b8d in BESInterface::execute_request(std::__1::basic_string, std::__1::allocator > const&) BESInterface.cc:513 #29 0x109a1a8d8 in StandAloneClient::executeCommand(std::__1::basic_string, std::__1::allocator > const&, int) StandAloneClient.cc:237 SUMMARY: AddressSanitizer: heap-buffer-overflow (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x4f3fd) in __asan_memcpy Shadow bytes around the buggy address: 0x1c0600002290: 00 fa fa fa fd fd fd fa fa fa 00 00 00 fa fa fa 0x1c06000022a0: 00 00 00 fa fa fa fd fd fd fd fa fa fd fd fd fd 0x1c06000022b0: fa fa fd fd fd fd fa fa fd fd fd fd fa fa fd fd 0x1c06000022c0: fd fa fa fa 00 00 00 fa fa fa fd fd fd fa fa fa 0x1c06000022d0: 00 00 00 fa fa fa 00 00 00 fa fa fa 00 00 00 fa =>0x1c06000022e0: fa fa 00 00[04]fa fa fa 00 00 00 fa fa fa 00 00 0x1c06000022f0: 00 fa fa fa 00 00 04 fa fa fa 00 00 00 fa fa fa 0x1c0600002300: 00 00 00 fa fa fa 00 00 04 fa fa fa 00 00 00 fa 0x1c0600002310: fa fa 00 00 00 fa fa fa fa fa fa fa fa fa fa fa 0x1c0600002320: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c0600002330: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa Shadow byte legend (one shadow byte represents 8 application bytes): Addressable: 00 Partially addressable: 01 02 03 04 05 06 07 Heap left redzone: fa Freed heap region: fd Stack left redzone: f1 Stack mid redzone: f2 Stack right redzone: f3 Stack after return: f5 Stack use after scope: f8 Global redzone: f9 Global init order: f6 Poisoned by user: f7 Container overflow: fc Array cookie: ac Intra object redzone: bb ASan internal: fe Left alloca redzone: ca Right alloca redzone: cb ==75898==ABORTING /Users/jimg/src/opendap/hyrax_git/bes/modules/ncml_module/tests/testsuite.dir/at-groups/386/test-source: line 55: 75898 Abort trap: 6 besstandalone -c $abs_builddir/bes.conf -i ./test.bescmd stdout: ./aggregations.at:61: exit code was 134, expected 0 386. aggregations.at:61: 386. Comparing dods response for agg/joinNew_simple.ncml to getdap (ascii) baseline ${abs_srcdir}/baselines/agg/joinNew_simple.ncml (aggregations.at:61): FAILED (aggregations.at:61) # -*- compilation -*- 387. aggregations.at:64: testing Comparing das response for agg/joinNew_simple_2.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_simple_2.ncml ... ./aggregations.at:64: besstandalone -c $abs_builddir/bes.conf -i ./test.bescmd stderr: Width: 20 Name: V Width: 20 Name: V Width: 80 Name: V ================================================================= ==75951==ERROR: AddressSanitizer: heap-buffer-overflow on address 0x603000011574 at pc 0x00010b7a13fe bp 0x7ffee4bf9810 sp 0x7ffee4bf8fc0 READ of size 80 at 0x603000011574 thread T0 #0 0x10b7a13fd in __asan_memcpy (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x4f3fd) Provided dSYM: [/Users/jimg/src/opendap/hyrax_git/build/lib/libdap.25.dylib.dSYM/Contents/Resources/DWARF/libdap.25.dylib] does not match symbol owner 0x7fc559c0bc40 #1 0x10f393f39 in libdap::Vector::val2buf(void*, bool) Vector.cc:1212 #2 0x10f37d5e7 in libdap::Vector::m_duplicate(libdap::Vector const&) Vector.cc:116 #3 0x10f381733 in libdap::Vector::Vector(libdap::Vector const&) Vector.cc:297 #4 0x10f3cf385 in libdap::Array::Array(libdap::Array const&) Array.cc:164 #5 0x1163988da in agg_util::ArrayAggregationBase::ArrayAggregationBase(agg_util::ArrayAggregationBase const&) ArrayAggregationBase.cc:56 #6 0x116387f84 in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(agg_util::ArrayAggregateOnOuterDimension const&) ArrayAggregateOnOuterDimension.cc:70 #7 0x11638835c in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(agg_util::ArrayAggregateOnOuterDimension const&) ArrayAggregateOnOuterDimension.cc:71 #8 0x11638889c in agg_util::ArrayAggregateOnOuterDimension::ptr_duplicate() ArrayAggregateOnOuterDimension.cc:85 #9 0x10f2800fd in libdap::DDS::add_var(libdap::BaseType*) DDS.cc:607 #10 0x1162eade8 in ncml_module::AggregationElement::processAggVarJoinNewForArray(libdap::DDS&, libdap::Array const&, agg_util::Dimension const&, std::__1::vector, std::__1::allocator > > const&) AggregationElement.cc:867 #11 0x1162b5db0 in ncml_module::AggregationElement::processJoinNewOnAggVar(libdap::DDS*, std::__1::basic_string, std::__1::allocator > const&, libdap::DDS const&) AggregationElement.cc:801 #12 0x11627b4d7 in ncml_module::AggregationElement::processJoinNew() AggregationElement.cc:420 #13 0x116271320 in ncml_module::AggregationElement::handleEnd() AggregationElement.cc:217 #14 0x1166bfb9f in ncml_module::NCMLParser::processEndNCMLElement(std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:1186 #15 0x1166c735b in ncml_module::NCMLParser::onEndElementWithNamespace(std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:324 #16 0x11682b8c9 in ncmlSax2EndElementNs(void*, unsigned char const*, unsigned char const*, unsigned char const*) SaxParserWrapper.cc:242 #17 0x7fff597e1d8e in xmlParseEndTag2 (libxml2.2.dylib:x86_64+0x37d8e) #18 0x7fff597e0440 in xmlParseElement (libxml2.2.dylib:x86_64+0x36440) #19 0x7fff597e005a in xmlParseContent (libxml2.2.dylib:x86_64+0x3605a) #20 0x7fff597e03f1 in xmlParseElement (libxml2.2.dylib:x86_64+0x363f1) #21 0x7fff597e2b7a in xmlParseDocument (libxml2.2.dylib:x86_64+0x38b7a) #22 0x11681c9ae in ncml_module::SaxParserWrapper::parse(std::__1::basic_string, std::__1::allocator > const&) SaxParserWrapper.cc:338 #23 0x1166b1d0b in ncml_module::NCMLParser::parseInto(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType, BESDapResponse*) NCMLParser.cc:185 #24 0x1166ab1e7 in ncml_module::NCMLParser::parse(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType) NCMLParser.cc:155 #25 0x116725841 in ncml_module::NCMLRequestHandler::ncml_build_das(BESDataHandlerInterface&) NCMLRequestHandler.cc:172 #26 0x10b23fc8f in BESRequestHandlerList::execute_current(BESDataHandlerInterface&) BESRequestHandlerList.cc:273 #27 0x10b23e0a4 in BESRequestHandlerList::execute_each(BESDataHandlerInterface&) BESRequestHandlerList.cc:167 #28 0x10ee21ff0 in BESDASResponseHandler::execute(BESDataHandlerInterface&) BESDASResponseHandler.cc:95 #29 0x10b656d5a in BESXMLInterface::execute_data_request_plan() BESXMLInterface.cc:285 #30 0x10b0b3b8d in BESInterface::execute_request(std::__1::basic_string, std::__1::allocator > const&) BESInterface.cc:513 #31 0x10b0168d8 in StandAloneClient::executeCommand(std::__1::basic_string, std::__1::allocator > const&, int) StandAloneClient.cc:237 #32 0x10b0143aa in StandAloneClient::executeCommands(std::__1::basic_ifstream >&, int) StandAloneClient.cc:349 #33 0x10aff9e6d in StandAloneApp::run() StandAloneApp.cc:251 #34 0x10b323c24 in BESApp::main(int, char**) BESApp.cc:58 #35 0x10affd12e in main StandAloneApp.cc:345 #36 0x7fff59ad3014 in start (libdyld.dylib:x86_64+0x1014) 0x603000011574 is located 0 bytes to the right of 20-byte region [0x603000011560,0x603000011574) allocated by thread T0 here: #0 0x10b7b4cb2 in wrap__Znam (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x62cb2) #1 0x10f37eb3c in libdap::Vector::m_create_cardinal_data_buffer_for_type(unsigned int) Vector.cc:203 #2 0x10f393c15 in libdap::Vector::val2buf(void*, bool) Vector.cc:1206 #3 0x10f37d5e7 in libdap::Vector::m_duplicate(libdap::Vector const&) Vector.cc:116 #4 0x10f381733 in libdap::Vector::Vector(libdap::Vector const&) Vector.cc:297 #5 0x10f3cf385 in libdap::Array::Array(libdap::Array const&) Array.cc:164 #6 0x116398116 in agg_util::ArrayAggregationBase::ArrayAggregationBase(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&) ArrayAggregationBase.cc:50 #7 0x1163877d2 in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&, agg_util::Dimension const&) ArrayAggregateOnOuterDimension.cc:59 #8 0x116387e34 in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&, agg_util::Dimension const&) ArrayAggregateOnOuterDimension.cc:61 #9 0x1162e87ae in ncml_module::AggregationElement::processAggVarJoinNewForArray(libdap::DDS&, libdap::Array const&, agg_util::Dimension const&, std::__1::vector, std::__1::allocator > > const&) AggregationElement.cc:855 #10 0x1162b5db0 in ncml_module::AggregationElement::processJoinNewOnAggVar(libdap::DDS*, std::__1::basic_string, std::__1::allocator > const&, libdap::DDS const&) AggregationElement.cc:801 #11 0x11627b4d7 in ncml_module::AggregationElement::processJoinNew() AggregationElement.cc:420 #12 0x116271320 in ncml_module::AggregationElement::handleEnd() AggregationElement.cc:217 #13 0x1166bfb9f in ncml_module::NCMLParser::processEndNCMLElement(std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:1186 #14 0x1166c735b in ncml_module::NCMLParser::onEndElementWithNamespace(std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:324 #15 0x11682b8c9 in ncmlSax2EndElementNs(void*, unsigned char const*, unsigned char const*, unsigned char const*) SaxParserWrapper.cc:242 #16 0x7fff597e1d8e in xmlParseEndTag2 (libxml2.2.dylib:x86_64+0x37d8e) #17 0x7fff597e0440 in xmlParseElement (libxml2.2.dylib:x86_64+0x36440) #18 0x7fff597e005a in xmlParseContent (libxml2.2.dylib:x86_64+0x3605a) #19 0x7fff597e03f1 in xmlParseElement (libxml2.2.dylib:x86_64+0x363f1) #20 0x7fff597e2b7a in xmlParseDocument (libxml2.2.dylib:x86_64+0x38b7a) #21 0x11681c9ae in ncml_module::SaxParserWrapper::parse(std::__1::basic_string, std::__1::allocator > const&) SaxParserWrapper.cc:338 #22 0x1166b1d0b in ncml_module::NCMLParser::parseInto(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType, BESDapResponse*) NCMLParser.cc:185 #23 0x1166ab1e7 in ncml_module::NCMLParser::parse(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType) NCMLParser.cc:155 #24 0x116725841 in ncml_module::NCMLRequestHandler::ncml_build_das(BESDataHandlerInterface&) NCMLRequestHandler.cc:172 #25 0x10b23fc8f in BESRequestHandlerList::execute_current(BESDataHandlerInterface&) BESRequestHandlerList.cc:273 #26 0x10b23e0a4 in BESRequestHandlerList::execute_each(BESDataHandlerInterface&) BESRequestHandlerList.cc:167 #27 0x10ee21ff0 in BESDASResponseHandler::execute(BESDataHandlerInterface&) BESDASResponseHandler.cc:95 #28 0x10b656d5a in BESXMLInterface::execute_data_request_plan() BESXMLInterface.cc:285 #29 0x10b0b3b8d in BESInterface::execute_request(std::__1::basic_string, std::__1::allocator > const&) BESInterface.cc:513 SUMMARY: AddressSanitizer: heap-buffer-overflow (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x4f3fd) in __asan_memcpy Shadow bytes around the buggy address: 0x1c0600002250: fa fa 00 00 00 fa fa fa 00 00 00 fa fa fa 00 00 0x1c0600002260: 04 fa fa fa fd fd fd fd fa fa fd fd fd fd fa fa 0x1c0600002270: fd fd fd fd fa fa 00 00 00 00 fa fa fd fd fd fa 0x1c0600002280: fa fa 00 00 00 fa fa fa fd fd fd fa fa fa 00 00 0x1c0600002290: 00 fa fa fa fd fd fd fa fa fa 00 00 00 fa fa fa =>0x1c06000022a0: fd fd fd fa fa fa 00 00 00 fa fa fa 00 00[04]fa 0x1c06000022b0: fa fa 00 00 04 fa fa fa 00 00 00 fa fa fa 00 00 0x1c06000022c0: 00 fa fa fa 00 00 04 fa fa fa 00 00 00 00 fa fa 0x1c06000022d0: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c06000022e0: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c06000022f0: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa Shadow byte legend (one shadow byte represents 8 application bytes): Addressable: 00 Partially addressable: 01 02 03 04 05 06 07 Heap left redzone: fa Freed heap region: fd Stack left redzone: f1 Stack mid redzone: f2 Stack right redzone: f3 Stack after return: f5 Stack use after scope: f8 Global redzone: f9 Global init order: f6 Poisoned by user: f7 Container overflow: fc Array cookie: ac Intra object redzone: bb ASan internal: fe Left alloca redzone: ca Right alloca redzone: cb ==75951==ABORTING /Users/jimg/src/opendap/hyrax_git/bes/modules/ncml_module/tests/testsuite.dir/at-groups/387/test-source: line 44: 75951 Abort trap: 6 besstandalone -c $abs_builddir/bes.conf -i ./test.bescmd stdout: ./aggregations.at:64: exit code was 134, expected 0 387. aggregations.at:64: 387. Comparing das response for agg/joinNew_simple_2.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_simple_2.ncml (aggregations.at:64): FAILED (aggregations.at:64) # -*- compilation -*- 388. aggregations.at:64: testing Comparing dds response for agg/joinNew_simple_2.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_simple_2.ncml ... ./aggregations.at:64: besstandalone -c $abs_builddir/bes.conf -i ./test.bescmd stderr: Width: 20 Name: V Width: 20 Name: V Width: 80 Name: V ================================================================= ==75957==ERROR: AddressSanitizer: heap-buffer-overflow on address 0x603000011574 at pc 0x00010d21b3fe bp 0x7ffee317db30 sp 0x7ffee317d2e0 READ of size 80 at 0x603000011574 thread T0 #0 0x10d21b3fd in __asan_memcpy (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x4f3fd) Provided dSYM: [/Users/jimg/src/opendap/hyrax_git/build/lib/libdap.25.dylib.dSYM/Contents/Resources/DWARF/libdap.25.dylib] does not match symbol owner 0x7faeb1005bb0 #1 0x10eddbf39 in libdap::Vector::val2buf(void*, bool) Vector.cc:1212 #2 0x10edc55e7 in libdap::Vector::m_duplicate(libdap::Vector const&) Vector.cc:116 #3 0x10edc9733 in libdap::Vector::Vector(libdap::Vector const&) Vector.cc:297 #4 0x10ee17385 in libdap::Array::Array(libdap::Array const&) Array.cc:164 #5 0x1182ef8da in agg_util::ArrayAggregationBase::ArrayAggregationBase(agg_util::ArrayAggregationBase const&) ArrayAggregationBase.cc:56 #6 0x1182def84 in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(agg_util::ArrayAggregateOnOuterDimension const&) ArrayAggregateOnOuterDimension.cc:70 #7 0x1182df35c in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(agg_util::ArrayAggregateOnOuterDimension const&) ArrayAggregateOnOuterDimension.cc:71 #8 0x1182df89c in agg_util::ArrayAggregateOnOuterDimension::ptr_duplicate() ArrayAggregateOnOuterDimension.cc:85 #9 0x10ecc80fd in libdap::DDS::add_var(libdap::BaseType*) DDS.cc:607 #10 0x118241de8 in ncml_module::AggregationElement::processAggVarJoinNewForArray(libdap::DDS&, libdap::Array const&, agg_util::Dimension const&, std::__1::vector, std::__1::allocator > > const&) AggregationElement.cc:867 #11 0x11820cdb0 in ncml_module::AggregationElement::processJoinNewOnAggVar(libdap::DDS*, std::__1::basic_string, std::__1::allocator > const&, libdap::DDS const&) AggregationElement.cc:801 #12 0x1181d24d7 in ncml_module::AggregationElement::processJoinNew() AggregationElement.cc:420 #13 0x1181c8320 in ncml_module::AggregationElement::handleEnd() AggregationElement.cc:217 #14 0x118616b9f in ncml_module::NCMLParser::processEndNCMLElement(std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:1186 #15 0x11861e35b in ncml_module::NCMLParser::onEndElementWithNamespace(std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:324 #16 0x1187828c9 in ncmlSax2EndElementNs(void*, unsigned char const*, unsigned char const*, unsigned char const*) SaxParserWrapper.cc:242 #17 0x7fff597e1d8e in xmlParseEndTag2 (libxml2.2.dylib:x86_64+0x37d8e) #18 0x7fff597e0440 in xmlParseElement (libxml2.2.dylib:x86_64+0x36440) #19 0x7fff597e005a in xmlParseContent (libxml2.2.dylib:x86_64+0x3605a) #20 0x7fff597e03f1 in xmlParseElement (libxml2.2.dylib:x86_64+0x363f1) #21 0x7fff597e2b7a in xmlParseDocument (libxml2.2.dylib:x86_64+0x38b7a) #22 0x1187739ae in ncml_module::SaxParserWrapper::parse(std::__1::basic_string, std::__1::allocator > const&) SaxParserWrapper.cc:338 #23 0x118608d0b in ncml_module::NCMLParser::parseInto(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType, BESDapResponse*) NCMLParser.cc:185 #24 0x118684aae in ncml_module::NCMLRequestHandler::ncml_build_dds(BESDataHandlerInterface&) NCMLRequestHandler.cc:260 #25 0x10ccbac8f in BESRequestHandlerList::execute_current(BESDataHandlerInterface&) BESRequestHandlerList.cc:273 #26 0x10ccb90a4 in BESRequestHandlerList::execute_each(BESDataHandlerInterface&) BESRequestHandlerList.cc:167 #27 0x10e828048 in BESDDSResponseHandler::execute(BESDataHandlerInterface&) BESDDSResponseHandler.cc:107 #28 0x10d0d2d5a in BESXMLInterface::execute_data_request_plan() BESXMLInterface.cc:285 #29 0x10cb2eb8d in BESInterface::execute_request(std::__1::basic_string, std::__1::allocator > const&) BESInterface.cc:513 #30 0x10ca928d8 in StandAloneClient::executeCommand(std::__1::basic_string, std::__1::allocator > const&, int) StandAloneClient.cc:237 #31 0x10ca903aa in StandAloneClient::executeCommands(std::__1::basic_ifstream >&, int) StandAloneClient.cc:349 #32 0x10ca75e6d in StandAloneApp::run() StandAloneApp.cc:251 #33 0x10cd9ec24 in BESApp::main(int, char**) BESApp.cc:58 #34 0x10ca7912e in main StandAloneApp.cc:345 #35 0x7fff59ad3014 in start (libdyld.dylib:x86_64+0x1014) 0x603000011574 is located 0 bytes to the right of 20-byte region [0x603000011560,0x603000011574) allocated by thread T0 here: #0 0x10d22ecb2 in wrap__Znam (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x62cb2) #1 0x10edc6b3c in libdap::Vector::m_create_cardinal_data_buffer_for_type(unsigned int) Vector.cc:203 #2 0x10eddbc15 in libdap::Vector::val2buf(void*, bool) Vector.cc:1206 #3 0x10edc55e7 in libdap::Vector::m_duplicate(libdap::Vector const&) Vector.cc:116 #4 0x10edc9733 in libdap::Vector::Vector(libdap::Vector const&) Vector.cc:297 #5 0x10ee17385 in libdap::Array::Array(libdap::Array const&) Array.cc:164 #6 0x1182ef116 in agg_util::ArrayAggregationBase::ArrayAggregationBase(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&) ArrayAggregationBase.cc:50 #7 0x1182de7d2 in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&, agg_util::Dimension const&) ArrayAggregateOnOuterDimension.cc:59 #8 0x1182dee34 in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&, agg_util::Dimension const&) ArrayAggregateOnOuterDimension.cc:61 #9 0x11823f7ae in ncml_module::AggregationElement::processAggVarJoinNewForArray(libdap::DDS&, libdap::Array const&, agg_util::Dimension const&, std::__1::vector, std::__1::allocator > > const&) AggregationElement.cc:855 #10 0x11820cdb0 in ncml_module::AggregationElement::processJoinNewOnAggVar(libdap::DDS*, std::__1::basic_string, std::__1::allocator > const&, libdap::DDS const&) AggregationElement.cc:801 #11 0x1181d24d7 in ncml_module::AggregationElement::processJoinNew() AggregationElement.cc:420 #12 0x1181c8320 in ncml_module::AggregationElement::handleEnd() AggregationElement.cc:217 #13 0x118616b9f in ncml_module::NCMLParser::processEndNCMLElement(std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:1186 #14 0x11861e35b in ncml_module::NCMLParser::onEndElementWithNamespace(std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:324 #15 0x1187828c9 in ncmlSax2EndElementNs(void*, unsigned char const*, unsigned char const*, unsigned char const*) SaxParserWrapper.cc:242 #16 0x7fff597e1d8e in xmlParseEndTag2 (libxml2.2.dylib:x86_64+0x37d8e) #17 0x7fff597e0440 in xmlParseElement (libxml2.2.dylib:x86_64+0x36440) #18 0x7fff597e005a in xmlParseContent (libxml2.2.dylib:x86_64+0x3605a) #19 0x7fff597e03f1 in xmlParseElement (libxml2.2.dylib:x86_64+0x363f1) #20 0x7fff597e2b7a in xmlParseDocument (libxml2.2.dylib:x86_64+0x38b7a) #21 0x1187739ae in ncml_module::SaxParserWrapper::parse(std::__1::basic_string, std::__1::allocator > const&) SaxParserWrapper.cc:338 #22 0x118608d0b in ncml_module::NCMLParser::parseInto(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType, BESDapResponse*) NCMLParser.cc:185 #23 0x118684aae in ncml_module::NCMLRequestHandler::ncml_build_dds(BESDataHandlerInterface&) NCMLRequestHandler.cc:260 #24 0x10ccbac8f in BESRequestHandlerList::execute_current(BESDataHandlerInterface&) BESRequestHandlerList.cc:273 #25 0x10ccb90a4 in BESRequestHandlerList::execute_each(BESDataHandlerInterface&) BESRequestHandlerList.cc:167 #26 0x10e828048 in BESDDSResponseHandler::execute(BESDataHandlerInterface&) BESDDSResponseHandler.cc:107 #27 0x10d0d2d5a in BESXMLInterface::execute_data_request_plan() BESXMLInterface.cc:285 #28 0x10cb2eb8d in BESInterface::execute_request(std::__1::basic_string, std::__1::allocator > const&) BESInterface.cc:513 #29 0x10ca928d8 in StandAloneClient::executeCommand(std::__1::basic_string, std::__1::allocator > const&, int) StandAloneClient.cc:237 SUMMARY: AddressSanitizer: heap-buffer-overflow (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x4f3fd) in __asan_memcpy Shadow bytes around the buggy address: 0x1c0600002250: fa fa 00 00 00 fa fa fa 00 00 00 fa fa fa 00 00 0x1c0600002260: 04 fa fa fa fd fd fd fd fa fa fd fd fd fd fa fa 0x1c0600002270: fd fd fd fd fa fa 00 00 00 00 fa fa fd fd fd fa 0x1c0600002280: fa fa 00 00 00 fa fa fa fd fd fd fa fa fa 00 00 0x1c0600002290: 00 fa fa fa fd fd fd fa fa fa 00 00 00 fa fa fa =>0x1c06000022a0: fd fd fd fa fa fa 00 00 00 fa fa fa 00 00[04]fa 0x1c06000022b0: fa fa 00 00 04 fa fa fa 00 00 00 fa fa fa 00 00 0x1c06000022c0: 00 fa fa fa 00 00 04 fa fa fa 00 00 00 00 fa fa 0x1c06000022d0: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c06000022e0: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c06000022f0: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa Shadow byte legend (one shadow byte represents 8 application bytes): Addressable: 00 Partially addressable: 01 02 03 04 05 06 07 Heap left redzone: fa Freed heap region: fd Stack left redzone: f1 Stack mid redzone: f2 Stack right redzone: f3 Stack after return: f5 Stack use after scope: f8 Global redzone: f9 Global init order: f6 Poisoned by user: f7 Container overflow: fc Array cookie: ac Intra object redzone: bb ASan internal: fe Left alloca redzone: ca Right alloca redzone: cb ==75957==ABORTING /Users/jimg/src/opendap/hyrax_git/bes/modules/ncml_module/tests/testsuite.dir/at-groups/388/test-source: line 44: 75957 Abort trap: 6 besstandalone -c $abs_builddir/bes.conf -i ./test.bescmd stdout: ./aggregations.at:64: exit code was 134, expected 0 388. aggregations.at:64: 388. Comparing dds response for agg/joinNew_simple_2.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_simple_2.ncml (aggregations.at:64): FAILED (aggregations.at:64) # -*- compilation -*- 389. aggregations.at:64: testing Comparing ddx response for agg/joinNew_simple_2.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_simple_2.ncml ... ./aggregations.at:64: besstandalone -c $abs_builddir/bes.conf -i ./test.bescmd stderr: Width: 20 Name: V Width: 20 Name: V Width: 80 Name: V ================================================================= ==75995==ERROR: AddressSanitizer: heap-buffer-overflow on address 0x603000011544 at pc 0x0001045cb3fe bp 0x7ffeebdcf6d0 sp 0x7ffeebdcee80 READ of size 80 at 0x603000011544 thread T0 #0 0x1045cb3fd in __asan_memcpy (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x4f3fd) Provided dSYM: [/Users/jimg/src/opendap/hyrax_git/build/lib/libdap.25.dylib.dSYM/Contents/Resources/DWARF/libdap.25.dylib] does not match symbol owner 0x7fa57350c1b0 #1 0x108193f39 in libdap::Vector::val2buf(void*, bool) Vector.cc:1212 #2 0x10817d5e7 in libdap::Vector::m_duplicate(libdap::Vector const&) Vector.cc:116 #3 0x108181733 in libdap::Vector::Vector(libdap::Vector const&) Vector.cc:297 #4 0x1081cf385 in libdap::Array::Array(libdap::Array const&) Array.cc:164 #5 0x10f3ed8da in agg_util::ArrayAggregationBase::ArrayAggregationBase(agg_util::ArrayAggregationBase const&) ArrayAggregationBase.cc:56 #6 0x10f3dcf84 in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(agg_util::ArrayAggregateOnOuterDimension const&) ArrayAggregateOnOuterDimension.cc:70 #7 0x10f3dd35c in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(agg_util::ArrayAggregateOnOuterDimension const&) ArrayAggregateOnOuterDimension.cc:71 #8 0x10f3dd89c in agg_util::ArrayAggregateOnOuterDimension::ptr_duplicate() ArrayAggregateOnOuterDimension.cc:85 #9 0x1080800fd in libdap::DDS::add_var(libdap::BaseType*) DDS.cc:607 #10 0x10f33fde8 in ncml_module::AggregationElement::processAggVarJoinNewForArray(libdap::DDS&, libdap::Array const&, agg_util::Dimension const&, std::__1::vector, std::__1::allocator > > const&) AggregationElement.cc:867 #11 0x10f30adb0 in ncml_module::AggregationElement::processJoinNewOnAggVar(libdap::DDS*, std::__1::basic_string, std::__1::allocator > const&, libdap::DDS const&) AggregationElement.cc:801 #12 0x10f2d04d7 in ncml_module::AggregationElement::processJoinNew() AggregationElement.cc:420 #13 0x10f2c6320 in ncml_module::AggregationElement::handleEnd() AggregationElement.cc:217 #14 0x10f714b9f in ncml_module::NCMLParser::processEndNCMLElement(std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:1186 #15 0x10f71c35b in ncml_module::NCMLParser::onEndElementWithNamespace(std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:324 #16 0x10f8808c9 in ncmlSax2EndElementNs(void*, unsigned char const*, unsigned char const*, unsigned char const*) SaxParserWrapper.cc:242 #17 0x7fff597e1d8e in xmlParseEndTag2 (libxml2.2.dylib:x86_64+0x37d8e) #18 0x7fff597e0440 in xmlParseElement (libxml2.2.dylib:x86_64+0x36440) #19 0x7fff597e005a in xmlParseContent (libxml2.2.dylib:x86_64+0x3605a) #20 0x7fff597e03f1 in xmlParseElement (libxml2.2.dylib:x86_64+0x363f1) #21 0x7fff597e2b7a in xmlParseDocument (libxml2.2.dylib:x86_64+0x38b7a) #22 0x10f8719ae in ncml_module::SaxParserWrapper::parse(std::__1::basic_string, std::__1::allocator > const&) SaxParserWrapper.cc:338 #23 0x10f706d0b in ncml_module::NCMLParser::parseInto(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType, BESDapResponse*) NCMLParser.cc:185 #24 0x10f782aae in ncml_module::NCMLRequestHandler::ncml_build_dds(BESDataHandlerInterface&) NCMLRequestHandler.cc:260 #25 0x104067c8f in BESRequestHandlerList::execute_current(BESDataHandlerInterface&) BESRequestHandlerList.cc:273 #26 0x1040660a4 in BESRequestHandlerList::execute_each(BESDataHandlerInterface&) BESRequestHandlerList.cc:167 #27 0x107c2a5dc in BESDDXResponseHandler::execute(BESDataHandlerInterface&) BESDDXResponseHandler.cc:122 #28 0x104483d5a in BESXMLInterface::execute_data_request_plan() BESXMLInterface.cc:285 #29 0x103edbb8d in BESInterface::execute_request(std::__1::basic_string, std::__1::allocator > const&) BESInterface.cc:513 #30 0x103e408d8 in StandAloneClient::executeCommand(std::__1::basic_string, std::__1::allocator > const&, int) StandAloneClient.cc:237 #31 0x103e3e3aa in StandAloneClient::executeCommands(std::__1::basic_ifstream >&, int) StandAloneClient.cc:349 #32 0x103e23e6d in StandAloneApp::run() StandAloneApp.cc:251 #33 0x10414bc24 in BESApp::main(int, char**) BESApp.cc:58 #34 0x103e2712e in main StandAloneApp.cc:345 #35 0x7fff59ad3014 in start (libdyld.dylib:x86_64+0x1014) 0x603000011544 is located 0 bytes to the right of 20-byte region [0x603000011530,0x603000011544) allocated by thread T0 here: #0 0x1045decb2 in wrap__Znam (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x62cb2) #1 0x10817eb3c in libdap::Vector::m_create_cardinal_data_buffer_for_type(unsigned int) Vector.cc:203 #2 0x108193c15 in libdap::Vector::val2buf(void*, bool) Vector.cc:1206 #3 0x10817d5e7 in libdap::Vector::m_duplicate(libdap::Vector const&) Vector.cc:116 #4 0x108181733 in libdap::Vector::Vector(libdap::Vector const&) Vector.cc:297 #5 0x1081cf385 in libdap::Array::Array(libdap::Array const&) Array.cc:164 #6 0x10f3ed116 in agg_util::ArrayAggregationBase::ArrayAggregationBase(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&) ArrayAggregationBase.cc:50 #7 0x10f3dc7d2 in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&, agg_util::Dimension const&) ArrayAggregateOnOuterDimension.cc:59 #8 0x10f3dce34 in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&, agg_util::Dimension const&) ArrayAggregateOnOuterDimension.cc:61 #9 0x10f33d7ae in ncml_module::AggregationElement::processAggVarJoinNewForArray(libdap::DDS&, libdap::Array const&, agg_util::Dimension const&, std::__1::vector, std::__1::allocator > > const&) AggregationElement.cc:855 #10 0x10f30adb0 in ncml_module::AggregationElement::processJoinNewOnAggVar(libdap::DDS*, std::__1::basic_string, std::__1::allocator > const&, libdap::DDS const&) AggregationElement.cc:801 #11 0x10f2d04d7 in ncml_module::AggregationElement::processJoinNew() AggregationElement.cc:420 #12 0x10f2c6320 in ncml_module::AggregationElement::handleEnd() AggregationElement.cc:217 #13 0x10f714b9f in ncml_module::NCMLParser::processEndNCMLElement(std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:1186 #14 0x10f71c35b in ncml_module::NCMLParser::onEndElementWithNamespace(std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:324 #15 0x10f8808c9 in ncmlSax2EndElementNs(void*, unsigned char const*, unsigned char const*, unsigned char const*) SaxParserWrapper.cc:242 #16 0x7fff597e1d8e in xmlParseEndTag2 (libxml2.2.dylib:x86_64+0x37d8e) #17 0x7fff597e0440 in xmlParseElement (libxml2.2.dylib:x86_64+0x36440) #18 0x7fff597e005a in xmlParseContent (libxml2.2.dylib:x86_64+0x3605a) #19 0x7fff597e03f1 in xmlParseElement (libxml2.2.dylib:x86_64+0x363f1) #20 0x7fff597e2b7a in xmlParseDocument (libxml2.2.dylib:x86_64+0x38b7a) #21 0x10f8719ae in ncml_module::SaxParserWrapper::parse(std::__1::basic_string, std::__1::allocator > const&) SaxParserWrapper.cc:338 #22 0x10f706d0b in ncml_module::NCMLParser::parseInto(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType, BESDapResponse*) NCMLParser.cc:185 #23 0x10f782aae in ncml_module::NCMLRequestHandler::ncml_build_dds(BESDataHandlerInterface&) NCMLRequestHandler.cc:260 #24 0x104067c8f in BESRequestHandlerList::execute_current(BESDataHandlerInterface&) BESRequestHandlerList.cc:273 #25 0x1040660a4 in BESRequestHandlerList::execute_each(BESDataHandlerInterface&) BESRequestHandlerList.cc:167 #26 0x107c2a5dc in BESDDXResponseHandler::execute(BESDataHandlerInterface&) BESDDXResponseHandler.cc:122 #27 0x104483d5a in BESXMLInterface::execute_data_request_plan() BESXMLInterface.cc:285 #28 0x103edbb8d in BESInterface::execute_request(std::__1::basic_string, std::__1::allocator > const&) BESInterface.cc:513 #29 0x103e408d8 in StandAloneClient::executeCommand(std::__1::basic_string, std::__1::allocator > const&, int) StandAloneClient.cc:237 SUMMARY: AddressSanitizer: heap-buffer-overflow (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x4f3fd) in __asan_memcpy Shadow bytes around the buggy address: 0x1c0600002250: fa fa 00 00 00 fa fa fa 00 00 04 fa fa fa fd fd 0x1c0600002260: fd fd fa fa fd fd fd fd fa fa fd fd fd fd fa fa 0x1c0600002270: 00 00 00 00 fa fa fd fd fd fa fa fa 00 00 00 fa 0x1c0600002280: fa fa fd fd fd fa fa fa 00 00 00 fa fa fa fd fd 0x1c0600002290: fd fa fa fa 00 00 00 fa fa fa fd fd fd fa fa fa =>0x1c06000022a0: 00 00 00 fa fa fa 00 00[04]fa fa fa 00 00 04 fa 0x1c06000022b0: fa fa 00 00 00 fa fa fa 00 00 00 fa fa fa 00 00 0x1c06000022c0: 04 fa fa fa 00 00 00 00 fa fa fa fa fa fa fa fa 0x1c06000022d0: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c06000022e0: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c06000022f0: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa Shadow byte legend (one shadow byte represents 8 application bytes): Addressable: 00 Partially addressable: 01 02 03 04 05 06 07 Heap left redzone: fa Freed heap region: fd Stack left redzone: f1 Stack mid redzone: f2 Stack right redzone: f3 Stack after return: f5 Stack use after scope: f8 Global redzone: f9 Global init order: f6 Poisoned by user: f7 Container overflow: fc Array cookie: ac Intra object redzone: bb ASan internal: fe Left alloca redzone: ca Right alloca redzone: cb ==75995==ABORTING /Users/jimg/src/opendap/hyrax_git/bes/modules/ncml_module/tests/testsuite.dir/at-groups/389/test-source: line 44: 75995 Abort trap: 6 besstandalone -c $abs_builddir/bes.conf -i ./test.bescmd stdout: ./aggregations.at:64: exit code was 134, expected 0 389. aggregations.at:64: 389. Comparing ddx response for agg/joinNew_simple_2.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_simple_2.ncml (aggregations.at:64): FAILED (aggregations.at:64) # -*- compilation -*- 390. aggregations.at:64: testing Comparing dods response for agg/joinNew_simple_2.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_simple_2.ncml ... ./aggregations.at:64: besstandalone -c $abs_builddir/bes.conf -i ./test.bescmd stderr: Width: 20 Name: V Width: 20 Name: V Width: 80 Name: V ================================================================= ==76036==ERROR: AddressSanitizer: heap-buffer-overflow on address 0x603000011544 at pc 0x00010ec063fe bp 0x7ffee17939b0 sp 0x7ffee1793160 READ of size 80 at 0x603000011544 thread T0 #0 0x10ec063fd in __asan_memcpy (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x4f3fd) Provided dSYM: [/Users/jimg/src/opendap/hyrax_git/build/lib/libdap.25.dylib.dSYM/Contents/Resources/DWARF/libdap.25.dylib] does not match symbol owner 0x7feb50c012f0 #1 0x1127dbf39 in libdap::Vector::val2buf(void*, bool) Vector.cc:1212 #2 0x1127c55e7 in libdap::Vector::m_duplicate(libdap::Vector const&) Vector.cc:116 #3 0x1127c9733 in libdap::Vector::Vector(libdap::Vector const&) Vector.cc:297 #4 0x112817385 in libdap::Array::Array(libdap::Array const&) Array.cc:164 #5 0x119a0d8da in agg_util::ArrayAggregationBase::ArrayAggregationBase(agg_util::ArrayAggregationBase const&) ArrayAggregationBase.cc:56 #6 0x1199fcf84 in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(agg_util::ArrayAggregateOnOuterDimension const&) ArrayAggregateOnOuterDimension.cc:70 #7 0x1199fd35c in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(agg_util::ArrayAggregateOnOuterDimension const&) ArrayAggregateOnOuterDimension.cc:71 #8 0x1199fd89c in agg_util::ArrayAggregateOnOuterDimension::ptr_duplicate() ArrayAggregateOnOuterDimension.cc:85 #9 0x1126c80fd in libdap::DDS::add_var(libdap::BaseType*) DDS.cc:607 #10 0x11995fde8 in ncml_module::AggregationElement::processAggVarJoinNewForArray(libdap::DDS&, libdap::Array const&, agg_util::Dimension const&, std::__1::vector, std::__1::allocator > > const&) AggregationElement.cc:867 #11 0x11992adb0 in ncml_module::AggregationElement::processJoinNewOnAggVar(libdap::DDS*, std::__1::basic_string, std::__1::allocator > const&, libdap::DDS const&) AggregationElement.cc:801 #12 0x1198f04d7 in ncml_module::AggregationElement::processJoinNew() AggregationElement.cc:420 #13 0x1198e6320 in ncml_module::AggregationElement::handleEnd() AggregationElement.cc:217 #14 0x119d34b9f in ncml_module::NCMLParser::processEndNCMLElement(std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:1186 #15 0x119d3c35b in ncml_module::NCMLParser::onEndElementWithNamespace(std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:324 #16 0x119ea08c9 in ncmlSax2EndElementNs(void*, unsigned char const*, unsigned char const*, unsigned char const*) SaxParserWrapper.cc:242 #17 0x7fff597e1d8e in xmlParseEndTag2 (libxml2.2.dylib:x86_64+0x37d8e) #18 0x7fff597e0440 in xmlParseElement (libxml2.2.dylib:x86_64+0x36440) #19 0x7fff597e005a in xmlParseContent (libxml2.2.dylib:x86_64+0x3605a) #20 0x7fff597e03f1 in xmlParseElement (libxml2.2.dylib:x86_64+0x363f1) #21 0x7fff597e2b7a in xmlParseDocument (libxml2.2.dylib:x86_64+0x38b7a) #22 0x119e919ae in ncml_module::SaxParserWrapper::parse(std::__1::basic_string, std::__1::allocator > const&) SaxParserWrapper.cc:338 #23 0x119d26d0b in ncml_module::NCMLParser::parseInto(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType, BESDapResponse*) NCMLParser.cc:185 #24 0x119da8346 in ncml_module::NCMLRequestHandler::ncml_build_data(BESDataHandlerInterface&) NCMLRequestHandler.cc:297 #25 0x10e6a5c8f in BESRequestHandlerList::execute_current(BESDataHandlerInterface&) BESRequestHandlerList.cc:273 #26 0x10e6a40a4 in BESRequestHandlerList::execute_each(BESDataHandlerInterface&) BESRequestHandlerList.cc:167 #27 0x11223288c in BESDataResponseHandler::execute(BESDataHandlerInterface&) BESDataResponseHandler.cc:148 #28 0x10eac0d5a in BESXMLInterface::execute_data_request_plan() BESXMLInterface.cc:285 #29 0x10e519b8d in BESInterface::execute_request(std::__1::basic_string, std::__1::allocator > const&) BESInterface.cc:513 #30 0x10e47c8d8 in StandAloneClient::executeCommand(std::__1::basic_string, std::__1::allocator > const&, int) StandAloneClient.cc:237 #31 0x10e47a3aa in StandAloneClient::executeCommands(std::__1::basic_ifstream >&, int) StandAloneClient.cc:349 #32 0x10e45fe6d in StandAloneApp::run() StandAloneApp.cc:251 #33 0x10e789c24 in BESApp::main(int, char**) BESApp.cc:58 #34 0x10e46312e in main StandAloneApp.cc:345 #35 0x7fff59ad3014 in start (libdyld.dylib:x86_64+0x1014) 0x603000011544 is located 0 bytes to the right of 20-byte region [0x603000011530,0x603000011544) allocated by thread T0 here: #0 0x10ec19cb2 in wrap__Znam (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x62cb2) #1 0x1127c6b3c in libdap::Vector::m_create_cardinal_data_buffer_for_type(unsigned int) Vector.cc:203 #2 0x1127dbc15 in libdap::Vector::val2buf(void*, bool) Vector.cc:1206 #3 0x1127c55e7 in libdap::Vector::m_duplicate(libdap::Vector const&) Vector.cc:116 #4 0x1127c9733 in libdap::Vector::Vector(libdap::Vector const&) Vector.cc:297 #5 0x112817385 in libdap::Array::Array(libdap::Array const&) Array.cc:164 #6 0x119a0d116 in agg_util::ArrayAggregationBase::ArrayAggregationBase(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&) ArrayAggregationBase.cc:50 #7 0x1199fc7d2 in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&, agg_util::Dimension const&) ArrayAggregateOnOuterDimension.cc:59 #8 0x1199fce34 in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&, agg_util::Dimension const&) ArrayAggregateOnOuterDimension.cc:61 #9 0x11995d7ae in ncml_module::AggregationElement::processAggVarJoinNewForArray(libdap::DDS&, libdap::Array const&, agg_util::Dimension const&, std::__1::vector, std::__1::allocator > > const&) AggregationElement.cc:855 #10 0x11992adb0 in ncml_module::AggregationElement::processJoinNewOnAggVar(libdap::DDS*, std::__1::basic_string, std::__1::allocator > const&, libdap::DDS const&) AggregationElement.cc:801 #11 0x1198f04d7 in ncml_module::AggregationElement::processJoinNew() AggregationElement.cc:420 #12 0x1198e6320 in ncml_module::AggregationElement::handleEnd() AggregationElement.cc:217 #13 0x119d34b9f in ncml_module::NCMLParser::processEndNCMLElement(std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:1186 #14 0x119d3c35b in ncml_module::NCMLParser::onEndElementWithNamespace(std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:324 #15 0x119ea08c9 in ncmlSax2EndElementNs(void*, unsigned char const*, unsigned char const*, unsigned char const*) SaxParserWrapper.cc:242 #16 0x7fff597e1d8e in xmlParseEndTag2 (libxml2.2.dylib:x86_64+0x37d8e) #17 0x7fff597e0440 in xmlParseElement (libxml2.2.dylib:x86_64+0x36440) #18 0x7fff597e005a in xmlParseContent (libxml2.2.dylib:x86_64+0x3605a) #19 0x7fff597e03f1 in xmlParseElement (libxml2.2.dylib:x86_64+0x363f1) #20 0x7fff597e2b7a in xmlParseDocument (libxml2.2.dylib:x86_64+0x38b7a) #21 0x119e919ae in ncml_module::SaxParserWrapper::parse(std::__1::basic_string, std::__1::allocator > const&) SaxParserWrapper.cc:338 #22 0x119d26d0b in ncml_module::NCMLParser::parseInto(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType, BESDapResponse*) NCMLParser.cc:185 #23 0x119da8346 in ncml_module::NCMLRequestHandler::ncml_build_data(BESDataHandlerInterface&) NCMLRequestHandler.cc:297 #24 0x10e6a5c8f in BESRequestHandlerList::execute_current(BESDataHandlerInterface&) BESRequestHandlerList.cc:273 #25 0x10e6a40a4 in BESRequestHandlerList::execute_each(BESDataHandlerInterface&) BESRequestHandlerList.cc:167 #26 0x11223288c in BESDataResponseHandler::execute(BESDataHandlerInterface&) BESDataResponseHandler.cc:148 #27 0x10eac0d5a in BESXMLInterface::execute_data_request_plan() BESXMLInterface.cc:285 #28 0x10e519b8d in BESInterface::execute_request(std::__1::basic_string, std::__1::allocator > const&) BESInterface.cc:513 #29 0x10e47c8d8 in StandAloneClient::executeCommand(std::__1::basic_string, std::__1::allocator > const&, int) StandAloneClient.cc:237 SUMMARY: AddressSanitizer: heap-buffer-overflow (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x4f3fd) in __asan_memcpy Shadow bytes around the buggy address: 0x1c0600002250: fa fa 00 00 00 fa fa fa 00 00 04 fa fa fa fd fd 0x1c0600002260: fd fd fa fa fd fd fd fd fa fa fd fd fd fd fa fa 0x1c0600002270: 00 00 00 00 fa fa fd fd fd fa fa fa 00 00 00 fa 0x1c0600002280: fa fa fd fd fd fa fa fa 00 00 00 fa fa fa fd fd 0x1c0600002290: fd fa fa fa 00 00 00 fa fa fa fd fd fd fa fa fa =>0x1c06000022a0: 00 00 00 fa fa fa 00 00[04]fa fa fa 00 00 04 fa 0x1c06000022b0: fa fa 00 00 00 fa fa fa 00 00 00 fa fa fa 00 00 0x1c06000022c0: 04 fa fa fa 00 00 00 00 fa fa fa fa fa fa fa fa 0x1c06000022d0: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c06000022e0: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c06000022f0: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa Shadow byte legend (one shadow byte represents 8 application bytes): Addressable: 00 Partially addressable: 01 02 03 04 05 06 07 Heap left redzone: fa Freed heap region: fd Stack left redzone: f1 Stack mid redzone: f2 Stack right redzone: f3 Stack after return: f5 Stack use after scope: f8 Global redzone: f9 Global init order: f6 Poisoned by user: f7 Container overflow: fc Array cookie: ac Intra object redzone: bb ASan internal: fe Left alloca redzone: ca Right alloca redzone: cb ==76036==ABORTING /Users/jimg/src/opendap/hyrax_git/bes/modules/ncml_module/tests/testsuite.dir/at-groups/390/test-source: line 44: 76036 Abort trap: 6 besstandalone -c $abs_builddir/bes.conf -i ./test.bescmd stdout: ./aggregations.at:64: exit code was 134, expected 0 390. aggregations.at:64: 390. Comparing dods response for agg/joinNew_simple_2.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_simple_2.ncml (aggregations.at:64): FAILED (aggregations.at:64) # -*- compilation -*- 391. aggregations.at:65: testing Comparing dods response for agg/joinNew_simple_2.ncml to getdap (ascii) baseline ${abs_srcdir}/baselines/agg/joinNew_simple_2.ncml ... ./aggregations.at:65: besstandalone -c $abs_builddir/bes.conf -i ./test.bescmd stderr: Width: 20 Name: V Width: 20 Name: V Width: 80 Name: V ================================================================= ==76039==ERROR: AddressSanitizer: heap-buffer-overflow on address 0x603000011544 at pc 0x000100f193fe bp 0x7ffeef5139b0 sp 0x7ffeef513160 READ of size 80 at 0x603000011544 thread T0 #0 0x100f193fd in __asan_memcpy (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x4f3fd) Provided dSYM: [/Users/jimg/src/opendap/hyrax_git/build/lib/libdap.25.dylib.dSYM/Contents/Resources/DWARF/libdap.25.dylib] does not match symbol owner 0x7fcb1b706470 #1 0x104adbf39 in libdap::Vector::val2buf(void*, bool) Vector.cc:1212 #2 0x104ac55e7 in libdap::Vector::m_duplicate(libdap::Vector const&) Vector.cc:116 #3 0x104ac9733 in libdap::Vector::Vector(libdap::Vector const&) Vector.cc:297 #4 0x104b17385 in libdap::Array::Array(libdap::Array const&) Array.cc:164 #5 0x10bb1c8da in agg_util::ArrayAggregationBase::ArrayAggregationBase(agg_util::ArrayAggregationBase const&) ArrayAggregationBase.cc:56 #6 0x10bb0bf84 in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(agg_util::ArrayAggregateOnOuterDimension const&) ArrayAggregateOnOuterDimension.cc:70 #7 0x10bb0c35c in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(agg_util::ArrayAggregateOnOuterDimension const&) ArrayAggregateOnOuterDimension.cc:71 #8 0x10bb0c89c in agg_util::ArrayAggregateOnOuterDimension::ptr_duplicate() ArrayAggregateOnOuterDimension.cc:85 #9 0x1049c80fd in libdap::DDS::add_var(libdap::BaseType*) DDS.cc:607 #10 0x10ba6ede8 in ncml_module::AggregationElement::processAggVarJoinNewForArray(libdap::DDS&, libdap::Array const&, agg_util::Dimension const&, std::__1::vector, std::__1::allocator > > const&) AggregationElement.cc:867 #11 0x10ba39db0 in ncml_module::AggregationElement::processJoinNewOnAggVar(libdap::DDS*, std::__1::basic_string, std::__1::allocator > const&, libdap::DDS const&) AggregationElement.cc:801 #12 0x10b9ff4d7 in ncml_module::AggregationElement::processJoinNew() AggregationElement.cc:420 #13 0x10b9f5320 in ncml_module::AggregationElement::handleEnd() AggregationElement.cc:217 #14 0x10be43b9f in ncml_module::NCMLParser::processEndNCMLElement(std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:1186 #15 0x10be4b35b in ncml_module::NCMLParser::onEndElementWithNamespace(std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:324 #16 0x10bfaf8c9 in ncmlSax2EndElementNs(void*, unsigned char const*, unsigned char const*, unsigned char const*) SaxParserWrapper.cc:242 #17 0x7fff597e1d8e in xmlParseEndTag2 (libxml2.2.dylib:x86_64+0x37d8e) #18 0x7fff597e0440 in xmlParseElement (libxml2.2.dylib:x86_64+0x36440) #19 0x7fff597e005a in xmlParseContent (libxml2.2.dylib:x86_64+0x3605a) #20 0x7fff597e03f1 in xmlParseElement (libxml2.2.dylib:x86_64+0x363f1) #21 0x7fff597e2b7a in xmlParseDocument (libxml2.2.dylib:x86_64+0x38b7a) #22 0x10bfa09ae in ncml_module::SaxParserWrapper::parse(std::__1::basic_string, std::__1::allocator > const&) SaxParserWrapper.cc:338 #23 0x10be35d0b in ncml_module::NCMLParser::parseInto(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType, BESDapResponse*) NCMLParser.cc:185 #24 0x10beb7346 in ncml_module::NCMLRequestHandler::ncml_build_data(BESDataHandlerInterface&) NCMLRequestHandler.cc:297 #25 0x100921c8f in BESRequestHandlerList::execute_current(BESDataHandlerInterface&) BESRequestHandlerList.cc:273 #26 0x1009200a4 in BESRequestHandlerList::execute_each(BESDataHandlerInterface&) BESRequestHandlerList.cc:167 #27 0x10453288c in BESDataResponseHandler::execute(BESDataHandlerInterface&) BESDataResponseHandler.cc:148 #28 0x100dd5d5a in BESXMLInterface::execute_data_request_plan() BESXMLInterface.cc:285 #29 0x100795b8d in BESInterface::execute_request(std::__1::basic_string, std::__1::allocator > const&) BESInterface.cc:513 #30 0x1006fc8d8 in StandAloneClient::executeCommand(std::__1::basic_string, std::__1::allocator > const&, int) StandAloneClient.cc:237 #31 0x1006fa3aa in StandAloneClient::executeCommands(std::__1::basic_ifstream >&, int) StandAloneClient.cc:349 #32 0x1006dfe6d in StandAloneApp::run() StandAloneApp.cc:251 #33 0x100a05c24 in BESApp::main(int, char**) BESApp.cc:58 #34 0x1006e312e in main StandAloneApp.cc:345 #35 0x7fff59ad3014 in start (libdyld.dylib:x86_64+0x1014) 0x603000011544 is located 0 bytes to the right of 20-byte region [0x603000011530,0x603000011544) allocated by thread T0 here: #0 0x100f2ccb2 in wrap__Znam (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x62cb2) #1 0x104ac6b3c in libdap::Vector::m_create_cardinal_data_buffer_for_type(unsigned int) Vector.cc:203 #2 0x104adbc15 in libdap::Vector::val2buf(void*, bool) Vector.cc:1206 #3 0x104ac55e7 in libdap::Vector::m_duplicate(libdap::Vector const&) Vector.cc:116 #4 0x104ac9733 in libdap::Vector::Vector(libdap::Vector const&) Vector.cc:297 #5 0x104b17385 in libdap::Array::Array(libdap::Array const&) Array.cc:164 #6 0x10bb1c116 in agg_util::ArrayAggregationBase::ArrayAggregationBase(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&) ArrayAggregationBase.cc:50 #7 0x10bb0b7d2 in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&, agg_util::Dimension const&) ArrayAggregateOnOuterDimension.cc:59 #8 0x10bb0be34 in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&, agg_util::Dimension const&) ArrayAggregateOnOuterDimension.cc:61 #9 0x10ba6c7ae in ncml_module::AggregationElement::processAggVarJoinNewForArray(libdap::DDS&, libdap::Array const&, agg_util::Dimension const&, std::__1::vector, std::__1::allocator > > const&) AggregationElement.cc:855 #10 0x10ba39db0 in ncml_module::AggregationElement::processJoinNewOnAggVar(libdap::DDS*, std::__1::basic_string, std::__1::allocator > const&, libdap::DDS const&) AggregationElement.cc:801 #11 0x10b9ff4d7 in ncml_module::AggregationElement::processJoinNew() AggregationElement.cc:420 #12 0x10b9f5320 in ncml_module::AggregationElement::handleEnd() AggregationElement.cc:217 #13 0x10be43b9f in ncml_module::NCMLParser::processEndNCMLElement(std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:1186 #14 0x10be4b35b in ncml_module::NCMLParser::onEndElementWithNamespace(std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:324 #15 0x10bfaf8c9 in ncmlSax2EndElementNs(void*, unsigned char const*, unsigned char const*, unsigned char const*) SaxParserWrapper.cc:242 #16 0x7fff597e1d8e in xmlParseEndTag2 (libxml2.2.dylib:x86_64+0x37d8e) #17 0x7fff597e0440 in xmlParseElement (libxml2.2.dylib:x86_64+0x36440) #18 0x7fff597e005a in xmlParseContent (libxml2.2.dylib:x86_64+0x3605a) #19 0x7fff597e03f1 in xmlParseElement (libxml2.2.dylib:x86_64+0x363f1) #20 0x7fff597e2b7a in xmlParseDocument (libxml2.2.dylib:x86_64+0x38b7a) #21 0x10bfa09ae in ncml_module::SaxParserWrapper::parse(std::__1::basic_string, std::__1::allocator > const&) SaxParserWrapper.cc:338 #22 0x10be35d0b in ncml_module::NCMLParser::parseInto(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType, BESDapResponse*) NCMLParser.cc:185 #23 0x10beb7346 in ncml_module::NCMLRequestHandler::ncml_build_data(BESDataHandlerInterface&) NCMLRequestHandler.cc:297 #24 0x100921c8f in BESRequestHandlerList::execute_current(BESDataHandlerInterface&) BESRequestHandlerList.cc:273 #25 0x1009200a4 in BESRequestHandlerList::execute_each(BESDataHandlerInterface&) BESRequestHandlerList.cc:167 #26 0x10453288c in BESDataResponseHandler::execute(BESDataHandlerInterface&) BESDataResponseHandler.cc:148 #27 0x100dd5d5a in BESXMLInterface::execute_data_request_plan() BESXMLInterface.cc:285 #28 0x100795b8d in BESInterface::execute_request(std::__1::basic_string, std::__1::allocator > const&) BESInterface.cc:513 #29 0x1006fc8d8 in StandAloneClient::executeCommand(std::__1::basic_string, std::__1::allocator > const&, int) StandAloneClient.cc:237 SUMMARY: AddressSanitizer: heap-buffer-overflow (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x4f3fd) in __asan_memcpy Shadow bytes around the buggy address: 0x1c0600002250: fa fa 00 00 00 fa fa fa 00 00 04 fa fa fa fd fd 0x1c0600002260: fd fd fa fa fd fd fd fd fa fa fd fd fd fd fa fa 0x1c0600002270: 00 00 00 00 fa fa fd fd fd fa fa fa 00 00 00 fa 0x1c0600002280: fa fa fd fd fd fa fa fa 00 00 00 fa fa fa fd fd 0x1c0600002290: fd fa fa fa 00 00 00 fa fa fa fd fd fd fa fa fa =>0x1c06000022a0: 00 00 00 fa fa fa 00 00[04]fa fa fa 00 00 04 fa 0x1c06000022b0: fa fa 00 00 00 fa fa fa 00 00 00 fa fa fa 00 00 0x1c06000022c0: 04 fa fa fa 00 00 00 00 fa fa fa fa fa fa fa fa 0x1c06000022d0: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c06000022e0: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c06000022f0: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa Shadow byte legend (one shadow byte represents 8 application bytes): Addressable: 00 Partially addressable: 01 02 03 04 05 06 07 Heap left redzone: fa Freed heap region: fd Stack left redzone: f1 Stack mid redzone: f2 Stack right redzone: f3 Stack after return: f5 Stack use after scope: f8 Global redzone: f9 Global init order: f6 Poisoned by user: f7 Container overflow: fc Array cookie: ac Intra object redzone: bb ASan internal: fe Left alloca redzone: ca Right alloca redzone: cb ==76039==ABORTING /Users/jimg/src/opendap/hyrax_git/bes/modules/ncml_module/tests/testsuite.dir/at-groups/391/test-source: line 55: 76039 Abort trap: 6 besstandalone -c $abs_builddir/bes.conf -i ./test.bescmd stdout: ./aggregations.at:65: exit code was 134, expected 0 391. aggregations.at:65: 391. Comparing dods response for agg/joinNew_simple_2.ncml to getdap (ascii) baseline ${abs_srcdir}/baselines/agg/joinNew_simple_2.ncml (aggregations.at:65): FAILED (aggregations.at:65) # -*- compilation -*- 392. aggregations.at:68: testing Comparing das response for agg/joinNew_simple_3.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_simple_3.ncml ... ./aggregations.at:68: besstandalone -c $abs_builddir/bes.conf -i ./test.bescmd stderr: Width: 20 Name: V Width: 20 Name: V Width: 40 Name: V ================================================================= ==76086==ERROR: AddressSanitizer: heap-buffer-overflow on address 0x603000011334 at pc 0x0001101d93fe bp 0x7ffee01b8810 sp 0x7ffee01b7fc0 READ of size 40 at 0x603000011334 thread T0 #0 0x1101d93fd in __asan_memcpy (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x4f3fd) Provided dSYM: [/Users/jimg/src/opendap/hyrax_git/build/lib/libdap.25.dylib.dSYM/Contents/Resources/DWARF/libdap.25.dylib] does not match symbol owner 0x7f85b3f05b80 #1 0x11448bf39 in libdap::Vector::val2buf(void*, bool) Vector.cc:1212 #2 0x1144755e7 in libdap::Vector::m_duplicate(libdap::Vector const&) Vector.cc:116 #3 0x114479733 in libdap::Vector::Vector(libdap::Vector const&) Vector.cc:297 #4 0x1144c7385 in libdap::Array::Array(libdap::Array const&) Array.cc:164 #5 0x11aeca8da in agg_util::ArrayAggregationBase::ArrayAggregationBase(agg_util::ArrayAggregationBase const&) ArrayAggregationBase.cc:56 #6 0x11aeb9f84 in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(agg_util::ArrayAggregateOnOuterDimension const&) ArrayAggregateOnOuterDimension.cc:70 #7 0x11aeba35c in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(agg_util::ArrayAggregateOnOuterDimension const&) ArrayAggregateOnOuterDimension.cc:71 #8 0x11aeba89c in agg_util::ArrayAggregateOnOuterDimension::ptr_duplicate() ArrayAggregateOnOuterDimension.cc:85 #9 0x1143780fd in libdap::DDS::add_var(libdap::BaseType*) DDS.cc:607 #10 0x11ae1cde8 in ncml_module::AggregationElement::processAggVarJoinNewForArray(libdap::DDS&, libdap::Array const&, agg_util::Dimension const&, std::__1::vector, std::__1::allocator > > const&) AggregationElement.cc:867 #11 0x11ade7db0 in ncml_module::AggregationElement::processJoinNewOnAggVar(libdap::DDS*, std::__1::basic_string, std::__1::allocator > const&, libdap::DDS const&) AggregationElement.cc:801 #12 0x11adad4d7 in ncml_module::AggregationElement::processJoinNew() AggregationElement.cc:420 #13 0x11ada3320 in ncml_module::AggregationElement::handleEnd() AggregationElement.cc:217 #14 0x11b1f1b9f in ncml_module::NCMLParser::processEndNCMLElement(std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:1186 #15 0x11b1f935b in ncml_module::NCMLParser::onEndElementWithNamespace(std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:324 #16 0x11b35d8c9 in ncmlSax2EndElementNs(void*, unsigned char const*, unsigned char const*, unsigned char const*) SaxParserWrapper.cc:242 #17 0x7fff597e1d8e in xmlParseEndTag2 (libxml2.2.dylib:x86_64+0x37d8e) #18 0x7fff597e0440 in xmlParseElement (libxml2.2.dylib:x86_64+0x36440) #19 0x7fff597e005a in xmlParseContent (libxml2.2.dylib:x86_64+0x3605a) #20 0x7fff597e03f1 in xmlParseElement (libxml2.2.dylib:x86_64+0x363f1) #21 0x7fff597e2b7a in xmlParseDocument (libxml2.2.dylib:x86_64+0x38b7a) #22 0x11b34e9ae in ncml_module::SaxParserWrapper::parse(std::__1::basic_string, std::__1::allocator > const&) SaxParserWrapper.cc:338 #23 0x11b1e3d0b in ncml_module::NCMLParser::parseInto(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType, BESDapResponse*) NCMLParser.cc:185 #24 0x11b1dd1e7 in ncml_module::NCMLParser::parse(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType) NCMLParser.cc:155 #25 0x11b257841 in ncml_module::NCMLRequestHandler::ncml_build_das(BESDataHandlerInterface&) NCMLRequestHandler.cc:172 #26 0x10fc7bc8f in BESRequestHandlerList::execute_current(BESDataHandlerInterface&) BESRequestHandlerList.cc:273 #27 0x10fc7a0a4 in BESRequestHandlerList::execute_each(BESDataHandlerInterface&) BESRequestHandlerList.cc:167 #28 0x113821ff0 in BESDASResponseHandler::execute(BESDataHandlerInterface&) BESDASResponseHandler.cc:95 #29 0x110092d5a in BESXMLInterface::execute_data_request_plan() BESXMLInterface.cc:285 #30 0x10faefb8d in BESInterface::execute_request(std::__1::basic_string, std::__1::allocator > const&) BESInterface.cc:513 #31 0x10fa578d8 in StandAloneClient::executeCommand(std::__1::basic_string, std::__1::allocator > const&, int) StandAloneClient.cc:237 #32 0x10fa553aa in StandAloneClient::executeCommands(std::__1::basic_ifstream >&, int) StandAloneClient.cc:349 #33 0x10fa3ae6d in StandAloneApp::run() StandAloneApp.cc:251 #34 0x10fd5fc24 in BESApp::main(int, char**) BESApp.cc:58 #35 0x10fa3e12e in main StandAloneApp.cc:345 #36 0x7fff59ad3014 in start (libdyld.dylib:x86_64+0x1014) 0x603000011334 is located 0 bytes to the right of 20-byte region [0x603000011320,0x603000011334) allocated by thread T0 here: #0 0x1101eccb2 in wrap__Znam (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x62cb2) #1 0x114476b3c in libdap::Vector::m_create_cardinal_data_buffer_for_type(unsigned int) Vector.cc:203 #2 0x11448bc15 in libdap::Vector::val2buf(void*, bool) Vector.cc:1206 #3 0x1144755e7 in libdap::Vector::m_duplicate(libdap::Vector const&) Vector.cc:116 #4 0x114479733 in libdap::Vector::Vector(libdap::Vector const&) Vector.cc:297 #5 0x1144c7385 in libdap::Array::Array(libdap::Array const&) Array.cc:164 #6 0x11aeca116 in agg_util::ArrayAggregationBase::ArrayAggregationBase(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&) ArrayAggregationBase.cc:50 #7 0x11aeb97d2 in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&, agg_util::Dimension const&) ArrayAggregateOnOuterDimension.cc:59 #8 0x11aeb9e34 in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&, agg_util::Dimension const&) ArrayAggregateOnOuterDimension.cc:61 #9 0x11ae1a7ae in ncml_module::AggregationElement::processAggVarJoinNewForArray(libdap::DDS&, libdap::Array const&, agg_util::Dimension const&, std::__1::vector, std::__1::allocator > > const&) AggregationElement.cc:855 #10 0x11ade7db0 in ncml_module::AggregationElement::processJoinNewOnAggVar(libdap::DDS*, std::__1::basic_string, std::__1::allocator > const&, libdap::DDS const&) AggregationElement.cc:801 #11 0x11adad4d7 in ncml_module::AggregationElement::processJoinNew() AggregationElement.cc:420 #12 0x11ada3320 in ncml_module::AggregationElement::handleEnd() AggregationElement.cc:217 #13 0x11b1f1b9f in ncml_module::NCMLParser::processEndNCMLElement(std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:1186 #14 0x11b1f935b in ncml_module::NCMLParser::onEndElementWithNamespace(std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:324 #15 0x11b35d8c9 in ncmlSax2EndElementNs(void*, unsigned char const*, unsigned char const*, unsigned char const*) SaxParserWrapper.cc:242 #16 0x7fff597e1d8e in xmlParseEndTag2 (libxml2.2.dylib:x86_64+0x37d8e) #17 0x7fff597e0440 in xmlParseElement (libxml2.2.dylib:x86_64+0x36440) #18 0x7fff597e005a in xmlParseContent (libxml2.2.dylib:x86_64+0x3605a) #19 0x7fff597e03f1 in xmlParseElement (libxml2.2.dylib:x86_64+0x363f1) #20 0x7fff597e2b7a in xmlParseDocument (libxml2.2.dylib:x86_64+0x38b7a) #21 0x11b34e9ae in ncml_module::SaxParserWrapper::parse(std::__1::basic_string, std::__1::allocator > const&) SaxParserWrapper.cc:338 #22 0x11b1e3d0b in ncml_module::NCMLParser::parseInto(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType, BESDapResponse*) NCMLParser.cc:185 #23 0x11b1dd1e7 in ncml_module::NCMLParser::parse(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType) NCMLParser.cc:155 #24 0x11b257841 in ncml_module::NCMLRequestHandler::ncml_build_das(BESDataHandlerInterface&) NCMLRequestHandler.cc:172 #25 0x10fc7bc8f in BESRequestHandlerList::execute_current(BESDataHandlerInterface&) BESRequestHandlerList.cc:273 #26 0x10fc7a0a4 in BESRequestHandlerList::execute_each(BESDataHandlerInterface&) BESRequestHandlerList.cc:167 #27 0x113821ff0 in BESDASResponseHandler::execute(BESDataHandlerInterface&) BESDASResponseHandler.cc:95 #28 0x110092d5a in BESXMLInterface::execute_data_request_plan() BESXMLInterface.cc:285 #29 0x10faefb8d in BESInterface::execute_request(std::__1::basic_string, std::__1::allocator > const&) BESInterface.cc:513 SUMMARY: AddressSanitizer: heap-buffer-overflow (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x4f3fd) in __asan_memcpy Shadow bytes around the buggy address: 0x1c0600002210: fd fd fd fd fa fa fd fd fd fd fa fa fd fd fd fa 0x1c0600002220: fa fa fd fd fd fa fa fa 00 00 00 fa fa fa 00 00 0x1c0600002230: 00 fa fa fa fd fd fd fd fa fa fd fd fd fd fa fa 0x1c0600002240: fd fd fd fd fa fa 00 00 00 fc fa fa fd fd fd fa 0x1c0600002250: fa fa 00 00 00 fa fa fa fd fd fd fa fa fa 00 00 =>0x1c0600002260: 00 fa fa fa 00 00[04]fa fa fa 00 00 04 fa fa fa 0x1c0600002270: 00 00 00 fa fa fa 00 00 00 fa fa fa 00 00 04 fa 0x1c0600002280: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c0600002290: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c06000022a0: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c06000022b0: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa Shadow byte legend (one shadow byte represents 8 application bytes): Addressable: 00 Partially addressable: 01 02 03 04 05 06 07 Heap left redzone: fa Freed heap region: fd Stack left redzone: f1 Stack mid redzone: f2 Stack right redzone: f3 Stack after return: f5 Stack use after scope: f8 Global redzone: f9 Global init order: f6 Poisoned by user: f7 Container overflow: fc Array cookie: ac Intra object redzone: bb ASan internal: fe Left alloca redzone: ca Right alloca redzone: cb ==76086==ABORTING /Users/jimg/src/opendap/hyrax_git/bes/modules/ncml_module/tests/testsuite.dir/at-groups/392/test-source: line 44: 76086 Abort trap: 6 besstandalone -c $abs_builddir/bes.conf -i ./test.bescmd stdout: ./aggregations.at:68: exit code was 134, expected 0 392. aggregations.at:68: 392. Comparing das response for agg/joinNew_simple_3.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_simple_3.ncml (aggregations.at:68): FAILED (aggregations.at:68) # -*- compilation -*- 393. aggregations.at:68: testing Comparing dds response for agg/joinNew_simple_3.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_simple_3.ncml ... ./aggregations.at:68: besstandalone -c $abs_builddir/bes.conf -i ./test.bescmd stderr: Width: 20 Name: V Width: 20 Name: V Width: 40 Name: V ================================================================= ==76116==ERROR: AddressSanitizer: heap-buffer-overflow on address 0x603000011334 at pc 0x00010213e3fe bp 0x7ffeee250b30 sp 0x7ffeee2502e0 READ of size 40 at 0x603000011334 thread T0 #0 0x10213e3fd in __asan_memcpy (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x4f3fd) Provided dSYM: [/Users/jimg/src/opendap/hyrax_git/build/lib/libdap.25.dylib.dSYM/Contents/Resources/DWARF/libdap.25.dylib] does not match symbol owner 0x7f91a1106380 #1 0x105cf0f39 in libdap::Vector::val2buf(void*, bool) Vector.cc:1212 #2 0x105cda5e7 in libdap::Vector::m_duplicate(libdap::Vector const&) Vector.cc:116 #3 0x105cde733 in libdap::Vector::Vector(libdap::Vector const&) Vector.cc:297 #4 0x105d2c385 in libdap::Array::Array(libdap::Array const&) Array.cc:164 #5 0x10d03a8da in agg_util::ArrayAggregationBase::ArrayAggregationBase(agg_util::ArrayAggregationBase const&) ArrayAggregationBase.cc:56 #6 0x10d029f84 in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(agg_util::ArrayAggregateOnOuterDimension const&) ArrayAggregateOnOuterDimension.cc:70 #7 0x10d02a35c in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(agg_util::ArrayAggregateOnOuterDimension const&) ArrayAggregateOnOuterDimension.cc:71 #8 0x10d02a89c in agg_util::ArrayAggregateOnOuterDimension::ptr_duplicate() ArrayAggregateOnOuterDimension.cc:85 #9 0x105bdd0fd in libdap::DDS::add_var(libdap::BaseType*) DDS.cc:607 #10 0x10cf8cde8 in ncml_module::AggregationElement::processAggVarJoinNewForArray(libdap::DDS&, libdap::Array const&, agg_util::Dimension const&, std::__1::vector, std::__1::allocator > > const&) AggregationElement.cc:867 #11 0x10cf57db0 in ncml_module::AggregationElement::processJoinNewOnAggVar(libdap::DDS*, std::__1::basic_string, std::__1::allocator > const&, libdap::DDS const&) AggregationElement.cc:801 #12 0x10cf1d4d7 in ncml_module::AggregationElement::processJoinNew() AggregationElement.cc:420 #13 0x10cf13320 in ncml_module::AggregationElement::handleEnd() AggregationElement.cc:217 #14 0x10d361b9f in ncml_module::NCMLParser::processEndNCMLElement(std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:1186 #15 0x10d36935b in ncml_module::NCMLParser::onEndElementWithNamespace(std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:324 #16 0x10d4cd8c9 in ncmlSax2EndElementNs(void*, unsigned char const*, unsigned char const*, unsigned char const*) SaxParserWrapper.cc:242 #17 0x7fff597e1d8e in xmlParseEndTag2 (libxml2.2.dylib:x86_64+0x37d8e) #18 0x7fff597e0440 in xmlParseElement (libxml2.2.dylib:x86_64+0x36440) #19 0x7fff597e005a in xmlParseContent (libxml2.2.dylib:x86_64+0x3605a) #20 0x7fff597e03f1 in xmlParseElement (libxml2.2.dylib:x86_64+0x363f1) #21 0x7fff597e2b7a in xmlParseDocument (libxml2.2.dylib:x86_64+0x38b7a) #22 0x10d4be9ae in ncml_module::SaxParserWrapper::parse(std::__1::basic_string, std::__1::allocator > const&) SaxParserWrapper.cc:338 #23 0x10d353d0b in ncml_module::NCMLParser::parseInto(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType, BESDapResponse*) NCMLParser.cc:185 #24 0x10d3cfaae in ncml_module::NCMLRequestHandler::ncml_build_dds(BESDataHandlerInterface&) NCMLRequestHandler.cc:260 #25 0x101be1c8f in BESRequestHandlerList::execute_current(BESDataHandlerInterface&) BESRequestHandlerList.cc:273 #26 0x101be00a4 in BESRequestHandlerList::execute_each(BESDataHandlerInterface&) BESRequestHandlerList.cc:167 #27 0x10573d048 in BESDDSResponseHandler::execute(BESDataHandlerInterface&) BESDDSResponseHandler.cc:107 #28 0x101ffad5a in BESXMLInterface::execute_data_request_plan() BESXMLInterface.cc:285 #29 0x101a55b8d in BESInterface::execute_request(std::__1::basic_string, std::__1::allocator > const&) BESInterface.cc:513 #30 0x1019bf8d8 in StandAloneClient::executeCommand(std::__1::basic_string, std::__1::allocator > const&, int) StandAloneClient.cc:237 #31 0x1019bd3aa in StandAloneClient::executeCommands(std::__1::basic_ifstream >&, int) StandAloneClient.cc:349 #32 0x1019a2e6d in StandAloneApp::run() StandAloneApp.cc:251 #33 0x101cc5c24 in BESApp::main(int, char**) BESApp.cc:58 #34 0x1019a612e in main StandAloneApp.cc:345 #35 0x7fff59ad3014 in start (libdyld.dylib:x86_64+0x1014) 0x603000011334 is located 0 bytes to the right of 20-byte region [0x603000011320,0x603000011334) allocated by thread T0 here: #0 0x102151cb2 in wrap__Znam (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x62cb2) #1 0x105cdbb3c in libdap::Vector::m_create_cardinal_data_buffer_for_type(unsigned int) Vector.cc:203 #2 0x105cf0c15 in libdap::Vector::val2buf(void*, bool) Vector.cc:1206 #3 0x105cda5e7 in libdap::Vector::m_duplicate(libdap::Vector const&) Vector.cc:116 #4 0x105cde733 in libdap::Vector::Vector(libdap::Vector const&) Vector.cc:297 #5 0x105d2c385 in libdap::Array::Array(libdap::Array const&) Array.cc:164 #6 0x10d03a116 in agg_util::ArrayAggregationBase::ArrayAggregationBase(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&) ArrayAggregationBase.cc:50 #7 0x10d0297d2 in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&, agg_util::Dimension const&) ArrayAggregateOnOuterDimension.cc:59 #8 0x10d029e34 in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&, agg_util::Dimension const&) ArrayAggregateOnOuterDimension.cc:61 #9 0x10cf8a7ae in ncml_module::AggregationElement::processAggVarJoinNewForArray(libdap::DDS&, libdap::Array const&, agg_util::Dimension const&, std::__1::vector, std::__1::allocator > > const&) AggregationElement.cc:855 #10 0x10cf57db0 in ncml_module::AggregationElement::processJoinNewOnAggVar(libdap::DDS*, std::__1::basic_string, std::__1::allocator > const&, libdap::DDS const&) AggregationElement.cc:801 #11 0x10cf1d4d7 in ncml_module::AggregationElement::processJoinNew() AggregationElement.cc:420 #12 0x10cf13320 in ncml_module::AggregationElement::handleEnd() AggregationElement.cc:217 #13 0x10d361b9f in ncml_module::NCMLParser::processEndNCMLElement(std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:1186 #14 0x10d36935b in ncml_module::NCMLParser::onEndElementWithNamespace(std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:324 #15 0x10d4cd8c9 in ncmlSax2EndElementNs(void*, unsigned char const*, unsigned char const*, unsigned char const*) SaxParserWrapper.cc:242 #16 0x7fff597e1d8e in xmlParseEndTag2 (libxml2.2.dylib:x86_64+0x37d8e) #17 0x7fff597e0440 in xmlParseElement (libxml2.2.dylib:x86_64+0x36440) #18 0x7fff597e005a in xmlParseContent (libxml2.2.dylib:x86_64+0x3605a) #19 0x7fff597e03f1 in xmlParseElement (libxml2.2.dylib:x86_64+0x363f1) #20 0x7fff597e2b7a in xmlParseDocument (libxml2.2.dylib:x86_64+0x38b7a) #21 0x10d4be9ae in ncml_module::SaxParserWrapper::parse(std::__1::basic_string, std::__1::allocator > const&) SaxParserWrapper.cc:338 #22 0x10d353d0b in ncml_module::NCMLParser::parseInto(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType, BESDapResponse*) NCMLParser.cc:185 #23 0x10d3cfaae in ncml_module::NCMLRequestHandler::ncml_build_dds(BESDataHandlerInterface&) NCMLRequestHandler.cc:260 #24 0x101be1c8f in BESRequestHandlerList::execute_current(BESDataHandlerInterface&) BESRequestHandlerList.cc:273 #25 0x101be00a4 in BESRequestHandlerList::execute_each(BESDataHandlerInterface&) BESRequestHandlerList.cc:167 #26 0x10573d048 in BESDDSResponseHandler::execute(BESDataHandlerInterface&) BESDDSResponseHandler.cc:107 #27 0x101ffad5a in BESXMLInterface::execute_data_request_plan() BESXMLInterface.cc:285 #28 0x101a55b8d in BESInterface::execute_request(std::__1::basic_string, std::__1::allocator > const&) BESInterface.cc:513 #29 0x1019bf8d8 in StandAloneClient::executeCommand(std::__1::basic_string, std::__1::allocator > const&, int) StandAloneClient.cc:237 SUMMARY: AddressSanitizer: heap-buffer-overflow (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x4f3fd) in __asan_memcpy Shadow bytes around the buggy address: 0x1c0600002210: fd fd fd fd fa fa fd fd fd fd fa fa fd fd fd fa 0x1c0600002220: fa fa fd fd fd fa fa fa 00 00 00 fa fa fa 00 00 0x1c0600002230: 00 fa fa fa fd fd fd fd fa fa fd fd fd fd fa fa 0x1c0600002240: fd fd fd fd fa fa 00 00 00 fc fa fa fd fd fd fa 0x1c0600002250: fa fa 00 00 00 fa fa fa fd fd fd fa fa fa 00 00 =>0x1c0600002260: 00 fa fa fa 00 00[04]fa fa fa 00 00 04 fa fa fa 0x1c0600002270: 00 00 00 fa fa fa 00 00 00 fa fa fa 00 00 04 fa 0x1c0600002280: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c0600002290: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c06000022a0: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c06000022b0: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa Shadow byte legend (one shadow byte represents 8 application bytes): Addressable: 00 Partially addressable: 01 02 03 04 05 06 07 Heap left redzone: fa Freed heap region: fd Stack left redzone: f1 Stack mid redzone: f2 Stack right redzone: f3 Stack after return: f5 Stack use after scope: f8 Global redzone: f9 Global init order: f6 Poisoned by user: f7 Container overflow: fc Array cookie: ac Intra object redzone: bb ASan internal: fe Left alloca redzone: ca Right alloca redzone: cb ==76116==ABORTING /Users/jimg/src/opendap/hyrax_git/bes/modules/ncml_module/tests/testsuite.dir/at-groups/393/test-source: line 44: 76116 Abort trap: 6 besstandalone -c $abs_builddir/bes.conf -i ./test.bescmd stdout: ./aggregations.at:68: exit code was 134, expected 0 393. aggregations.at:68: 393. Comparing dds response for agg/joinNew_simple_3.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_simple_3.ncml (aggregations.at:68): FAILED (aggregations.at:68) # -*- compilation -*- 394. aggregations.at:68: testing Comparing ddx response for agg/joinNew_simple_3.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_simple_3.ncml ... ./aggregations.at:68: besstandalone -c $abs_builddir/bes.conf -i ./test.bescmd stderr: Width: 20 Name: V Width: 20 Name: V Width: 40 Name: V ================================================================= ==76145==ERROR: AddressSanitizer: heap-buffer-overflow on address 0x603000011304 at pc 0x00010e6b03fe bp 0x7ffee1ce86d0 sp 0x7ffee1ce7e80 READ of size 40 at 0x603000011304 thread T0 #0 0x10e6b03fd in __asan_memcpy (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x4f3fd) Provided dSYM: [/Users/jimg/src/opendap/hyrax_git/build/lib/libdap.25.dylib.dSYM/Contents/Resources/DWARF/libdap.25.dylib] does not match symbol owner 0x7fe7fce09700 #1 0x112393f39 in libdap::Vector::val2buf(void*, bool) Vector.cc:1212 #2 0x11237d5e7 in libdap::Vector::m_duplicate(libdap::Vector const&) Vector.cc:116 #3 0x112381733 in libdap::Vector::Vector(libdap::Vector const&) Vector.cc:297 #4 0x1123cf385 in libdap::Array::Array(libdap::Array const&) Array.cc:164 #5 0x1193478da in agg_util::ArrayAggregationBase::ArrayAggregationBase(agg_util::ArrayAggregationBase const&) ArrayAggregationBase.cc:56 #6 0x119336f84 in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(agg_util::ArrayAggregateOnOuterDimension const&) ArrayAggregateOnOuterDimension.cc:70 #7 0x11933735c in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(agg_util::ArrayAggregateOnOuterDimension const&) ArrayAggregateOnOuterDimension.cc:71 #8 0x11933789c in agg_util::ArrayAggregateOnOuterDimension::ptr_duplicate() ArrayAggregateOnOuterDimension.cc:85 #9 0x1122800fd in libdap::DDS::add_var(libdap::BaseType*) DDS.cc:607 #10 0x119299de8 in ncml_module::AggregationElement::processAggVarJoinNewForArray(libdap::DDS&, libdap::Array const&, agg_util::Dimension const&, std::__1::vector, std::__1::allocator > > const&) AggregationElement.cc:867 #11 0x119264db0 in ncml_module::AggregationElement::processJoinNewOnAggVar(libdap::DDS*, std::__1::basic_string, std::__1::allocator > const&, libdap::DDS const&) AggregationElement.cc:801 #12 0x11922a4d7 in ncml_module::AggregationElement::processJoinNew() AggregationElement.cc:420 #13 0x119220320 in ncml_module::AggregationElement::handleEnd() AggregationElement.cc:217 #14 0x11966eb9f in ncml_module::NCMLParser::processEndNCMLElement(std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:1186 #15 0x11967635b in ncml_module::NCMLParser::onEndElementWithNamespace(std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:324 #16 0x1197da8c9 in ncmlSax2EndElementNs(void*, unsigned char const*, unsigned char const*, unsigned char const*) SaxParserWrapper.cc:242 #17 0x7fff597e1d8e in xmlParseEndTag2 (libxml2.2.dylib:x86_64+0x37d8e) #18 0x7fff597e0440 in xmlParseElement (libxml2.2.dylib:x86_64+0x36440) #19 0x7fff597e005a in xmlParseContent (libxml2.2.dylib:x86_64+0x3605a) #20 0x7fff597e03f1 in xmlParseElement (libxml2.2.dylib:x86_64+0x363f1) #21 0x7fff597e2b7a in xmlParseDocument (libxml2.2.dylib:x86_64+0x38b7a) #22 0x1197cb9ae in ncml_module::SaxParserWrapper::parse(std::__1::basic_string, std::__1::allocator > const&) SaxParserWrapper.cc:338 #23 0x119660d0b in ncml_module::NCMLParser::parseInto(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType, BESDapResponse*) NCMLParser.cc:185 #24 0x1196dcaae in ncml_module::NCMLRequestHandler::ncml_build_dds(BESDataHandlerInterface&) NCMLRequestHandler.cc:260 #25 0x10e14cc8f in BESRequestHandlerList::execute_current(BESDataHandlerInterface&) BESRequestHandlerList.cc:273 #26 0x10e14b0a4 in BESRequestHandlerList::execute_each(BESDataHandlerInterface&) BESRequestHandlerList.cc:167 #27 0x111e2a5dc in BESDDXResponseHandler::execute(BESDataHandlerInterface&) BESDDXResponseHandler.cc:122 #28 0x10e568d5a in BESXMLInterface::execute_data_request_plan() BESXMLInterface.cc:285 #29 0x10dfc0b8d in BESInterface::execute_request(std::__1::basic_string, std::__1::allocator > const&) BESInterface.cc:513 #30 0x10df278d8 in StandAloneClient::executeCommand(std::__1::basic_string, std::__1::allocator > const&, int) StandAloneClient.cc:237 #31 0x10df253aa in StandAloneClient::executeCommands(std::__1::basic_ifstream >&, int) StandAloneClient.cc:349 #32 0x10df0ae6d in StandAloneApp::run() StandAloneApp.cc:251 #33 0x10e230c24 in BESApp::main(int, char**) BESApp.cc:58 #34 0x10df0e12e in main StandAloneApp.cc:345 #35 0x7fff59ad3014 in start (libdyld.dylib:x86_64+0x1014) 0x603000011304 is located 0 bytes to the right of 20-byte region [0x6030000112f0,0x603000011304) allocated by thread T0 here: #0 0x10e6c3cb2 in wrap__Znam (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x62cb2) #1 0x11237eb3c in libdap::Vector::m_create_cardinal_data_buffer_for_type(unsigned int) Vector.cc:203 #2 0x112393c15 in libdap::Vector::val2buf(void*, bool) Vector.cc:1206 #3 0x11237d5e7 in libdap::Vector::m_duplicate(libdap::Vector const&) Vector.cc:116 #4 0x112381733 in libdap::Vector::Vector(libdap::Vector const&) Vector.cc:297 #5 0x1123cf385 in libdap::Array::Array(libdap::Array const&) Array.cc:164 #6 0x119347116 in agg_util::ArrayAggregationBase::ArrayAggregationBase(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&) ArrayAggregationBase.cc:50 #7 0x1193367d2 in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&, agg_util::Dimension const&) ArrayAggregateOnOuterDimension.cc:59 #8 0x119336e34 in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&, agg_util::Dimension const&) ArrayAggregateOnOuterDimension.cc:61 #9 0x1192977ae in ncml_module::AggregationElement::processAggVarJoinNewForArray(libdap::DDS&, libdap::Array const&, agg_util::Dimension const&, std::__1::vector, std::__1::allocator > > const&) AggregationElement.cc:855 #10 0x119264db0 in ncml_module::AggregationElement::processJoinNewOnAggVar(libdap::DDS*, std::__1::basic_string, std::__1::allocator > const&, libdap::DDS const&) AggregationElement.cc:801 #11 0x11922a4d7 in ncml_module::AggregationElement::processJoinNew() AggregationElement.cc:420 #12 0x119220320 in ncml_module::AggregationElement::handleEnd() AggregationElement.cc:217 #13 0x11966eb9f in ncml_module::NCMLParser::processEndNCMLElement(std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:1186 #14 0x11967635b in ncml_module::NCMLParser::onEndElementWithNamespace(std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:324 #15 0x1197da8c9 in ncmlSax2EndElementNs(void*, unsigned char const*, unsigned char const*, unsigned char const*) SaxParserWrapper.cc:242 #16 0x7fff597e1d8e in xmlParseEndTag2 (libxml2.2.dylib:x86_64+0x37d8e) #17 0x7fff597e0440 in xmlParseElement (libxml2.2.dylib:x86_64+0x36440) #18 0x7fff597e005a in xmlParseContent (libxml2.2.dylib:x86_64+0x3605a) #19 0x7fff597e03f1 in xmlParseElement (libxml2.2.dylib:x86_64+0x363f1) #20 0x7fff597e2b7a in xmlParseDocument (libxml2.2.dylib:x86_64+0x38b7a) #21 0x1197cb9ae in ncml_module::SaxParserWrapper::parse(std::__1::basic_string, std::__1::allocator > const&) SaxParserWrapper.cc:338 #22 0x119660d0b in ncml_module::NCMLParser::parseInto(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType, BESDapResponse*) NCMLParser.cc:185 #23 0x1196dcaae in ncml_module::NCMLRequestHandler::ncml_build_dds(BESDataHandlerInterface&) NCMLRequestHandler.cc:260 #24 0x10e14cc8f in BESRequestHandlerList::execute_current(BESDataHandlerInterface&) BESRequestHandlerList.cc:273 #25 0x10e14b0a4 in BESRequestHandlerList::execute_each(BESDataHandlerInterface&) BESRequestHandlerList.cc:167 #26 0x111e2a5dc in BESDDXResponseHandler::execute(BESDataHandlerInterface&) BESDDXResponseHandler.cc:122 #27 0x10e568d5a in BESXMLInterface::execute_data_request_plan() BESXMLInterface.cc:285 #28 0x10dfc0b8d in BESInterface::execute_request(std::__1::basic_string, std::__1::allocator > const&) BESInterface.cc:513 #29 0x10df278d8 in StandAloneClient::executeCommand(std::__1::basic_string, std::__1::allocator > const&, int) StandAloneClient.cc:237 SUMMARY: AddressSanitizer: heap-buffer-overflow (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x4f3fd) in __asan_memcpy Shadow bytes around the buggy address: 0x1c0600002210: fd fd fd fd fa fa fd fd fd fa fa fa fd fd fd fa 0x1c0600002220: fa fa 00 00 00 fa fa fa 00 00 00 fa fa fa fd fd 0x1c0600002230: fd fd fa fa fd fd fd fd fa fa fd fd fd fd fa fa 0x1c0600002240: 00 00 00 fc fa fa fd fd fd fa fa fa 00 00 00 fa 0x1c0600002250: fa fa fd fd fd fa fa fa 00 00 00 fa fa fa 00 00 =>0x1c0600002260:[04]fa fa fa 00 00 04 fa fa fa 00 00 00 fa fa fa 0x1c0600002270: 00 00 00 fa fa fa 00 00 04 fa fa fa fa fa fa fa 0x1c0600002280: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c0600002290: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c06000022a0: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c06000022b0: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa Shadow byte legend (one shadow byte represents 8 application bytes): Addressable: 00 Partially addressable: 01 02 03 04 05 06 07 Heap left redzone: fa Freed heap region: fd Stack left redzone: f1 Stack mid redzone: f2 Stack right redzone: f3 Stack after return: f5 Stack use after scope: f8 Global redzone: f9 Global init order: f6 Poisoned by user: f7 Container overflow: fc Array cookie: ac Intra object redzone: bb ASan internal: fe Left alloca redzone: ca Right alloca redzone: cb ==76145==ABORTING /Users/jimg/src/opendap/hyrax_git/bes/modules/ncml_module/tests/testsuite.dir/at-groups/394/test-source: line 44: 76145 Abort trap: 6 besstandalone -c $abs_builddir/bes.conf -i ./test.bescmd stdout: ./aggregations.at:68: exit code was 134, expected 0 394. aggregations.at:68: 394. Comparing ddx response for agg/joinNew_simple_3.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_simple_3.ncml (aggregations.at:68): FAILED (aggregations.at:68) # -*- compilation -*- 395. aggregations.at:68: testing Comparing dods response for agg/joinNew_simple_3.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_simple_3.ncml ... ./aggregations.at:68: besstandalone -c $abs_builddir/bes.conf -i ./test.bescmd stderr: Width: 20 Name: V Width: 20 Name: V Width: 40 Name: V ================================================================= ==76174==ERROR: AddressSanitizer: heap-buffer-overflow on address 0x603000011304 at pc 0x00010193d3fe bp 0x7ffeeea589b0 sp 0x7ffeeea58160 READ of size 40 at 0x603000011304 thread T0 #0 0x10193d3fd in __asan_memcpy (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x4f3fd) Provided dSYM: [/Users/jimg/src/opendap/hyrax_git/build/lib/libdap.25.dylib.dSYM/Contents/Resources/DWARF/libdap.25.dylib] does not match symbol owner 0x7fbda4105b80 #1 0x1054e8f39 in libdap::Vector::val2buf(void*, bool) Vector.cc:1212 #2 0x1054d25e7 in libdap::Vector::m_duplicate(libdap::Vector const&) Vector.cc:116 #3 0x1054d6733 in libdap::Vector::Vector(libdap::Vector const&) Vector.cc:297 #4 0x105524385 in libdap::Array::Array(libdap::Array const&) Array.cc:164 #5 0x10c5398da in agg_util::ArrayAggregationBase::ArrayAggregationBase(agg_util::ArrayAggregationBase const&) ArrayAggregationBase.cc:56 #6 0x10c528f84 in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(agg_util::ArrayAggregateOnOuterDimension const&) ArrayAggregateOnOuterDimension.cc:70 #7 0x10c52935c in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(agg_util::ArrayAggregateOnOuterDimension const&) ArrayAggregateOnOuterDimension.cc:71 #8 0x10c52989c in agg_util::ArrayAggregateOnOuterDimension::ptr_duplicate() ArrayAggregateOnOuterDimension.cc:85 #9 0x1053d50fd in libdap::DDS::add_var(libdap::BaseType*) DDS.cc:607 #10 0x10c48bde8 in ncml_module::AggregationElement::processAggVarJoinNewForArray(libdap::DDS&, libdap::Array const&, agg_util::Dimension const&, std::__1::vector, std::__1::allocator > > const&) AggregationElement.cc:867 #11 0x10c456db0 in ncml_module::AggregationElement::processJoinNewOnAggVar(libdap::DDS*, std::__1::basic_string, std::__1::allocator > const&, libdap::DDS const&) AggregationElement.cc:801 #12 0x10c41c4d7 in ncml_module::AggregationElement::processJoinNew() AggregationElement.cc:420 #13 0x10c412320 in ncml_module::AggregationElement::handleEnd() AggregationElement.cc:217 #14 0x10c860b9f in ncml_module::NCMLParser::processEndNCMLElement(std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:1186 #15 0x10c86835b in ncml_module::NCMLParser::onEndElementWithNamespace(std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:324 #16 0x10c9cc8c9 in ncmlSax2EndElementNs(void*, unsigned char const*, unsigned char const*, unsigned char const*) SaxParserWrapper.cc:242 #17 0x7fff597e1d8e in xmlParseEndTag2 (libxml2.2.dylib:x86_64+0x37d8e) #18 0x7fff597e0440 in xmlParseElement (libxml2.2.dylib:x86_64+0x36440) #19 0x7fff597e005a in xmlParseContent (libxml2.2.dylib:x86_64+0x3605a) #20 0x7fff597e03f1 in xmlParseElement (libxml2.2.dylib:x86_64+0x363f1) #21 0x7fff597e2b7a in xmlParseDocument (libxml2.2.dylib:x86_64+0x38b7a) #22 0x10c9bd9ae in ncml_module::SaxParserWrapper::parse(std::__1::basic_string, std::__1::allocator > const&) SaxParserWrapper.cc:338 #23 0x10c852d0b in ncml_module::NCMLParser::parseInto(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType, BESDapResponse*) NCMLParser.cc:185 #24 0x10c8d4346 in ncml_module::NCMLRequestHandler::ncml_build_data(BESDataHandlerInterface&) NCMLRequestHandler.cc:297 #25 0x1013dcc8f in BESRequestHandlerList::execute_current(BESDataHandlerInterface&) BESRequestHandlerList.cc:273 #26 0x1013db0a4 in BESRequestHandlerList::execute_each(BESDataHandlerInterface&) BESRequestHandlerList.cc:167 #27 0x104f3f88c in BESDataResponseHandler::execute(BESDataHandlerInterface&) BESDataResponseHandler.cc:148 #28 0x1017f8d5a in BESXMLInterface::execute_data_request_plan() BESXMLInterface.cc:285 #29 0x101250b8d in BESInterface::execute_request(std::__1::basic_string, std::__1::allocator > const&) BESInterface.cc:513 #30 0x1011b78d8 in StandAloneClient::executeCommand(std::__1::basic_string, std::__1::allocator > const&, int) StandAloneClient.cc:237 #31 0x1011b53aa in StandAloneClient::executeCommands(std::__1::basic_ifstream >&, int) StandAloneClient.cc:349 #32 0x10119ae6d in StandAloneApp::run() StandAloneApp.cc:251 #33 0x1014c0c24 in BESApp::main(int, char**) BESApp.cc:58 #34 0x10119e12e in main StandAloneApp.cc:345 #35 0x7fff59ad3014 in start (libdyld.dylib:x86_64+0x1014) 0x603000011304 is located 0 bytes to the right of 20-byte region [0x6030000112f0,0x603000011304) allocated by thread T0 here: #0 0x101950cb2 in wrap__Znam (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x62cb2) #1 0x1054d3b3c in libdap::Vector::m_create_cardinal_data_buffer_for_type(unsigned int) Vector.cc:203 #2 0x1054e8c15 in libdap::Vector::val2buf(void*, bool) Vector.cc:1206 #3 0x1054d25e7 in libdap::Vector::m_duplicate(libdap::Vector const&) Vector.cc:116 #4 0x1054d6733 in libdap::Vector::Vector(libdap::Vector const&) Vector.cc:297 #5 0x105524385 in libdap::Array::Array(libdap::Array const&) Array.cc:164 #6 0x10c539116 in agg_util::ArrayAggregationBase::ArrayAggregationBase(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&) ArrayAggregationBase.cc:50 #7 0x10c5287d2 in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&, agg_util::Dimension const&) ArrayAggregateOnOuterDimension.cc:59 #8 0x10c528e34 in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&, agg_util::Dimension const&) ArrayAggregateOnOuterDimension.cc:61 #9 0x10c4897ae in ncml_module::AggregationElement::processAggVarJoinNewForArray(libdap::DDS&, libdap::Array const&, agg_util::Dimension const&, std::__1::vector, std::__1::allocator > > const&) AggregationElement.cc:855 #10 0x10c456db0 in ncml_module::AggregationElement::processJoinNewOnAggVar(libdap::DDS*, std::__1::basic_string, std::__1::allocator > const&, libdap::DDS const&) AggregationElement.cc:801 #11 0x10c41c4d7 in ncml_module::AggregationElement::processJoinNew() AggregationElement.cc:420 #12 0x10c412320 in ncml_module::AggregationElement::handleEnd() AggregationElement.cc:217 #13 0x10c860b9f in ncml_module::NCMLParser::processEndNCMLElement(std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:1186 #14 0x10c86835b in ncml_module::NCMLParser::onEndElementWithNamespace(std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:324 #15 0x10c9cc8c9 in ncmlSax2EndElementNs(void*, unsigned char const*, unsigned char const*, unsigned char const*) SaxParserWrapper.cc:242 #16 0x7fff597e1d8e in xmlParseEndTag2 (libxml2.2.dylib:x86_64+0x37d8e) #17 0x7fff597e0440 in xmlParseElement (libxml2.2.dylib:x86_64+0x36440) #18 0x7fff597e005a in xmlParseContent (libxml2.2.dylib:x86_64+0x3605a) #19 0x7fff597e03f1 in xmlParseElement (libxml2.2.dylib:x86_64+0x363f1) #20 0x7fff597e2b7a in xmlParseDocument (libxml2.2.dylib:x86_64+0x38b7a) #21 0x10c9bd9ae in ncml_module::SaxParserWrapper::parse(std::__1::basic_string, std::__1::allocator > const&) SaxParserWrapper.cc:338 #22 0x10c852d0b in ncml_module::NCMLParser::parseInto(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType, BESDapResponse*) NCMLParser.cc:185 #23 0x10c8d4346 in ncml_module::NCMLRequestHandler::ncml_build_data(BESDataHandlerInterface&) NCMLRequestHandler.cc:297 #24 0x1013dcc8f in BESRequestHandlerList::execute_current(BESDataHandlerInterface&) BESRequestHandlerList.cc:273 #25 0x1013db0a4 in BESRequestHandlerList::execute_each(BESDataHandlerInterface&) BESRequestHandlerList.cc:167 #26 0x104f3f88c in BESDataResponseHandler::execute(BESDataHandlerInterface&) BESDataResponseHandler.cc:148 #27 0x1017f8d5a in BESXMLInterface::execute_data_request_plan() BESXMLInterface.cc:285 #28 0x101250b8d in BESInterface::execute_request(std::__1::basic_string, std::__1::allocator > const&) BESInterface.cc:513 #29 0x1011b78d8 in StandAloneClient::executeCommand(std::__1::basic_string, std::__1::allocator > const&, int) StandAloneClient.cc:237 SUMMARY: AddressSanitizer: heap-buffer-overflow (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x4f3fd) in __asan_memcpy Shadow bytes around the buggy address: 0x1c0600002210: fd fd fd fd fa fa fd fd fd fa fa fa fd fd fd fa 0x1c0600002220: fa fa 00 00 00 fa fa fa 00 00 00 fa fa fa fd fd 0x1c0600002230: fd fd fa fa fd fd fd fd fa fa fd fd fd fd fa fa 0x1c0600002240: 00 00 00 fc fa fa fd fd fd fa fa fa 00 00 00 fa 0x1c0600002250: fa fa fd fd fd fa fa fa 00 00 00 fa fa fa 00 00 =>0x1c0600002260:[04]fa fa fa 00 00 04 fa fa fa 00 00 00 fa fa fa 0x1c0600002270: 00 00 00 fa fa fa 00 00 04 fa fa fa fa fa fa fa 0x1c0600002280: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c0600002290: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c06000022a0: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c06000022b0: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa Shadow byte legend (one shadow byte represents 8 application bytes): Addressable: 00 Partially addressable: 01 02 03 04 05 06 07 Heap left redzone: fa Freed heap region: fd Stack left redzone: f1 Stack mid redzone: f2 Stack right redzone: f3 Stack after return: f5 Stack use after scope: f8 Global redzone: f9 Global init order: f6 Poisoned by user: f7 Container overflow: fc Array cookie: ac Intra object redzone: bb ASan internal: fe Left alloca redzone: ca Right alloca redzone: cb ==76174==ABORTING /Users/jimg/src/opendap/hyrax_git/bes/modules/ncml_module/tests/testsuite.dir/at-groups/395/test-source: line 44: 76174 Abort trap: 6 besstandalone -c $abs_builddir/bes.conf -i ./test.bescmd stdout: ./aggregations.at:68: exit code was 134, expected 0 395. aggregations.at:68: 395. Comparing dods response for agg/joinNew_simple_3.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_simple_3.ncml (aggregations.at:68): FAILED (aggregations.at:68) # -*- compilation -*- 396. aggregations.at:69: testing Comparing dods response for agg/joinNew_simple_3.ncml to getdap (ascii) baseline ${abs_srcdir}/baselines/agg/joinNew_simple_3.ncml ... ./aggregations.at:69: besstandalone -c $abs_builddir/bes.conf -i ./test.bescmd stderr: Width: 20 Name: V Width: 20 Name: V Width: 40 Name: V ================================================================= ==76201==ERROR: AddressSanitizer: heap-buffer-overflow on address 0x603000011304 at pc 0x00010810f3fe bp 0x7ffee82839b0 sp 0x7ffee8283160 READ of size 40 at 0x603000011304 thread T0 #0 0x10810f3fd in __asan_memcpy (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x4f3fd) Provided dSYM: [/Users/jimg/src/opendap/hyrax_git/build/lib/libdap.25.dylib.dSYM/Contents/Resources/DWARF/libdap.25.dylib] does not match symbol owner 0x7fc005705e80 #1 0x10bedef39 in libdap::Vector::val2buf(void*, bool) Vector.cc:1212 #2 0x10bec85e7 in libdap::Vector::m_duplicate(libdap::Vector const&) Vector.cc:116 #3 0x10becc733 in libdap::Vector::Vector(libdap::Vector const&) Vector.cc:297 #4 0x10bf1a385 in libdap::Array::Array(libdap::Array const&) Array.cc:164 #5 0x112dba8da in agg_util::ArrayAggregationBase::ArrayAggregationBase(agg_util::ArrayAggregationBase const&) ArrayAggregationBase.cc:56 #6 0x112da9f84 in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(agg_util::ArrayAggregateOnOuterDimension const&) ArrayAggregateOnOuterDimension.cc:70 #7 0x112daa35c in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(agg_util::ArrayAggregateOnOuterDimension const&) ArrayAggregateOnOuterDimension.cc:71 #8 0x112daa89c in agg_util::ArrayAggregateOnOuterDimension::ptr_duplicate() ArrayAggregateOnOuterDimension.cc:85 #9 0x10bdcb0fd in libdap::DDS::add_var(libdap::BaseType*) DDS.cc:607 #10 0x112d0cde8 in ncml_module::AggregationElement::processAggVarJoinNewForArray(libdap::DDS&, libdap::Array const&, agg_util::Dimension const&, std::__1::vector, std::__1::allocator > > const&) AggregationElement.cc:867 #11 0x112cd7db0 in ncml_module::AggregationElement::processJoinNewOnAggVar(libdap::DDS*, std::__1::basic_string, std::__1::allocator > const&, libdap::DDS const&) AggregationElement.cc:801 #12 0x112c9d4d7 in ncml_module::AggregationElement::processJoinNew() AggregationElement.cc:420 #13 0x112c93320 in ncml_module::AggregationElement::handleEnd() AggregationElement.cc:217 #14 0x1130e1b9f in ncml_module::NCMLParser::processEndNCMLElement(std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:1186 #15 0x1130e935b in ncml_module::NCMLParser::onEndElementWithNamespace(std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:324 #16 0x11324d8c9 in ncmlSax2EndElementNs(void*, unsigned char const*, unsigned char const*, unsigned char const*) SaxParserWrapper.cc:242 #17 0x7fff597e1d8e in xmlParseEndTag2 (libxml2.2.dylib:x86_64+0x37d8e) #18 0x7fff597e0440 in xmlParseElement (libxml2.2.dylib:x86_64+0x36440) #19 0x7fff597e005a in xmlParseContent (libxml2.2.dylib:x86_64+0x3605a) #20 0x7fff597e03f1 in xmlParseElement (libxml2.2.dylib:x86_64+0x363f1) #21 0x7fff597e2b7a in xmlParseDocument (libxml2.2.dylib:x86_64+0x38b7a) #22 0x11323e9ae in ncml_module::SaxParserWrapper::parse(std::__1::basic_string, std::__1::allocator > const&) SaxParserWrapper.cc:338 #23 0x1130d3d0b in ncml_module::NCMLParser::parseInto(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType, BESDapResponse*) NCMLParser.cc:185 #24 0x113155346 in ncml_module::NCMLRequestHandler::ncml_build_data(BESDataHandlerInterface&) NCMLRequestHandler.cc:297 #25 0x107baec8f in BESRequestHandlerList::execute_current(BESDataHandlerInterface&) BESRequestHandlerList.cc:273 #26 0x107bad0a4 in BESRequestHandlerList::execute_each(BESDataHandlerInterface&) BESRequestHandlerList.cc:167 #27 0x10b97d88c in BESDataResponseHandler::execute(BESDataHandlerInterface&) BESDataResponseHandler.cc:148 #28 0x107fc6d5a in BESXMLInterface::execute_data_request_plan() BESXMLInterface.cc:285 #29 0x107a22b8d in BESInterface::execute_request(std::__1::basic_string, std::__1::allocator > const&) BESInterface.cc:513 #30 0x10798c8d8 in StandAloneClient::executeCommand(std::__1::basic_string, std::__1::allocator > const&, int) StandAloneClient.cc:237 #31 0x10798a3aa in StandAloneClient::executeCommands(std::__1::basic_ifstream >&, int) StandAloneClient.cc:349 #32 0x10796fe6d in StandAloneApp::run() StandAloneApp.cc:251 #33 0x107c92c24 in BESApp::main(int, char**) BESApp.cc:58 #34 0x10797312e in main StandAloneApp.cc:345 #35 0x7fff59ad3014 in start (libdyld.dylib:x86_64+0x1014) 0x603000011304 is located 0 bytes to the right of 20-byte region [0x6030000112f0,0x603000011304) allocated by thread T0 here: #0 0x108122cb2 in wrap__Znam (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x62cb2) #1 0x10bec9b3c in libdap::Vector::m_create_cardinal_data_buffer_for_type(unsigned int) Vector.cc:203 #2 0x10bedec15 in libdap::Vector::val2buf(void*, bool) Vector.cc:1206 #3 0x10bec85e7 in libdap::Vector::m_duplicate(libdap::Vector const&) Vector.cc:116 #4 0x10becc733 in libdap::Vector::Vector(libdap::Vector const&) Vector.cc:297 #5 0x10bf1a385 in libdap::Array::Array(libdap::Array const&) Array.cc:164 #6 0x112dba116 in agg_util::ArrayAggregationBase::ArrayAggregationBase(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&) ArrayAggregationBase.cc:50 #7 0x112da97d2 in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&, agg_util::Dimension const&) ArrayAggregateOnOuterDimension.cc:59 #8 0x112da9e34 in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&, agg_util::Dimension const&) ArrayAggregateOnOuterDimension.cc:61 #9 0x112d0a7ae in ncml_module::AggregationElement::processAggVarJoinNewForArray(libdap::DDS&, libdap::Array const&, agg_util::Dimension const&, std::__1::vector, std::__1::allocator > > const&) AggregationElement.cc:855 #10 0x112cd7db0 in ncml_module::AggregationElement::processJoinNewOnAggVar(libdap::DDS*, std::__1::basic_string, std::__1::allocator > const&, libdap::DDS const&) AggregationElement.cc:801 #11 0x112c9d4d7 in ncml_module::AggregationElement::processJoinNew() AggregationElement.cc:420 #12 0x112c93320 in ncml_module::AggregationElement::handleEnd() AggregationElement.cc:217 #13 0x1130e1b9f in ncml_module::NCMLParser::processEndNCMLElement(std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:1186 #14 0x1130e935b in ncml_module::NCMLParser::onEndElementWithNamespace(std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:324 #15 0x11324d8c9 in ncmlSax2EndElementNs(void*, unsigned char const*, unsigned char const*, unsigned char const*) SaxParserWrapper.cc:242 #16 0x7fff597e1d8e in xmlParseEndTag2 (libxml2.2.dylib:x86_64+0x37d8e) #17 0x7fff597e0440 in xmlParseElement (libxml2.2.dylib:x86_64+0x36440) #18 0x7fff597e005a in xmlParseContent (libxml2.2.dylib:x86_64+0x3605a) #19 0x7fff597e03f1 in xmlParseElement (libxml2.2.dylib:x86_64+0x363f1) #20 0x7fff597e2b7a in xmlParseDocument (libxml2.2.dylib:x86_64+0x38b7a) #21 0x11323e9ae in ncml_module::SaxParserWrapper::parse(std::__1::basic_string, std::__1::allocator > const&) SaxParserWrapper.cc:338 #22 0x1130d3d0b in ncml_module::NCMLParser::parseInto(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType, BESDapResponse*) NCMLParser.cc:185 #23 0x113155346 in ncml_module::NCMLRequestHandler::ncml_build_data(BESDataHandlerInterface&) NCMLRequestHandler.cc:297 #24 0x107baec8f in BESRequestHandlerList::execute_current(BESDataHandlerInterface&) BESRequestHandlerList.cc:273 #25 0x107bad0a4 in BESRequestHandlerList::execute_each(BESDataHandlerInterface&) BESRequestHandlerList.cc:167 #26 0x10b97d88c in BESDataResponseHandler::execute(BESDataHandlerInterface&) BESDataResponseHandler.cc:148 #27 0x107fc6d5a in BESXMLInterface::execute_data_request_plan() BESXMLInterface.cc:285 #28 0x107a22b8d in BESInterface::execute_request(std::__1::basic_string, std::__1::allocator > const&) BESInterface.cc:513 #29 0x10798c8d8 in StandAloneClient::executeCommand(std::__1::basic_string, std::__1::allocator > const&, int) StandAloneClient.cc:237 SUMMARY: AddressSanitizer: heap-buffer-overflow (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x4f3fd) in __asan_memcpy Shadow bytes around the buggy address: 0x1c0600002210: fd fd fd fd fa fa fd fd fd fa fa fa fd fd fd fa 0x1c0600002220: fa fa 00 00 00 fa fa fa 00 00 00 fa fa fa fd fd 0x1c0600002230: fd fd fa fa fd fd fd fd fa fa fd fd fd fd fa fa 0x1c0600002240: 00 00 00 fc fa fa fd fd fd fa fa fa 00 00 00 fa 0x1c0600002250: fa fa fd fd fd fa fa fa 00 00 00 fa fa fa 00 00 =>0x1c0600002260:[04]fa fa fa 00 00 04 fa fa fa 00 00 00 fa fa fa 0x1c0600002270: 00 00 00 fa fa fa 00 00 04 fa fa fa fa fa fa fa 0x1c0600002280: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c0600002290: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c06000022a0: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c06000022b0: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa Shadow byte legend (one shadow byte represents 8 application bytes): Addressable: 00 Partially addressable: 01 02 03 04 05 06 07 Heap left redzone: fa Freed heap region: fd Stack left redzone: f1 Stack mid redzone: f2 Stack right redzone: f3 Stack after return: f5 Stack use after scope: f8 Global redzone: f9 Global init order: f6 Poisoned by user: f7 Container overflow: fc Array cookie: ac Intra object redzone: bb ASan internal: fe Left alloca redzone: ca Right alloca redzone: cb ==76201==ABORTING /Users/jimg/src/opendap/hyrax_git/bes/modules/ncml_module/tests/testsuite.dir/at-groups/396/test-source: line 55: 76201 Abort trap: 6 besstandalone -c $abs_builddir/bes.conf -i ./test.bescmd stdout: ./aggregations.at:69: exit code was 134, expected 0 396. aggregations.at:69: 396. Comparing dods response for agg/joinNew_simple_3.ncml to getdap (ascii) baseline ${abs_srcdir}/baselines/agg/joinNew_simple_3.ncml (aggregations.at:69): FAILED (aggregations.at:69) # -*- compilation -*- 397. aggregations.at:75: testing Comparing das response for agg/joinNew_simple.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_simple_cons_1.ncml ... ./aggregations.at:75: besstandalone -c $abs_builddir/bes.conf -i ./test.bescmd stderr: Width: 20 Name: V Width: 20 Name: V Width: 40 Name: V ================================================================= ==76261==ERROR: AddressSanitizer: heap-buffer-overflow on address 0x6030000117b4 at pc 0x000101a433fe bp 0x7ffeee94a810 sp 0x7ffeee949fc0 READ of size 40 at 0x6030000117b4 thread T0 #0 0x101a433fd in __asan_memcpy (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x4f3fd) Provided dSYM: [/Users/jimg/src/opendap/hyrax_git/build/lib/libdap.25.dylib.dSYM/Contents/Resources/DWARF/libdap.25.dylib] does not match symbol owner 0x7fa69b206350 #1 0x1055f6f39 in libdap::Vector::val2buf(void*, bool) Vector.cc:1212 #2 0x1055e05e7 in libdap::Vector::m_duplicate(libdap::Vector const&) Vector.cc:116 #3 0x1055e4733 in libdap::Vector::Vector(libdap::Vector const&) Vector.cc:297 #4 0x105632385 in libdap::Array::Array(libdap::Array const&) Array.cc:164 #5 0x10c6478da in agg_util::ArrayAggregationBase::ArrayAggregationBase(agg_util::ArrayAggregationBase const&) ArrayAggregationBase.cc:56 #6 0x10c636f84 in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(agg_util::ArrayAggregateOnOuterDimension const&) ArrayAggregateOnOuterDimension.cc:70 #7 0x10c63735c in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(agg_util::ArrayAggregateOnOuterDimension const&) ArrayAggregateOnOuterDimension.cc:71 #8 0x10c63789c in agg_util::ArrayAggregateOnOuterDimension::ptr_duplicate() ArrayAggregateOnOuterDimension.cc:85 #9 0x1054e30fd in libdap::DDS::add_var(libdap::BaseType*) DDS.cc:607 #10 0x10c599de8 in ncml_module::AggregationElement::processAggVarJoinNewForArray(libdap::DDS&, libdap::Array const&, agg_util::Dimension const&, std::__1::vector, std::__1::allocator > > const&) AggregationElement.cc:867 #11 0x10c564db0 in ncml_module::AggregationElement::processJoinNewOnAggVar(libdap::DDS*, std::__1::basic_string, std::__1::allocator > const&, libdap::DDS const&) AggregationElement.cc:801 #12 0x10c52a4d7 in ncml_module::AggregationElement::processJoinNew() AggregationElement.cc:420 #13 0x10c520320 in ncml_module::AggregationElement::handleEnd() AggregationElement.cc:217 #14 0x10c96eb9f in ncml_module::NCMLParser::processEndNCMLElement(std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:1186 #15 0x10c97635b in ncml_module::NCMLParser::onEndElementWithNamespace(std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:324 #16 0x10cada8c9 in ncmlSax2EndElementNs(void*, unsigned char const*, unsigned char const*, unsigned char const*) SaxParserWrapper.cc:242 #17 0x7fff597e1d8e in xmlParseEndTag2 (libxml2.2.dylib:x86_64+0x37d8e) #18 0x7fff597e0440 in xmlParseElement (libxml2.2.dylib:x86_64+0x36440) #19 0x7fff597e005a in xmlParseContent (libxml2.2.dylib:x86_64+0x3605a) #20 0x7fff597e03f1 in xmlParseElement (libxml2.2.dylib:x86_64+0x363f1) #21 0x7fff597e2b7a in xmlParseDocument (libxml2.2.dylib:x86_64+0x38b7a) #22 0x10cacb9ae in ncml_module::SaxParserWrapper::parse(std::__1::basic_string, std::__1::allocator > const&) SaxParserWrapper.cc:338 #23 0x10c960d0b in ncml_module::NCMLParser::parseInto(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType, BESDapResponse*) NCMLParser.cc:185 #24 0x10c95a1e7 in ncml_module::NCMLParser::parse(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType) NCMLParser.cc:155 #25 0x10c9d4841 in ncml_module::NCMLRequestHandler::ncml_build_das(BESDataHandlerInterface&) NCMLRequestHandler.cc:172 #26 0x1014e8c8f in BESRequestHandlerList::execute_current(BESDataHandlerInterface&) BESRequestHandlerList.cc:273 #27 0x1014e70a4 in BESRequestHandlerList::execute_each(BESDataHandlerInterface&) BESRequestHandlerList.cc:167 #28 0x10503cff0 in BESDASResponseHandler::execute(BESDataHandlerInterface&) BESDASResponseHandler.cc:95 #29 0x1018fed5a in BESXMLInterface::execute_data_request_plan() BESXMLInterface.cc:285 #30 0x10135cb8d in BESInterface::execute_request(std::__1::basic_string, std::__1::allocator > const&) BESInterface.cc:513 #31 0x1012c58d8 in StandAloneClient::executeCommand(std::__1::basic_string, std::__1::allocator > const&, int) StandAloneClient.cc:237 #32 0x1012c33aa in StandAloneClient::executeCommands(std::__1::basic_ifstream >&, int) StandAloneClient.cc:349 #33 0x1012a8e6d in StandAloneApp::run() StandAloneApp.cc:251 #34 0x1015ccc24 in BESApp::main(int, char**) BESApp.cc:58 #35 0x1012ac12e in main StandAloneApp.cc:345 #36 0x7fff59ad3014 in start (libdyld.dylib:x86_64+0x1014) 0x6030000117b4 is located 0 bytes to the right of 20-byte region [0x6030000117a0,0x6030000117b4) allocated by thread T0 here: #0 0x101a56cb2 in wrap__Znam (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x62cb2) #1 0x1055e1b3c in libdap::Vector::m_create_cardinal_data_buffer_for_type(unsigned int) Vector.cc:203 #2 0x1055f6c15 in libdap::Vector::val2buf(void*, bool) Vector.cc:1206 #3 0x1055e05e7 in libdap::Vector::m_duplicate(libdap::Vector const&) Vector.cc:116 #4 0x1055e4733 in libdap::Vector::Vector(libdap::Vector const&) Vector.cc:297 #5 0x105632385 in libdap::Array::Array(libdap::Array const&) Array.cc:164 #6 0x10c647116 in agg_util::ArrayAggregationBase::ArrayAggregationBase(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&) ArrayAggregationBase.cc:50 #7 0x10c6367d2 in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&, agg_util::Dimension const&) ArrayAggregateOnOuterDimension.cc:59 #8 0x10c636e34 in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&, agg_util::Dimension const&) ArrayAggregateOnOuterDimension.cc:61 #9 0x10c5977ae in ncml_module::AggregationElement::processAggVarJoinNewForArray(libdap::DDS&, libdap::Array const&, agg_util::Dimension const&, std::__1::vector, std::__1::allocator > > const&) AggregationElement.cc:855 #10 0x10c564db0 in ncml_module::AggregationElement::processJoinNewOnAggVar(libdap::DDS*, std::__1::basic_string, std::__1::allocator > const&, libdap::DDS const&) AggregationElement.cc:801 #11 0x10c52a4d7 in ncml_module::AggregationElement::processJoinNew() AggregationElement.cc:420 #12 0x10c520320 in ncml_module::AggregationElement::handleEnd() AggregationElement.cc:217 #13 0x10c96eb9f in ncml_module::NCMLParser::processEndNCMLElement(std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:1186 #14 0x10c97635b in ncml_module::NCMLParser::onEndElementWithNamespace(std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:324 #15 0x10cada8c9 in ncmlSax2EndElementNs(void*, unsigned char const*, unsigned char const*, unsigned char const*) SaxParserWrapper.cc:242 #16 0x7fff597e1d8e in xmlParseEndTag2 (libxml2.2.dylib:x86_64+0x37d8e) #17 0x7fff597e0440 in xmlParseElement (libxml2.2.dylib:x86_64+0x36440) #18 0x7fff597e005a in xmlParseContent (libxml2.2.dylib:x86_64+0x3605a) #19 0x7fff597e03f1 in xmlParseElement (libxml2.2.dylib:x86_64+0x363f1) #20 0x7fff597e2b7a in xmlParseDocument (libxml2.2.dylib:x86_64+0x38b7a) #21 0x10cacb9ae in ncml_module::SaxParserWrapper::parse(std::__1::basic_string, std::__1::allocator > const&) SaxParserWrapper.cc:338 #22 0x10c960d0b in ncml_module::NCMLParser::parseInto(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType, BESDapResponse*) NCMLParser.cc:185 #23 0x10c95a1e7 in ncml_module::NCMLParser::parse(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType) NCMLParser.cc:155 #24 0x10c9d4841 in ncml_module::NCMLRequestHandler::ncml_build_das(BESDataHandlerInterface&) NCMLRequestHandler.cc:172 #25 0x1014e8c8f in BESRequestHandlerList::execute_current(BESDataHandlerInterface&) BESRequestHandlerList.cc:273 #26 0x1014e70a4 in BESRequestHandlerList::execute_each(BESDataHandlerInterface&) BESRequestHandlerList.cc:167 #27 0x10503cff0 in BESDASResponseHandler::execute(BESDataHandlerInterface&) BESDASResponseHandler.cc:95 #28 0x1018fed5a in BESXMLInterface::execute_data_request_plan() BESXMLInterface.cc:285 #29 0x10135cb8d in BESInterface::execute_request(std::__1::basic_string, std::__1::allocator > const&) BESInterface.cc:513 SUMMARY: AddressSanitizer: heap-buffer-overflow (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x4f3fd) in __asan_memcpy Shadow bytes around the buggy address: 0x1c06000022a0: 00 00 00 fa fa fa fd fd fd fa fa fa 00 00 00 fa 0x1c06000022b0: fa fa 00 00 00 fa fa fa fd fd fd fd fa fa fd fd 0x1c06000022c0: fd fd fa fa fd fd fd fd fa fa fd fd fd fd fa fa 0x1c06000022d0: fd fd fd fa fa fa 00 00 00 fa fa fa fd fd fd fa 0x1c06000022e0: fa fa 00 00 00 fa fa fa 00 00 00 fa fa fa 00 00 =>0x1c06000022f0: 00 fa fa fa 00 00[04]fa fa fa 00 00 00 fa fa fa 0x1c0600002300: 00 00 00 fa fa fa 00 00 04 fa fa fa 00 00 00 fa 0x1c0600002310: fa fa 00 00 00 fa fa fa 00 00 04 fa fa fa 00 00 0x1c0600002320: 00 fa fa fa 00 00 00 fa fa fa fa fa fa fa fa fa 0x1c0600002330: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c0600002340: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa Shadow byte legend (one shadow byte represents 8 application bytes): Addressable: 00 Partially addressable: 01 02 03 04 05 06 07 Heap left redzone: fa Freed heap region: fd Stack left redzone: f1 Stack mid redzone: f2 Stack right redzone: f3 Stack after return: f5 Stack use after scope: f8 Global redzone: f9 Global init order: f6 Poisoned by user: f7 Container overflow: fc Array cookie: ac Intra object redzone: bb ASan internal: fe Left alloca redzone: ca Right alloca redzone: cb ==76261==ABORTING /Users/jimg/src/opendap/hyrax_git/bes/modules/ncml_module/tests/testsuite.dir/at-groups/397/test-source: line 44: 76261 Abort trap: 6 besstandalone -c $abs_builddir/bes.conf -i ./test.bescmd stdout: ./aggregations.at:75: exit code was 134, expected 0 397. aggregations.at:75: 397. Comparing das response for agg/joinNew_simple.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_simple_cons_1.ncml (aggregations.at:75): FAILED (aggregations.at:75) # -*- compilation -*- 398. aggregations.at:75: testing Comparing dds response for agg/joinNew_simple.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_simple_cons_1.ncml ... ./aggregations.at:75: besstandalone -c $abs_builddir/bes.conf -i ./test.bescmd stderr: Width: 20 Name: V Width: 20 Name: V Width: 40 Name: V ================================================================= ==76266==ERROR: AddressSanitizer: heap-buffer-overflow on address 0x6030000117b4 at pc 0x00010585a3fe bp 0x7ffeeab38b30 sp 0x7ffeeab382e0 READ of size 40 at 0x6030000117b4 thread T0 #0 0x10585a3fd in __asan_memcpy (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x4f3fd) Provided dSYM: [/Users/jimg/src/opendap/hyrax_git/build/lib/libdap.25.dylib.dSYM/Contents/Resources/DWARF/libdap.25.dylib] does not match symbol owner 0x7f8ed8d05c60 #1 0x109408f39 in libdap::Vector::val2buf(void*, bool) Vector.cc:1212 #2 0x1093f25e7 in libdap::Vector::m_duplicate(libdap::Vector const&) Vector.cc:116 #3 0x1093f6733 in libdap::Vector::Vector(libdap::Vector const&) Vector.cc:297 #4 0x109444385 in libdap::Array::Array(libdap::Array const&) Array.cc:164 #5 0x110b4a8da in agg_util::ArrayAggregationBase::ArrayAggregationBase(agg_util::ArrayAggregationBase const&) ArrayAggregationBase.cc:56 #6 0x110b39f84 in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(agg_util::ArrayAggregateOnOuterDimension const&) ArrayAggregateOnOuterDimension.cc:70 #7 0x110b3a35c in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(agg_util::ArrayAggregateOnOuterDimension const&) ArrayAggregateOnOuterDimension.cc:71 #8 0x110b3a89c in agg_util::ArrayAggregateOnOuterDimension::ptr_duplicate() ArrayAggregateOnOuterDimension.cc:85 #9 0x1092f50fd in libdap::DDS::add_var(libdap::BaseType*) DDS.cc:607 #10 0x110a9cde8 in ncml_module::AggregationElement::processAggVarJoinNewForArray(libdap::DDS&, libdap::Array const&, agg_util::Dimension const&, std::__1::vector, std::__1::allocator > > const&) AggregationElement.cc:867 #11 0x110a67db0 in ncml_module::AggregationElement::processJoinNewOnAggVar(libdap::DDS*, std::__1::basic_string, std::__1::allocator > const&, libdap::DDS const&) AggregationElement.cc:801 #12 0x110a2d4d7 in ncml_module::AggregationElement::processJoinNew() AggregationElement.cc:420 #13 0x110a23320 in ncml_module::AggregationElement::handleEnd() AggregationElement.cc:217 #14 0x110e71b9f in ncml_module::NCMLParser::processEndNCMLElement(std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:1186 #15 0x110e7935b in ncml_module::NCMLParser::onEndElementWithNamespace(std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:324 #16 0x110fdd8c9 in ncmlSax2EndElementNs(void*, unsigned char const*, unsigned char const*, unsigned char const*) SaxParserWrapper.cc:242 #17 0x7fff597e1d8e in xmlParseEndTag2 (libxml2.2.dylib:x86_64+0x37d8e) #18 0x7fff597e0440 in xmlParseElement (libxml2.2.dylib:x86_64+0x36440) #19 0x7fff597e005a in xmlParseContent (libxml2.2.dylib:x86_64+0x3605a) #20 0x7fff597e03f1 in xmlParseElement (libxml2.2.dylib:x86_64+0x363f1) #21 0x7fff597e2b7a in xmlParseDocument (libxml2.2.dylib:x86_64+0x38b7a) #22 0x110fce9ae in ncml_module::SaxParserWrapper::parse(std::__1::basic_string, std::__1::allocator > const&) SaxParserWrapper.cc:338 #23 0x110e63d0b in ncml_module::NCMLParser::parseInto(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType, BESDapResponse*) NCMLParser.cc:185 #24 0x110edfaae in ncml_module::NCMLRequestHandler::ncml_build_dds(BESDataHandlerInterface&) NCMLRequestHandler.cc:260 #25 0x1052f9c8f in BESRequestHandlerList::execute_current(BESDataHandlerInterface&) BESRequestHandlerList.cc:273 #26 0x1052f80a4 in BESRequestHandlerList::execute_each(BESDataHandlerInterface&) BESRequestHandlerList.cc:167 #27 0x108e55048 in BESDDSResponseHandler::execute(BESDataHandlerInterface&) BESDDSResponseHandler.cc:107 #28 0x105712d5a in BESXMLInterface::execute_data_request_plan() BESXMLInterface.cc:285 #29 0x10516db8d in BESInterface::execute_request(std::__1::basic_string, std::__1::allocator > const&) BESInterface.cc:513 #30 0x1050d78d8 in StandAloneClient::executeCommand(std::__1::basic_string, std::__1::allocator > const&, int) StandAloneClient.cc:237 #31 0x1050d53aa in StandAloneClient::executeCommands(std::__1::basic_ifstream >&, int) StandAloneClient.cc:349 #32 0x1050bae6d in StandAloneApp::run() StandAloneApp.cc:251 #33 0x1053ddc24 in BESApp::main(int, char**) BESApp.cc:58 #34 0x1050be12e in main StandAloneApp.cc:345 #35 0x7fff59ad3014 in start (libdyld.dylib:x86_64+0x1014) 0x6030000117b4 is located 0 bytes to the right of 20-byte region [0x6030000117a0,0x6030000117b4) allocated by thread T0 here: #0 0x10586dcb2 in wrap__Znam (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x62cb2) #1 0x1093f3b3c in libdap::Vector::m_create_cardinal_data_buffer_for_type(unsigned int) Vector.cc:203 #2 0x109408c15 in libdap::Vector::val2buf(void*, bool) Vector.cc:1206 #3 0x1093f25e7 in libdap::Vector::m_duplicate(libdap::Vector const&) Vector.cc:116 #4 0x1093f6733 in libdap::Vector::Vector(libdap::Vector const&) Vector.cc:297 #5 0x109444385 in libdap::Array::Array(libdap::Array const&) Array.cc:164 #6 0x110b4a116 in agg_util::ArrayAggregationBase::ArrayAggregationBase(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&) ArrayAggregationBase.cc:50 #7 0x110b397d2 in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&, agg_util::Dimension const&) ArrayAggregateOnOuterDimension.cc:59 #8 0x110b39e34 in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&, agg_util::Dimension const&) ArrayAggregateOnOuterDimension.cc:61 #9 0x110a9a7ae in ncml_module::AggregationElement::processAggVarJoinNewForArray(libdap::DDS&, libdap::Array const&, agg_util::Dimension const&, std::__1::vector, std::__1::allocator > > const&) AggregationElement.cc:855 #10 0x110a67db0 in ncml_module::AggregationElement::processJoinNewOnAggVar(libdap::DDS*, std::__1::basic_string, std::__1::allocator > const&, libdap::DDS const&) AggregationElement.cc:801 #11 0x110a2d4d7 in ncml_module::AggregationElement::processJoinNew() AggregationElement.cc:420 #12 0x110a23320 in ncml_module::AggregationElement::handleEnd() AggregationElement.cc:217 #13 0x110e71b9f in ncml_module::NCMLParser::processEndNCMLElement(std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:1186 #14 0x110e7935b in ncml_module::NCMLParser::onEndElementWithNamespace(std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:324 #15 0x110fdd8c9 in ncmlSax2EndElementNs(void*, unsigned char const*, unsigned char const*, unsigned char const*) SaxParserWrapper.cc:242 #16 0x7fff597e1d8e in xmlParseEndTag2 (libxml2.2.dylib:x86_64+0x37d8e) #17 0x7fff597e0440 in xmlParseElement (libxml2.2.dylib:x86_64+0x36440) #18 0x7fff597e005a in xmlParseContent (libxml2.2.dylib:x86_64+0x3605a) #19 0x7fff597e03f1 in xmlParseElement (libxml2.2.dylib:x86_64+0x363f1) #20 0x7fff597e2b7a in xmlParseDocument (libxml2.2.dylib:x86_64+0x38b7a) #21 0x110fce9ae in ncml_module::SaxParserWrapper::parse(std::__1::basic_string, std::__1::allocator > const&) SaxParserWrapper.cc:338 #22 0x110e63d0b in ncml_module::NCMLParser::parseInto(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType, BESDapResponse*) NCMLParser.cc:185 #23 0x110edfaae in ncml_module::NCMLRequestHandler::ncml_build_dds(BESDataHandlerInterface&) NCMLRequestHandler.cc:260 #24 0x1052f9c8f in BESRequestHandlerList::execute_current(BESDataHandlerInterface&) BESRequestHandlerList.cc:273 #25 0x1052f80a4 in BESRequestHandlerList::execute_each(BESDataHandlerInterface&) BESRequestHandlerList.cc:167 #26 0x108e55048 in BESDDSResponseHandler::execute(BESDataHandlerInterface&) BESDDSResponseHandler.cc:107 #27 0x105712d5a in BESXMLInterface::execute_data_request_plan() BESXMLInterface.cc:285 #28 0x10516db8d in BESInterface::execute_request(std::__1::basic_string, std::__1::allocator > const&) BESInterface.cc:513 #29 0x1050d78d8 in StandAloneClient::executeCommand(std::__1::basic_string, std::__1::allocator > const&, int) StandAloneClient.cc:237 SUMMARY: AddressSanitizer: heap-buffer-overflow (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x4f3fd) in __asan_memcpy Shadow bytes around the buggy address: 0x1c06000022a0: 00 00 00 fa fa fa fd fd fd fa fa fa 00 00 00 fa 0x1c06000022b0: fa fa 00 00 00 fa fa fa fd fd fd fd fa fa fd fd 0x1c06000022c0: fd fd fa fa fd fd fd fd fa fa fd fd fd fd fa fa 0x1c06000022d0: fd fd fd fa fa fa 00 00 00 fa fa fa fd fd fd fa 0x1c06000022e0: fa fa 00 00 00 fa fa fa 00 00 00 fa fa fa 00 00 =>0x1c06000022f0: 00 fa fa fa 00 00[04]fa fa fa 00 00 00 fa fa fa 0x1c0600002300: 00 00 00 fa fa fa 00 00 04 fa fa fa 00 00 00 fa 0x1c0600002310: fa fa 00 00 00 fa fa fa 00 00 04 fa fa fa 00 00 0x1c0600002320: 00 fa fa fa 00 00 00 fa fa fa fa fa fa fa fa fa 0x1c0600002330: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c0600002340: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa Shadow byte legend (one shadow byte represents 8 application bytes): Addressable: 00 Partially addressable: 01 02 03 04 05 06 07 Heap left redzone: fa Freed heap region: fd Stack left redzone: f1 Stack mid redzone: f2 Stack right redzone: f3 Stack after return: f5 Stack use after scope: f8 Global redzone: f9 Global init order: f6 Poisoned by user: f7 Container overflow: fc Array cookie: ac Intra object redzone: bb ASan internal: fe Left alloca redzone: ca Right alloca redzone: cb ==76266==ABORTING /Users/jimg/src/opendap/hyrax_git/bes/modules/ncml_module/tests/testsuite.dir/at-groups/398/test-source: line 44: 76266 Abort trap: 6 besstandalone -c $abs_builddir/bes.conf -i ./test.bescmd stdout: ./aggregations.at:75: exit code was 134, expected 0 398. aggregations.at:75: 398. Comparing dds response for agg/joinNew_simple.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_simple_cons_1.ncml (aggregations.at:75): FAILED (aggregations.at:75) # -*- compilation -*- 399. aggregations.at:75: testing Comparing ddx response for agg/joinNew_simple.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_simple_cons_1.ncml ... ./aggregations.at:75: besstandalone -c $abs_builddir/bes.conf -i ./test.bescmd stderr: Width: 20 Name: V Width: 20 Name: V Width: 40 Name: V ================================================================= ==76267==ERROR: AddressSanitizer: heap-buffer-overflow on address 0x603000011784 at pc 0x000101f993fe bp 0x7ffeee3f96d0 sp 0x7ffeee3f8e80 READ of size 40 at 0x603000011784 thread T0 #0 0x101f993fd in __asan_memcpy (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x4f3fd) Provided dSYM: [/Users/jimg/src/opendap/hyrax_git/build/lib/libdap.25.dylib.dSYM/Contents/Resources/DWARF/libdap.25.dylib] does not match symbol owner 0x7f9d4d40bba0 #1 0x105b93f39 in libdap::Vector::val2buf(void*, bool) Vector.cc:1212 #2 0x105b7d5e7 in libdap::Vector::m_duplicate(libdap::Vector const&) Vector.cc:116 #3 0x105b81733 in libdap::Vector::Vector(libdap::Vector const&) Vector.cc:297 #4 0x105bcf385 in libdap::Array::Array(libdap::Array const&) Array.cc:164 #5 0x10cb988da in agg_util::ArrayAggregationBase::ArrayAggregationBase(agg_util::ArrayAggregationBase const&) ArrayAggregationBase.cc:56 #6 0x10cb87f84 in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(agg_util::ArrayAggregateOnOuterDimension const&) ArrayAggregateOnOuterDimension.cc:70 #7 0x10cb8835c in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(agg_util::ArrayAggregateOnOuterDimension const&) ArrayAggregateOnOuterDimension.cc:71 #8 0x10cb8889c in agg_util::ArrayAggregateOnOuterDimension::ptr_duplicate() ArrayAggregateOnOuterDimension.cc:85 #9 0x105a800fd in libdap::DDS::add_var(libdap::BaseType*) DDS.cc:607 #10 0x10caeade8 in ncml_module::AggregationElement::processAggVarJoinNewForArray(libdap::DDS&, libdap::Array const&, agg_util::Dimension const&, std::__1::vector, std::__1::allocator > > const&) AggregationElement.cc:867 #11 0x10cab5db0 in ncml_module::AggregationElement::processJoinNewOnAggVar(libdap::DDS*, std::__1::basic_string, std::__1::allocator > const&, libdap::DDS const&) AggregationElement.cc:801 #12 0x10ca7b4d7 in ncml_module::AggregationElement::processJoinNew() AggregationElement.cc:420 #13 0x10ca71320 in ncml_module::AggregationElement::handleEnd() AggregationElement.cc:217 #14 0x10cebfb9f in ncml_module::NCMLParser::processEndNCMLElement(std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:1186 #15 0x10cec735b in ncml_module::NCMLParser::onEndElementWithNamespace(std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:324 #16 0x10d02b8c9 in ncmlSax2EndElementNs(void*, unsigned char const*, unsigned char const*, unsigned char const*) SaxParserWrapper.cc:242 #17 0x7fff597e1d8e in xmlParseEndTag2 (libxml2.2.dylib:x86_64+0x37d8e) #18 0x7fff597e0440 in xmlParseElement (libxml2.2.dylib:x86_64+0x36440) #19 0x7fff597e005a in xmlParseContent (libxml2.2.dylib:x86_64+0x3605a) #20 0x7fff597e03f1 in xmlParseElement (libxml2.2.dylib:x86_64+0x363f1) #21 0x7fff597e2b7a in xmlParseDocument (libxml2.2.dylib:x86_64+0x38b7a) #22 0x10d01c9ae in ncml_module::SaxParserWrapper::parse(std::__1::basic_string, std::__1::allocator > const&) SaxParserWrapper.cc:338 #23 0x10ceb1d0b in ncml_module::NCMLParser::parseInto(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType, BESDapResponse*) NCMLParser.cc:185 #24 0x10cf2daae in ncml_module::NCMLRequestHandler::ncml_build_dds(BESDataHandlerInterface&) NCMLRequestHandler.cc:260 #25 0x101a38c8f in BESRequestHandlerList::execute_current(BESDataHandlerInterface&) BESRequestHandlerList.cc:273 #26 0x101a370a4 in BESRequestHandlerList::execute_each(BESDataHandlerInterface&) BESRequestHandlerList.cc:167 #27 0x10562a5dc in BESDDXResponseHandler::execute(BESDataHandlerInterface&) BESDDXResponseHandler.cc:122 #28 0x101e4fd5a in BESXMLInterface::execute_data_request_plan() BESXMLInterface.cc:285 #29 0x1018acb8d in BESInterface::execute_request(std::__1::basic_string, std::__1::allocator > const&) BESInterface.cc:513 #30 0x1018168d8 in StandAloneClient::executeCommand(std::__1::basic_string, std::__1::allocator > const&, int) StandAloneClient.cc:237 #31 0x1018143aa in StandAloneClient::executeCommands(std::__1::basic_ifstream >&, int) StandAloneClient.cc:349 #32 0x1017f9e6d in StandAloneApp::run() StandAloneApp.cc:251 #33 0x101b1cc24 in BESApp::main(int, char**) BESApp.cc:58 #34 0x1017fd12e in main StandAloneApp.cc:345 #35 0x7fff59ad3014 in start (libdyld.dylib:x86_64+0x1014) 0x603000011784 is located 0 bytes to the right of 20-byte region [0x603000011770,0x603000011784) allocated by thread T0 here: #0 0x101faccb2 in wrap__Znam (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x62cb2) #1 0x105b7eb3c in libdap::Vector::m_create_cardinal_data_buffer_for_type(unsigned int) Vector.cc:203 #2 0x105b93c15 in libdap::Vector::val2buf(void*, bool) Vector.cc:1206 #3 0x105b7d5e7 in libdap::Vector::m_duplicate(libdap::Vector const&) Vector.cc:116 #4 0x105b81733 in libdap::Vector::Vector(libdap::Vector const&) Vector.cc:297 #5 0x105bcf385 in libdap::Array::Array(libdap::Array const&) Array.cc:164 #6 0x10cb98116 in agg_util::ArrayAggregationBase::ArrayAggregationBase(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&) ArrayAggregationBase.cc:50 #7 0x10cb877d2 in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&, agg_util::Dimension const&) ArrayAggregateOnOuterDimension.cc:59 #8 0x10cb87e34 in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&, agg_util::Dimension const&) ArrayAggregateOnOuterDimension.cc:61 #9 0x10cae87ae in ncml_module::AggregationElement::processAggVarJoinNewForArray(libdap::DDS&, libdap::Array const&, agg_util::Dimension const&, std::__1::vector, std::__1::allocator > > const&) AggregationElement.cc:855 #10 0x10cab5db0 in ncml_module::AggregationElement::processJoinNewOnAggVar(libdap::DDS*, std::__1::basic_string, std::__1::allocator > const&, libdap::DDS const&) AggregationElement.cc:801 #11 0x10ca7b4d7 in ncml_module::AggregationElement::processJoinNew() AggregationElement.cc:420 #12 0x10ca71320 in ncml_module::AggregationElement::handleEnd() AggregationElement.cc:217 #13 0x10cebfb9f in ncml_module::NCMLParser::processEndNCMLElement(std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:1186 #14 0x10cec735b in ncml_module::NCMLParser::onEndElementWithNamespace(std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:324 #15 0x10d02b8c9 in ncmlSax2EndElementNs(void*, unsigned char const*, unsigned char const*, unsigned char const*) SaxParserWrapper.cc:242 #16 0x7fff597e1d8e in xmlParseEndTag2 (libxml2.2.dylib:x86_64+0x37d8e) #17 0x7fff597e0440 in xmlParseElement (libxml2.2.dylib:x86_64+0x36440) #18 0x7fff597e005a in xmlParseContent (libxml2.2.dylib:x86_64+0x3605a) #19 0x7fff597e03f1 in xmlParseElement (libxml2.2.dylib:x86_64+0x363f1) #20 0x7fff597e2b7a in xmlParseDocument (libxml2.2.dylib:x86_64+0x38b7a) #21 0x10d01c9ae in ncml_module::SaxParserWrapper::parse(std::__1::basic_string, std::__1::allocator > const&) SaxParserWrapper.cc:338 #22 0x10ceb1d0b in ncml_module::NCMLParser::parseInto(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType, BESDapResponse*) NCMLParser.cc:185 #23 0x10cf2daae in ncml_module::NCMLRequestHandler::ncml_build_dds(BESDataHandlerInterface&) NCMLRequestHandler.cc:260 #24 0x101a38c8f in BESRequestHandlerList::execute_current(BESDataHandlerInterface&) BESRequestHandlerList.cc:273 #25 0x101a370a4 in BESRequestHandlerList::execute_each(BESDataHandlerInterface&) BESRequestHandlerList.cc:167 #26 0x10562a5dc in BESDDXResponseHandler::execute(BESDataHandlerInterface&) BESDDXResponseHandler.cc:122 #27 0x101e4fd5a in BESXMLInterface::execute_data_request_plan() BESXMLInterface.cc:285 #28 0x1018acb8d in BESInterface::execute_request(std::__1::basic_string, std::__1::allocator > const&) BESInterface.cc:513 #29 0x1018168d8 in StandAloneClient::executeCommand(std::__1::basic_string, std::__1::allocator > const&, int) StandAloneClient.cc:237 SUMMARY: AddressSanitizer: heap-buffer-overflow (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x4f3fd) in __asan_memcpy Shadow bytes around the buggy address: 0x1c06000022a0: fd fd fd fa fa fa 00 00 00 fa fa fa 00 00 00 fa 0x1c06000022b0: fa fa fd fd fd fd fa fa fd fd fd fd fa fa fd fd 0x1c06000022c0: fd fd fa fa fd fd fd fd fa fa fd fd fd fa fa fa 0x1c06000022d0: 00 00 00 fa fa fa fd fd fd fa fa fa 00 00 00 fa 0x1c06000022e0: fa fa 00 00 00 fa fa fa 00 00 00 fa fa fa 00 00 =>0x1c06000022f0:[04]fa fa fa 00 00 00 fa fa fa 00 00 00 fa fa fa 0x1c0600002300: 00 00 04 fa fa fa 00 00 00 fa fa fa 00 00 00 fa 0x1c0600002310: fa fa 00 00 04 fa fa fa 00 00 00 fa fa fa 00 00 0x1c0600002320: 00 fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c0600002330: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c0600002340: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa Shadow byte legend (one shadow byte represents 8 application bytes): Addressable: 00 Partially addressable: 01 02 03 04 05 06 07 Heap left redzone: fa Freed heap region: fd Stack left redzone: f1 Stack mid redzone: f2 Stack right redzone: f3 Stack after return: f5 Stack use after scope: f8 Global redzone: f9 Global init order: f6 Poisoned by user: f7 Container overflow: fc Array cookie: ac Intra object redzone: bb ASan internal: fe Left alloca redzone: ca Right alloca redzone: cb ==76267==ABORTING /Users/jimg/src/opendap/hyrax_git/bes/modules/ncml_module/tests/testsuite.dir/at-groups/399/test-source: line 44: 76267 Abort trap: 6 besstandalone -c $abs_builddir/bes.conf -i ./test.bescmd stdout: ./aggregations.at:75: exit code was 134, expected 0 399. aggregations.at:75: 399. Comparing ddx response for agg/joinNew_simple.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_simple_cons_1.ncml (aggregations.at:75): FAILED (aggregations.at:75) # -*- compilation -*- 400. aggregations.at:75: testing Comparing dods response for agg/joinNew_simple.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_simple_cons_1.ncml ... ./aggregations.at:75: besstandalone -c $abs_builddir/bes.conf -i ./test.bescmd stderr: Width: 20 Name: V Width: 20 Name: V Width: 40 Name: V ================================================================= ==76296==ERROR: AddressSanitizer: heap-buffer-overflow on address 0x603000011784 at pc 0x000104a253fe bp 0x7ffeeb9699b0 sp 0x7ffeeb969160 READ of size 40 at 0x603000011784 thread T0 #0 0x104a253fd in __asan_memcpy (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x4f3fd) Provided dSYM: [/Users/jimg/src/opendap/hyrax_git/build/lib/libdap.25.dylib.dSYM/Contents/Resources/DWARF/libdap.25.dylib] does not match symbol owner 0x7fe14da03b40 #1 0x1085dbf39 in libdap::Vector::val2buf(void*, bool) Vector.cc:1212 #2 0x1085c55e7 in libdap::Vector::m_duplicate(libdap::Vector const&) Vector.cc:116 #3 0x1085c9733 in libdap::Vector::Vector(libdap::Vector const&) Vector.cc:297 #4 0x108617385 in libdap::Array::Array(libdap::Array const&) Array.cc:164 #5 0x1100438da in agg_util::ArrayAggregationBase::ArrayAggregationBase(agg_util::ArrayAggregationBase const&) ArrayAggregationBase.cc:56 #6 0x110032f84 in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(agg_util::ArrayAggregateOnOuterDimension const&) ArrayAggregateOnOuterDimension.cc:70 #7 0x11003335c in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(agg_util::ArrayAggregateOnOuterDimension const&) ArrayAggregateOnOuterDimension.cc:71 #8 0x11003389c in agg_util::ArrayAggregateOnOuterDimension::ptr_duplicate() ArrayAggregateOnOuterDimension.cc:85 #9 0x1084c80fd in libdap::DDS::add_var(libdap::BaseType*) DDS.cc:607 #10 0x10ff95de8 in ncml_module::AggregationElement::processAggVarJoinNewForArray(libdap::DDS&, libdap::Array const&, agg_util::Dimension const&, std::__1::vector, std::__1::allocator > > const&) AggregationElement.cc:867 #11 0x10ff60db0 in ncml_module::AggregationElement::processJoinNewOnAggVar(libdap::DDS*, std::__1::basic_string, std::__1::allocator > const&, libdap::DDS const&) AggregationElement.cc:801 #12 0x10ff264d7 in ncml_module::AggregationElement::processJoinNew() AggregationElement.cc:420 #13 0x10ff1c320 in ncml_module::AggregationElement::handleEnd() AggregationElement.cc:217 #14 0x11036ab9f in ncml_module::NCMLParser::processEndNCMLElement(std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:1186 #15 0x11037235b in ncml_module::NCMLParser::onEndElementWithNamespace(std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:324 #16 0x1104d68c9 in ncmlSax2EndElementNs(void*, unsigned char const*, unsigned char const*, unsigned char const*) SaxParserWrapper.cc:242 #17 0x7fff597e1d8e in xmlParseEndTag2 (libxml2.2.dylib:x86_64+0x37d8e) #18 0x7fff597e0440 in xmlParseElement (libxml2.2.dylib:x86_64+0x36440) #19 0x7fff597e005a in xmlParseContent (libxml2.2.dylib:x86_64+0x3605a) #20 0x7fff597e03f1 in xmlParseElement (libxml2.2.dylib:x86_64+0x363f1) #21 0x7fff597e2b7a in xmlParseDocument (libxml2.2.dylib:x86_64+0x38b7a) #22 0x1104c79ae in ncml_module::SaxParserWrapper::parse(std::__1::basic_string, std::__1::allocator > const&) SaxParserWrapper.cc:338 #23 0x11035cd0b in ncml_module::NCMLParser::parseInto(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType, BESDapResponse*) NCMLParser.cc:185 #24 0x1103de346 in ncml_module::NCMLRequestHandler::ncml_build_data(BESDataHandlerInterface&) NCMLRequestHandler.cc:297 #25 0x1044cbc8f in BESRequestHandlerList::execute_current(BESDataHandlerInterface&) BESRequestHandlerList.cc:273 #26 0x1044ca0a4 in BESRequestHandlerList::execute_each(BESDataHandlerInterface&) BESRequestHandlerList.cc:167 #27 0x10803288c in BESDataResponseHandler::execute(BESDataHandlerInterface&) BESDataResponseHandler.cc:148 #28 0x1048e1d5a in BESXMLInterface::execute_data_request_plan() BESXMLInterface.cc:285 #29 0x10433fb8d in BESInterface::execute_request(std::__1::basic_string, std::__1::allocator > const&) BESInterface.cc:513 #30 0x1042a68d8 in StandAloneClient::executeCommand(std::__1::basic_string, std::__1::allocator > const&, int) StandAloneClient.cc:237 #31 0x1042a43aa in StandAloneClient::executeCommands(std::__1::basic_ifstream >&, int) StandAloneClient.cc:349 #32 0x104289e6d in StandAloneApp::run() StandAloneApp.cc:251 #33 0x1045afc24 in BESApp::main(int, char**) BESApp.cc:58 #34 0x10428d12e in main StandAloneApp.cc:345 #35 0x7fff59ad3014 in start (libdyld.dylib:x86_64+0x1014) 0x603000011784 is located 0 bytes to the right of 20-byte region [0x603000011770,0x603000011784) allocated by thread T0 here: #0 0x104a38cb2 in wrap__Znam (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x62cb2) #1 0x1085c6b3c in libdap::Vector::m_create_cardinal_data_buffer_for_type(unsigned int) Vector.cc:203 #2 0x1085dbc15 in libdap::Vector::val2buf(void*, bool) Vector.cc:1206 #3 0x1085c55e7 in libdap::Vector::m_duplicate(libdap::Vector const&) Vector.cc:116 #4 0x1085c9733 in libdap::Vector::Vector(libdap::Vector const&) Vector.cc:297 #5 0x108617385 in libdap::Array::Array(libdap::Array const&) Array.cc:164 #6 0x110043116 in agg_util::ArrayAggregationBase::ArrayAggregationBase(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&) ArrayAggregationBase.cc:50 #7 0x1100327d2 in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&, agg_util::Dimension const&) ArrayAggregateOnOuterDimension.cc:59 #8 0x110032e34 in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&, agg_util::Dimension const&) ArrayAggregateOnOuterDimension.cc:61 #9 0x10ff937ae in ncml_module::AggregationElement::processAggVarJoinNewForArray(libdap::DDS&, libdap::Array const&, agg_util::Dimension const&, std::__1::vector, std::__1::allocator > > const&) AggregationElement.cc:855 #10 0x10ff60db0 in ncml_module::AggregationElement::processJoinNewOnAggVar(libdap::DDS*, std::__1::basic_string, std::__1::allocator > const&, libdap::DDS const&) AggregationElement.cc:801 #11 0x10ff264d7 in ncml_module::AggregationElement::processJoinNew() AggregationElement.cc:420 #12 0x10ff1c320 in ncml_module::AggregationElement::handleEnd() AggregationElement.cc:217 #13 0x11036ab9f in ncml_module::NCMLParser::processEndNCMLElement(std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:1186 #14 0x11037235b in ncml_module::NCMLParser::onEndElementWithNamespace(std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:324 #15 0x1104d68c9 in ncmlSax2EndElementNs(void*, unsigned char const*, unsigned char const*, unsigned char const*) SaxParserWrapper.cc:242 #16 0x7fff597e1d8e in xmlParseEndTag2 (libxml2.2.dylib:x86_64+0x37d8e) #17 0x7fff597e0440 in xmlParseElement (libxml2.2.dylib:x86_64+0x36440) #18 0x7fff597e005a in xmlParseContent (libxml2.2.dylib:x86_64+0x3605a) #19 0x7fff597e03f1 in xmlParseElement (libxml2.2.dylib:x86_64+0x363f1) #20 0x7fff597e2b7a in xmlParseDocument (libxml2.2.dylib:x86_64+0x38b7a) #21 0x1104c79ae in ncml_module::SaxParserWrapper::parse(std::__1::basic_string, std::__1::allocator > const&) SaxParserWrapper.cc:338 #22 0x11035cd0b in ncml_module::NCMLParser::parseInto(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType, BESDapResponse*) NCMLParser.cc:185 #23 0x1103de346 in ncml_module::NCMLRequestHandler::ncml_build_data(BESDataHandlerInterface&) NCMLRequestHandler.cc:297 #24 0x1044cbc8f in BESRequestHandlerList::execute_current(BESDataHandlerInterface&) BESRequestHandlerList.cc:273 #25 0x1044ca0a4 in BESRequestHandlerList::execute_each(BESDataHandlerInterface&) BESRequestHandlerList.cc:167 #26 0x10803288c in BESDataResponseHandler::execute(BESDataHandlerInterface&) BESDataResponseHandler.cc:148 #27 0x1048e1d5a in BESXMLInterface::execute_data_request_plan() BESXMLInterface.cc:285 #28 0x10433fb8d in BESInterface::execute_request(std::__1::basic_string, std::__1::allocator > const&) BESInterface.cc:513 #29 0x1042a68d8 in StandAloneClient::executeCommand(std::__1::basic_string, std::__1::allocator > const&, int) StandAloneClient.cc:237 SUMMARY: AddressSanitizer: heap-buffer-overflow (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x4f3fd) in __asan_memcpy Shadow bytes around the buggy address: 0x1c06000022a0: fd fd fd fa fa fa 00 00 00 fa fa fa 00 00 00 fa 0x1c06000022b0: fa fa fd fd fd fd fa fa fd fd fd fd fa fa fd fd 0x1c06000022c0: fd fd fa fa fd fd fd fd fa fa fd fd fd fa fa fa 0x1c06000022d0: 00 00 00 fa fa fa fd fd fd fa fa fa 00 00 00 fa 0x1c06000022e0: fa fa 00 00 00 fa fa fa 00 00 00 fa fa fa 00 00 =>0x1c06000022f0:[04]fa fa fa 00 00 00 fa fa fa 00 00 00 fa fa fa 0x1c0600002300: 00 00 04 fa fa fa 00 00 00 fa fa fa 00 00 00 fa 0x1c0600002310: fa fa 00 00 04 fa fa fa 00 00 00 fa fa fa 00 00 0x1c0600002320: 00 fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c0600002330: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c0600002340: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa Shadow byte legend (one shadow byte represents 8 application bytes): Addressable: 00 Partially addressable: 01 02 03 04 05 06 07 Heap left redzone: fa Freed heap region: fd Stack left redzone: f1 Stack mid redzone: f2 Stack right redzone: f3 Stack after return: f5 Stack use after scope: f8 Global redzone: f9 Global init order: f6 Poisoned by user: f7 Container overflow: fc Array cookie: ac Intra object redzone: bb ASan internal: fe Left alloca redzone: ca Right alloca redzone: cb ==76296==ABORTING /Users/jimg/src/opendap/hyrax_git/bes/modules/ncml_module/tests/testsuite.dir/at-groups/400/test-source: line 44: 76296 Abort trap: 6 besstandalone -c $abs_builddir/bes.conf -i ./test.bescmd stdout: ./aggregations.at:75: exit code was 134, expected 0 400. aggregations.at:75: 400. Comparing dods response for agg/joinNew_simple.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_simple_cons_1.ncml (aggregations.at:75): FAILED (aggregations.at:75) # -*- compilation -*- 401. aggregations.at:76: testing Comparing das response for agg/joinNew_simple.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_simple_cons_2.ncml ... ./aggregations.at:76: besstandalone -c $abs_builddir/bes.conf -i ./test.bescmd stderr: Width: 20 Name: V Width: 20 Name: V Width: 40 Name: V ================================================================= ==76345==ERROR: AddressSanitizer: heap-buffer-overflow on address 0x6030000117b4 at pc 0x000105f803fe bp 0x7ffeea415810 sp 0x7ffeea414fc0 READ of size 40 at 0x6030000117b4 thread T0 #0 0x105f803fd in __asan_memcpy (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x4f3fd) Provided dSYM: [/Users/jimg/src/opendap/hyrax_git/build/lib/libdap.25.dylib.dSYM/Contents/Resources/DWARF/libdap.25.dylib] does not match symbol owner 0x7f98bd809180 #1 0x109b93f39 in libdap::Vector::val2buf(void*, bool) Vector.cc:1212 #2 0x109b7d5e7 in libdap::Vector::m_duplicate(libdap::Vector const&) Vector.cc:116 #3 0x109b81733 in libdap::Vector::Vector(libdap::Vector const&) Vector.cc:297 #4 0x109bcf385 in libdap::Array::Array(libdap::Array const&) Array.cc:164 #5 0x1115cb8da in agg_util::ArrayAggregationBase::ArrayAggregationBase(agg_util::ArrayAggregationBase const&) ArrayAggregationBase.cc:56 #6 0x1115baf84 in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(agg_util::ArrayAggregateOnOuterDimension const&) ArrayAggregateOnOuterDimension.cc:70 #7 0x1115bb35c in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(agg_util::ArrayAggregateOnOuterDimension const&) ArrayAggregateOnOuterDimension.cc:71 #8 0x1115bb89c in agg_util::ArrayAggregateOnOuterDimension::ptr_duplicate() ArrayAggregateOnOuterDimension.cc:85 #9 0x109a800fd in libdap::DDS::add_var(libdap::BaseType*) DDS.cc:607 #10 0x11151dde8 in ncml_module::AggregationElement::processAggVarJoinNewForArray(libdap::DDS&, libdap::Array const&, agg_util::Dimension const&, std::__1::vector, std::__1::allocator > > const&) AggregationElement.cc:867 #11 0x1114e8db0 in ncml_module::AggregationElement::processJoinNewOnAggVar(libdap::DDS*, std::__1::basic_string, std::__1::allocator > const&, libdap::DDS const&) AggregationElement.cc:801 #12 0x1114ae4d7 in ncml_module::AggregationElement::processJoinNew() AggregationElement.cc:420 #13 0x1114a4320 in ncml_module::AggregationElement::handleEnd() AggregationElement.cc:217 #14 0x1118f2b9f in ncml_module::NCMLParser::processEndNCMLElement(std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:1186 #15 0x1118fa35b in ncml_module::NCMLParser::onEndElementWithNamespace(std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:324 #16 0x111a5e8c9 in ncmlSax2EndElementNs(void*, unsigned char const*, unsigned char const*, unsigned char const*) SaxParserWrapper.cc:242 #17 0x7fff597e1d8e in xmlParseEndTag2 (libxml2.2.dylib:x86_64+0x37d8e) #18 0x7fff597e0440 in xmlParseElement (libxml2.2.dylib:x86_64+0x36440) #19 0x7fff597e005a in xmlParseContent (libxml2.2.dylib:x86_64+0x3605a) #20 0x7fff597e03f1 in xmlParseElement (libxml2.2.dylib:x86_64+0x363f1) #21 0x7fff597e2b7a in xmlParseDocument (libxml2.2.dylib:x86_64+0x38b7a) #22 0x111a4f9ae in ncml_module::SaxParserWrapper::parse(std::__1::basic_string, std::__1::allocator > const&) SaxParserWrapper.cc:338 #23 0x1118e4d0b in ncml_module::NCMLParser::parseInto(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType, BESDapResponse*) NCMLParser.cc:185 #24 0x1118de1e7 in ncml_module::NCMLParser::parse(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType) NCMLParser.cc:155 #25 0x111958841 in ncml_module::NCMLRequestHandler::ncml_build_das(BESDataHandlerInterface&) NCMLRequestHandler.cc:172 #26 0x105a1fc8f in BESRequestHandlerList::execute_current(BESDataHandlerInterface&) BESRequestHandlerList.cc:273 #27 0x105a1e0a4 in BESRequestHandlerList::execute_each(BESDataHandlerInterface&) BESRequestHandlerList.cc:167 #28 0x109621ff0 in BESDASResponseHandler::execute(BESDataHandlerInterface&) BESDASResponseHandler.cc:95 #29 0x105e3bd5a in BESXMLInterface::execute_data_request_plan() BESXMLInterface.cc:285 #30 0x105893b8d in BESInterface::execute_request(std::__1::basic_string, std::__1::allocator > const&) BESInterface.cc:513 #31 0x1057fa8d8 in StandAloneClient::executeCommand(std::__1::basic_string, std::__1::allocator > const&, int) StandAloneClient.cc:237 #32 0x1057f83aa in StandAloneClient::executeCommands(std::__1::basic_ifstream >&, int) StandAloneClient.cc:349 #33 0x1057dde6d in StandAloneApp::run() StandAloneApp.cc:251 #34 0x105b03c24 in BESApp::main(int, char**) BESApp.cc:58 #35 0x1057e112e in main StandAloneApp.cc:345 #36 0x7fff59ad3014 in start (libdyld.dylib:x86_64+0x1014) 0x6030000117b4 is located 0 bytes to the right of 20-byte region [0x6030000117a0,0x6030000117b4) allocated by thread T0 here: #0 0x105f93cb2 in wrap__Znam (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x62cb2) #1 0x109b7eb3c in libdap::Vector::m_create_cardinal_data_buffer_for_type(unsigned int) Vector.cc:203 #2 0x109b93c15 in libdap::Vector::val2buf(void*, bool) Vector.cc:1206 #3 0x109b7d5e7 in libdap::Vector::m_duplicate(libdap::Vector const&) Vector.cc:116 #4 0x109b81733 in libdap::Vector::Vector(libdap::Vector const&) Vector.cc:297 #5 0x109bcf385 in libdap::Array::Array(libdap::Array const&) Array.cc:164 #6 0x1115cb116 in agg_util::ArrayAggregationBase::ArrayAggregationBase(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&) ArrayAggregationBase.cc:50 #7 0x1115ba7d2 in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&, agg_util::Dimension const&) ArrayAggregateOnOuterDimension.cc:59 #8 0x1115bae34 in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&, agg_util::Dimension const&) ArrayAggregateOnOuterDimension.cc:61 #9 0x11151b7ae in ncml_module::AggregationElement::processAggVarJoinNewForArray(libdap::DDS&, libdap::Array const&, agg_util::Dimension const&, std::__1::vector, std::__1::allocator > > const&) AggregationElement.cc:855 #10 0x1114e8db0 in ncml_module::AggregationElement::processJoinNewOnAggVar(libdap::DDS*, std::__1::basic_string, std::__1::allocator > const&, libdap::DDS const&) AggregationElement.cc:801 #11 0x1114ae4d7 in ncml_module::AggregationElement::processJoinNew() AggregationElement.cc:420 #12 0x1114a4320 in ncml_module::AggregationElement::handleEnd() AggregationElement.cc:217 #13 0x1118f2b9f in ncml_module::NCMLParser::processEndNCMLElement(std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:1186 #14 0x1118fa35b in ncml_module::NCMLParser::onEndElementWithNamespace(std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:324 #15 0x111a5e8c9 in ncmlSax2EndElementNs(void*, unsigned char const*, unsigned char const*, unsigned char const*) SaxParserWrapper.cc:242 #16 0x7fff597e1d8e in xmlParseEndTag2 (libxml2.2.dylib:x86_64+0x37d8e) #17 0x7fff597e0440 in xmlParseElement (libxml2.2.dylib:x86_64+0x36440) #18 0x7fff597e005a in xmlParseContent (libxml2.2.dylib:x86_64+0x3605a) #19 0x7fff597e03f1 in xmlParseElement (libxml2.2.dylib:x86_64+0x363f1) #20 0x7fff597e2b7a in xmlParseDocument (libxml2.2.dylib:x86_64+0x38b7a) #21 0x111a4f9ae in ncml_module::SaxParserWrapper::parse(std::__1::basic_string, std::__1::allocator > const&) SaxParserWrapper.cc:338 #22 0x1118e4d0b in ncml_module::NCMLParser::parseInto(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType, BESDapResponse*) NCMLParser.cc:185 #23 0x1118de1e7 in ncml_module::NCMLParser::parse(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType) NCMLParser.cc:155 #24 0x111958841 in ncml_module::NCMLRequestHandler::ncml_build_das(BESDataHandlerInterface&) NCMLRequestHandler.cc:172 #25 0x105a1fc8f in BESRequestHandlerList::execute_current(BESDataHandlerInterface&) BESRequestHandlerList.cc:273 #26 0x105a1e0a4 in BESRequestHandlerList::execute_each(BESDataHandlerInterface&) BESRequestHandlerList.cc:167 #27 0x109621ff0 in BESDASResponseHandler::execute(BESDataHandlerInterface&) BESDASResponseHandler.cc:95 #28 0x105e3bd5a in BESXMLInterface::execute_data_request_plan() BESXMLInterface.cc:285 #29 0x105893b8d in BESInterface::execute_request(std::__1::basic_string, std::__1::allocator > const&) BESInterface.cc:513 SUMMARY: AddressSanitizer: heap-buffer-overflow (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x4f3fd) in __asan_memcpy Shadow bytes around the buggy address: 0x1c06000022a0: 00 00 00 fa fa fa fd fd fd fa fa fa 00 00 00 fa 0x1c06000022b0: fa fa 00 00 00 fa fa fa fd fd fd fd fa fa fd fd 0x1c06000022c0: fd fd fa fa fd fd fd fd fa fa fd fd fd fd fa fa 0x1c06000022d0: fd fd fd fa fa fa 00 00 00 fa fa fa fd fd fd fa 0x1c06000022e0: fa fa 00 00 00 fa fa fa 00 00 00 fa fa fa 00 00 =>0x1c06000022f0: 00 fa fa fa 00 00[04]fa fa fa 00 00 00 fa fa fa 0x1c0600002300: 00 00 00 fa fa fa 00 00 04 fa fa fa 00 00 00 fa 0x1c0600002310: fa fa 00 00 00 fa fa fa 00 00 04 fa fa fa 00 00 0x1c0600002320: 00 fa fa fa 00 00 00 fa fa fa fa fa fa fa fa fa 0x1c0600002330: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c0600002340: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa Shadow byte legend (one shadow byte represents 8 application bytes): Addressable: 00 Partially addressable: 01 02 03 04 05 06 07 Heap left redzone: fa Freed heap region: fd Stack left redzone: f1 Stack mid redzone: f2 Stack right redzone: f3 Stack after return: f5 Stack use after scope: f8 Global redzone: f9 Global init order: f6 Poisoned by user: f7 Container overflow: fc Array cookie: ac Intra object redzone: bb ASan internal: fe Left alloca redzone: ca Right alloca redzone: cb ==76345==ABORTING /Users/jimg/src/opendap/hyrax_git/bes/modules/ncml_module/tests/testsuite.dir/at-groups/401/test-source: line 44: 76345 Abort trap: 6 besstandalone -c $abs_builddir/bes.conf -i ./test.bescmd stdout: ./aggregations.at:76: exit code was 134, expected 0 401. aggregations.at:76: 401. Comparing das response for agg/joinNew_simple.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_simple_cons_2.ncml (aggregations.at:76): FAILED (aggregations.at:76) # -*- compilation -*- 402. aggregations.at:76: testing Comparing dds response for agg/joinNew_simple.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_simple_cons_2.ncml ... ./aggregations.at:76: besstandalone -c $abs_builddir/bes.conf -i ./test.bescmd stderr: Width: 20 Name: V Width: 20 Name: V Width: 40 Name: V ================================================================= ==76378==ERROR: AddressSanitizer: heap-buffer-overflow on address 0x6030000117b4 at pc 0x00010f5a03fe bp 0x7ffee0df6b30 sp 0x7ffee0df62e0 READ of size 40 at 0x6030000117b4 thread T0 #0 0x10f5a03fd in __asan_memcpy (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x4f3fd) Provided dSYM: [/Users/jimg/src/opendap/hyrax_git/build/lib/libdap.25.dylib.dSYM/Contents/Resources/DWARF/libdap.25.dylib] does not match symbol owner 0x7ff255706380 #1 0x113193f39 in libdap::Vector::val2buf(void*, bool) Vector.cc:1212 #2 0x11317d5e7 in libdap::Vector::m_duplicate(libdap::Vector const&) Vector.cc:116 #3 0x113181733 in libdap::Vector::Vector(libdap::Vector const&) Vector.cc:297 #4 0x1131cf385 in libdap::Array::Array(libdap::Array const&) Array.cc:164 #5 0x11a7038da in agg_util::ArrayAggregationBase::ArrayAggregationBase(agg_util::ArrayAggregationBase const&) ArrayAggregationBase.cc:56 #6 0x11a6f2f84 in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(agg_util::ArrayAggregateOnOuterDimension const&) ArrayAggregateOnOuterDimension.cc:70 #7 0x11a6f335c in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(agg_util::ArrayAggregateOnOuterDimension const&) ArrayAggregateOnOuterDimension.cc:71 #8 0x11a6f389c in agg_util::ArrayAggregateOnOuterDimension::ptr_duplicate() ArrayAggregateOnOuterDimension.cc:85 #9 0x1130800fd in libdap::DDS::add_var(libdap::BaseType*) DDS.cc:607 #10 0x11a655de8 in ncml_module::AggregationElement::processAggVarJoinNewForArray(libdap::DDS&, libdap::Array const&, agg_util::Dimension const&, std::__1::vector, std::__1::allocator > > const&) AggregationElement.cc:867 #11 0x11a620db0 in ncml_module::AggregationElement::processJoinNewOnAggVar(libdap::DDS*, std::__1::basic_string, std::__1::allocator > const&, libdap::DDS const&) AggregationElement.cc:801 #12 0x11a5e64d7 in ncml_module::AggregationElement::processJoinNew() AggregationElement.cc:420 #13 0x11a5dc320 in ncml_module::AggregationElement::handleEnd() AggregationElement.cc:217 #14 0x11aa2ab9f in ncml_module::NCMLParser::processEndNCMLElement(std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:1186 #15 0x11aa3235b in ncml_module::NCMLParser::onEndElementWithNamespace(std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:324 #16 0x11ab968c9 in ncmlSax2EndElementNs(void*, unsigned char const*, unsigned char const*, unsigned char const*) SaxParserWrapper.cc:242 #17 0x7fff597e1d8e in xmlParseEndTag2 (libxml2.2.dylib:x86_64+0x37d8e) #18 0x7fff597e0440 in xmlParseElement (libxml2.2.dylib:x86_64+0x36440) #19 0x7fff597e005a in xmlParseContent (libxml2.2.dylib:x86_64+0x3605a) #20 0x7fff597e03f1 in xmlParseElement (libxml2.2.dylib:x86_64+0x363f1) #21 0x7fff597e2b7a in xmlParseDocument (libxml2.2.dylib:x86_64+0x38b7a) #22 0x11ab879ae in ncml_module::SaxParserWrapper::parse(std::__1::basic_string, std::__1::allocator > const&) SaxParserWrapper.cc:338 #23 0x11aa1cd0b in ncml_module::NCMLParser::parseInto(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType, BESDapResponse*) NCMLParser.cc:185 #24 0x11aa98aae in ncml_module::NCMLRequestHandler::ncml_build_dds(BESDataHandlerInterface&) NCMLRequestHandler.cc:260 #25 0x10f041c8f in BESRequestHandlerList::execute_current(BESDataHandlerInterface&) BESRequestHandlerList.cc:273 #26 0x10f0400a4 in BESRequestHandlerList::execute_each(BESDataHandlerInterface&) BESRequestHandlerList.cc:167 #27 0x112c28048 in BESDDSResponseHandler::execute(BESDataHandlerInterface&) BESDDSResponseHandler.cc:107 #28 0x10f458d5a in BESXMLInterface::execute_data_request_plan() BESXMLInterface.cc:285 #29 0x10eeb5b8d in BESInterface::execute_request(std::__1::basic_string, std::__1::allocator > const&) BESInterface.cc:513 #30 0x10ee198d8 in StandAloneClient::executeCommand(std::__1::basic_string, std::__1::allocator > const&, int) StandAloneClient.cc:237 #31 0x10ee173aa in StandAloneClient::executeCommands(std::__1::basic_ifstream >&, int) StandAloneClient.cc:349 #32 0x10edfce6d in StandAloneApp::run() StandAloneApp.cc:251 #33 0x10f125c24 in BESApp::main(int, char**) BESApp.cc:58 #34 0x10ee0012e in main StandAloneApp.cc:345 #35 0x7fff59ad3014 in start (libdyld.dylib:x86_64+0x1014) 0x6030000117b4 is located 0 bytes to the right of 20-byte region [0x6030000117a0,0x6030000117b4) allocated by thread T0 here: #0 0x10f5b3cb2 in wrap__Znam (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x62cb2) #1 0x11317eb3c in libdap::Vector::m_create_cardinal_data_buffer_for_type(unsigned int) Vector.cc:203 #2 0x113193c15 in libdap::Vector::val2buf(void*, bool) Vector.cc:1206 #3 0x11317d5e7 in libdap::Vector::m_duplicate(libdap::Vector const&) Vector.cc:116 #4 0x113181733 in libdap::Vector::Vector(libdap::Vector const&) Vector.cc:297 #5 0x1131cf385 in libdap::Array::Array(libdap::Array const&) Array.cc:164 #6 0x11a703116 in agg_util::ArrayAggregationBase::ArrayAggregationBase(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&) ArrayAggregationBase.cc:50 #7 0x11a6f27d2 in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&, agg_util::Dimension const&) ArrayAggregateOnOuterDimension.cc:59 #8 0x11a6f2e34 in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&, agg_util::Dimension const&) ArrayAggregateOnOuterDimension.cc:61 #9 0x11a6537ae in ncml_module::AggregationElement::processAggVarJoinNewForArray(libdap::DDS&, libdap::Array const&, agg_util::Dimension const&, std::__1::vector, std::__1::allocator > > const&) AggregationElement.cc:855 #10 0x11a620db0 in ncml_module::AggregationElement::processJoinNewOnAggVar(libdap::DDS*, std::__1::basic_string, std::__1::allocator > const&, libdap::DDS const&) AggregationElement.cc:801 #11 0x11a5e64d7 in ncml_module::AggregationElement::processJoinNew() AggregationElement.cc:420 #12 0x11a5dc320 in ncml_module::AggregationElement::handleEnd() AggregationElement.cc:217 #13 0x11aa2ab9f in ncml_module::NCMLParser::processEndNCMLElement(std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:1186 #14 0x11aa3235b in ncml_module::NCMLParser::onEndElementWithNamespace(std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:324 #15 0x11ab968c9 in ncmlSax2EndElementNs(void*, unsigned char const*, unsigned char const*, unsigned char const*) SaxParserWrapper.cc:242 #16 0x7fff597e1d8e in xmlParseEndTag2 (libxml2.2.dylib:x86_64+0x37d8e) #17 0x7fff597e0440 in xmlParseElement (libxml2.2.dylib:x86_64+0x36440) #18 0x7fff597e005a in xmlParseContent (libxml2.2.dylib:x86_64+0x3605a) #19 0x7fff597e03f1 in xmlParseElement (libxml2.2.dylib:x86_64+0x363f1) #20 0x7fff597e2b7a in xmlParseDocument (libxml2.2.dylib:x86_64+0x38b7a) #21 0x11ab879ae in ncml_module::SaxParserWrapper::parse(std::__1::basic_string, std::__1::allocator > const&) SaxParserWrapper.cc:338 #22 0x11aa1cd0b in ncml_module::NCMLParser::parseInto(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType, BESDapResponse*) NCMLParser.cc:185 #23 0x11aa98aae in ncml_module::NCMLRequestHandler::ncml_build_dds(BESDataHandlerInterface&) NCMLRequestHandler.cc:260 #24 0x10f041c8f in BESRequestHandlerList::execute_current(BESDataHandlerInterface&) BESRequestHandlerList.cc:273 #25 0x10f0400a4 in BESRequestHandlerList::execute_each(BESDataHandlerInterface&) BESRequestHandlerList.cc:167 #26 0x112c28048 in BESDDSResponseHandler::execute(BESDataHandlerInterface&) BESDDSResponseHandler.cc:107 #27 0x10f458d5a in BESXMLInterface::execute_data_request_plan() BESXMLInterface.cc:285 #28 0x10eeb5b8d in BESInterface::execute_request(std::__1::basic_string, std::__1::allocator > const&) BESInterface.cc:513 #29 0x10ee198d8 in StandAloneClient::executeCommand(std::__1::basic_string, std::__1::allocator > const&, int) StandAloneClient.cc:237 SUMMARY: AddressSanitizer: heap-buffer-overflow (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x4f3fd) in __asan_memcpy Shadow bytes around the buggy address: 0x1c06000022a0: 00 00 00 fa fa fa fd fd fd fa fa fa 00 00 00 fa 0x1c06000022b0: fa fa 00 00 00 fa fa fa fd fd fd fd fa fa fd fd 0x1c06000022c0: fd fd fa fa fd fd fd fd fa fa fd fd fd fd fa fa 0x1c06000022d0: fd fd fd fa fa fa 00 00 00 fa fa fa fd fd fd fa 0x1c06000022e0: fa fa 00 00 00 fa fa fa 00 00 00 fa fa fa 00 00 =>0x1c06000022f0: 00 fa fa fa 00 00[04]fa fa fa 00 00 00 fa fa fa 0x1c0600002300: 00 00 00 fa fa fa 00 00 04 fa fa fa 00 00 00 fa 0x1c0600002310: fa fa 00 00 00 fa fa fa 00 00 04 fa fa fa 00 00 0x1c0600002320: 00 fa fa fa 00 00 00 fa fa fa fa fa fa fa fa fa 0x1c0600002330: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c0600002340: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa Shadow byte legend (one shadow byte represents 8 application bytes): Addressable: 00 Partially addressable: 01 02 03 04 05 06 07 Heap left redzone: fa Freed heap region: fd Stack left redzone: f1 Stack mid redzone: f2 Stack right redzone: f3 Stack after return: f5 Stack use after scope: f8 Global redzone: f9 Global init order: f6 Poisoned by user: f7 Container overflow: fc Array cookie: ac Intra object redzone: bb ASan internal: fe Left alloca redzone: ca Right alloca redzone: cb ==76378==ABORTING /Users/jimg/src/opendap/hyrax_git/bes/modules/ncml_module/tests/testsuite.dir/at-groups/402/test-source: line 44: 76378 Abort trap: 6 besstandalone -c $abs_builddir/bes.conf -i ./test.bescmd stdout: ./aggregations.at:76: exit code was 134, expected 0 402. aggregations.at:76: 402. Comparing dds response for agg/joinNew_simple.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_simple_cons_2.ncml (aggregations.at:76): FAILED (aggregations.at:76) # -*- compilation -*- 403. aggregations.at:76: testing Comparing ddx response for agg/joinNew_simple.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_simple_cons_2.ncml ... ./aggregations.at:76: besstandalone -c $abs_builddir/bes.conf -i ./test.bescmd stderr: Width: 20 Name: V Width: 20 Name: V Width: 40 Name: V ================================================================= ==76405==ERROR: AddressSanitizer: heap-buffer-overflow on address 0x603000011784 at pc 0x000104a443fe bp 0x7ffeeb9526d0 sp 0x7ffeeb951e80 READ of size 40 at 0x603000011784 thread T0 #0 0x104a443fd in __asan_memcpy (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x4f3fd) Provided dSYM: [/Users/jimg/src/opendap/hyrax_git/build/lib/libdap.25.dylib.dSYM/Contents/Resources/DWARF/libdap.25.dylib] does not match symbol owner 0x7fe3952060e0 #1 0x1089a9f39 in libdap::Vector::val2buf(void*, bool) Vector.cc:1212 #2 0x1089935e7 in libdap::Vector::m_duplicate(libdap::Vector const&) Vector.cc:116 #3 0x108997733 in libdap::Vector::Vector(libdap::Vector const&) Vector.cc:297 #4 0x1089e5385 in libdap::Array::Array(libdap::Array const&) Array.cc:164 #5 0x10f6e68da in agg_util::ArrayAggregationBase::ArrayAggregationBase(agg_util::ArrayAggregationBase const&) ArrayAggregationBase.cc:56 #6 0x10f6d5f84 in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(agg_util::ArrayAggregateOnOuterDimension const&) ArrayAggregateOnOuterDimension.cc:70 #7 0x10f6d635c in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(agg_util::ArrayAggregateOnOuterDimension const&) ArrayAggregateOnOuterDimension.cc:71 #8 0x10f6d689c in agg_util::ArrayAggregateOnOuterDimension::ptr_duplicate() ArrayAggregateOnOuterDimension.cc:85 #9 0x1088960fd in libdap::DDS::add_var(libdap::BaseType*) DDS.cc:607 #10 0x10f638de8 in ncml_module::AggregationElement::processAggVarJoinNewForArray(libdap::DDS&, libdap::Array const&, agg_util::Dimension const&, std::__1::vector, std::__1::allocator > > const&) AggregationElement.cc:867 #11 0x10f603db0 in ncml_module::AggregationElement::processJoinNewOnAggVar(libdap::DDS*, std::__1::basic_string, std::__1::allocator > const&, libdap::DDS const&) AggregationElement.cc:801 #12 0x10f5c94d7 in ncml_module::AggregationElement::processJoinNew() AggregationElement.cc:420 #13 0x10f5bf320 in ncml_module::AggregationElement::handleEnd() AggregationElement.cc:217 #14 0x10fa0db9f in ncml_module::NCMLParser::processEndNCMLElement(std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:1186 #15 0x10fa1535b in ncml_module::NCMLParser::onEndElementWithNamespace(std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:324 #16 0x10fb798c9 in ncmlSax2EndElementNs(void*, unsigned char const*, unsigned char const*, unsigned char const*) SaxParserWrapper.cc:242 #17 0x7fff597e1d8e in xmlParseEndTag2 (libxml2.2.dylib:x86_64+0x37d8e) #18 0x7fff597e0440 in xmlParseElement (libxml2.2.dylib:x86_64+0x36440) #19 0x7fff597e005a in xmlParseContent (libxml2.2.dylib:x86_64+0x3605a) #20 0x7fff597e03f1 in xmlParseElement (libxml2.2.dylib:x86_64+0x363f1) #21 0x7fff597e2b7a in xmlParseDocument (libxml2.2.dylib:x86_64+0x38b7a) #22 0x10fb6a9ae in ncml_module::SaxParserWrapper::parse(std::__1::basic_string, std::__1::allocator > const&) SaxParserWrapper.cc:338 #23 0x10f9ffd0b in ncml_module::NCMLParser::parseInto(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType, BESDapResponse*) NCMLParser.cc:185 #24 0x10fa7baae in ncml_module::NCMLRequestHandler::ncml_build_dds(BESDataHandlerInterface&) NCMLRequestHandler.cc:260 #25 0x1044e5c8f in BESRequestHandlerList::execute_current(BESDataHandlerInterface&) BESRequestHandlerList.cc:273 #26 0x1044e40a4 in BESRequestHandlerList::execute_each(BESDataHandlerInterface&) BESRequestHandlerList.cc:167 #27 0x10603d5dc in BESDDXResponseHandler::execute(BESDataHandlerInterface&) BESDDXResponseHandler.cc:122 #28 0x104900d5a in BESXMLInterface::execute_data_request_plan() BESXMLInterface.cc:285 #29 0x104359b8d in BESInterface::execute_request(std::__1::basic_string, std::__1::allocator > const&) BESInterface.cc:513 #30 0x1042bd8d8 in StandAloneClient::executeCommand(std::__1::basic_string, std::__1::allocator > const&, int) StandAloneClient.cc:237 #31 0x1042bb3aa in StandAloneClient::executeCommands(std::__1::basic_ifstream >&, int) StandAloneClient.cc:349 #32 0x1042a0e6d in StandAloneApp::run() StandAloneApp.cc:251 #33 0x1045c9c24 in BESApp::main(int, char**) BESApp.cc:58 #34 0x1042a412e in main StandAloneApp.cc:345 #35 0x7fff59ad3014 in start (libdyld.dylib:x86_64+0x1014) 0x603000011784 is located 0 bytes to the right of 20-byte region [0x603000011770,0x603000011784) allocated by thread T0 here: #0 0x104a57cb2 in wrap__Znam (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x62cb2) #1 0x108994b3c in libdap::Vector::m_create_cardinal_data_buffer_for_type(unsigned int) Vector.cc:203 #2 0x1089a9c15 in libdap::Vector::val2buf(void*, bool) Vector.cc:1206 #3 0x1089935e7 in libdap::Vector::m_duplicate(libdap::Vector const&) Vector.cc:116 #4 0x108997733 in libdap::Vector::Vector(libdap::Vector const&) Vector.cc:297 #5 0x1089e5385 in libdap::Array::Array(libdap::Array const&) Array.cc:164 #6 0x10f6e6116 in agg_util::ArrayAggregationBase::ArrayAggregationBase(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&) ArrayAggregationBase.cc:50 #7 0x10f6d57d2 in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&, agg_util::Dimension const&) ArrayAggregateOnOuterDimension.cc:59 #8 0x10f6d5e34 in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&, agg_util::Dimension const&) ArrayAggregateOnOuterDimension.cc:61 #9 0x10f6367ae in ncml_module::AggregationElement::processAggVarJoinNewForArray(libdap::DDS&, libdap::Array const&, agg_util::Dimension const&, std::__1::vector, std::__1::allocator > > const&) AggregationElement.cc:855 #10 0x10f603db0 in ncml_module::AggregationElement::processJoinNewOnAggVar(libdap::DDS*, std::__1::basic_string, std::__1::allocator > const&, libdap::DDS const&) AggregationElement.cc:801 #11 0x10f5c94d7 in ncml_module::AggregationElement::processJoinNew() AggregationElement.cc:420 #12 0x10f5bf320 in ncml_module::AggregationElement::handleEnd() AggregationElement.cc:217 #13 0x10fa0db9f in ncml_module::NCMLParser::processEndNCMLElement(std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:1186 #14 0x10fa1535b in ncml_module::NCMLParser::onEndElementWithNamespace(std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:324 #15 0x10fb798c9 in ncmlSax2EndElementNs(void*, unsigned char const*, unsigned char const*, unsigned char const*) SaxParserWrapper.cc:242 #16 0x7fff597e1d8e in xmlParseEndTag2 (libxml2.2.dylib:x86_64+0x37d8e) #17 0x7fff597e0440 in xmlParseElement (libxml2.2.dylib:x86_64+0x36440) #18 0x7fff597e005a in xmlParseContent (libxml2.2.dylib:x86_64+0x3605a) #19 0x7fff597e03f1 in xmlParseElement (libxml2.2.dylib:x86_64+0x363f1) #20 0x7fff597e2b7a in xmlParseDocument (libxml2.2.dylib:x86_64+0x38b7a) #21 0x10fb6a9ae in ncml_module::SaxParserWrapper::parse(std::__1::basic_string, std::__1::allocator > const&) SaxParserWrapper.cc:338 #22 0x10f9ffd0b in ncml_module::NCMLParser::parseInto(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType, BESDapResponse*) NCMLParser.cc:185 #23 0x10fa7baae in ncml_module::NCMLRequestHandler::ncml_build_dds(BESDataHandlerInterface&) NCMLRequestHandler.cc:260 #24 0x1044e5c8f in BESRequestHandlerList::execute_current(BESDataHandlerInterface&) BESRequestHandlerList.cc:273 #25 0x1044e40a4 in BESRequestHandlerList::execute_each(BESDataHandlerInterface&) BESRequestHandlerList.cc:167 #26 0x10603d5dc in BESDDXResponseHandler::execute(BESDataHandlerInterface&) BESDDXResponseHandler.cc:122 #27 0x104900d5a in BESXMLInterface::execute_data_request_plan() BESXMLInterface.cc:285 #28 0x104359b8d in BESInterface::execute_request(std::__1::basic_string, std::__1::allocator > const&) BESInterface.cc:513 #29 0x1042bd8d8 in StandAloneClient::executeCommand(std::__1::basic_string, std::__1::allocator > const&, int) StandAloneClient.cc:237 SUMMARY: AddressSanitizer: heap-buffer-overflow (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x4f3fd) in __asan_memcpy Shadow bytes around the buggy address: 0x1c06000022a0: fd fd fd fa fa fa 00 00 00 fa fa fa 00 00 00 fa 0x1c06000022b0: fa fa fd fd fd fd fa fa fd fd fd fd fa fa fd fd 0x1c06000022c0: fd fd fa fa fd fd fd fd fa fa fd fd fd fa fa fa 0x1c06000022d0: 00 00 00 fa fa fa fd fd fd fa fa fa 00 00 00 fa 0x1c06000022e0: fa fa 00 00 00 fa fa fa 00 00 00 fa fa fa 00 00 =>0x1c06000022f0:[04]fa fa fa 00 00 00 fa fa fa 00 00 00 fa fa fa 0x1c0600002300: 00 00 04 fa fa fa 00 00 00 fa fa fa 00 00 00 fa 0x1c0600002310: fa fa 00 00 04 fa fa fa 00 00 00 fa fa fa 00 00 0x1c0600002320: 00 fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c0600002330: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c0600002340: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa Shadow byte legend (one shadow byte represents 8 application bytes): Addressable: 00 Partially addressable: 01 02 03 04 05 06 07 Heap left redzone: fa Freed heap region: fd Stack left redzone: f1 Stack mid redzone: f2 Stack right redzone: f3 Stack after return: f5 Stack use after scope: f8 Global redzone: f9 Global init order: f6 Poisoned by user: f7 Container overflow: fc Array cookie: ac Intra object redzone: bb ASan internal: fe Left alloca redzone: ca Right alloca redzone: cb ==76405==ABORTING /Users/jimg/src/opendap/hyrax_git/bes/modules/ncml_module/tests/testsuite.dir/at-groups/403/test-source: line 44: 76405 Abort trap: 6 besstandalone -c $abs_builddir/bes.conf -i ./test.bescmd stdout: ./aggregations.at:76: exit code was 134, expected 0 403. aggregations.at:76: 403. Comparing ddx response for agg/joinNew_simple.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_simple_cons_2.ncml (aggregations.at:76): FAILED (aggregations.at:76) # -*- compilation -*- 404. aggregations.at:76: testing Comparing dods response for agg/joinNew_simple.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_simple_cons_2.ncml ... ./aggregations.at:76: besstandalone -c $abs_builddir/bes.conf -i ./test.bescmd stderr: Width: 20 Name: V Width: 20 Name: V Width: 40 Name: V ================================================================= ==76435==ERROR: AddressSanitizer: heap-buffer-overflow on address 0x603000011784 at pc 0x000105ac63fe bp 0x7ffeea8c89b0 sp 0x7ffeea8c8160 READ of size 40 at 0x603000011784 thread T0 #0 0x105ac63fd in __asan_memcpy (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x4f3fd) Provided dSYM: [/Users/jimg/src/opendap/hyrax_git/build/lib/libdap.25.dylib.dSYM/Contents/Resources/DWARF/libdap.25.dylib] does not match symbol owner 0x7f930b507f40 #1 0x109693f39 in libdap::Vector::val2buf(void*, bool) Vector.cc:1212 #2 0x10967d5e7 in libdap::Vector::m_duplicate(libdap::Vector const&) Vector.cc:116 #3 0x109681733 in libdap::Vector::Vector(libdap::Vector const&) Vector.cc:297 #4 0x1096cf385 in libdap::Array::Array(libdap::Array const&) Array.cc:164 #5 0x1106c98da in agg_util::ArrayAggregationBase::ArrayAggregationBase(agg_util::ArrayAggregationBase const&) ArrayAggregationBase.cc:56 #6 0x1106b8f84 in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(agg_util::ArrayAggregateOnOuterDimension const&) ArrayAggregateOnOuterDimension.cc:70 #7 0x1106b935c in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(agg_util::ArrayAggregateOnOuterDimension const&) ArrayAggregateOnOuterDimension.cc:71 #8 0x1106b989c in agg_util::ArrayAggregateOnOuterDimension::ptr_duplicate() ArrayAggregateOnOuterDimension.cc:85 #9 0x1095800fd in libdap::DDS::add_var(libdap::BaseType*) DDS.cc:607 #10 0x11061bde8 in ncml_module::AggregationElement::processAggVarJoinNewForArray(libdap::DDS&, libdap::Array const&, agg_util::Dimension const&, std::__1::vector, std::__1::allocator > > const&) AggregationElement.cc:867 #11 0x1105e6db0 in ncml_module::AggregationElement::processJoinNewOnAggVar(libdap::DDS*, std::__1::basic_string, std::__1::allocator > const&, libdap::DDS const&) AggregationElement.cc:801 #12 0x1105ac4d7 in ncml_module::AggregationElement::processJoinNew() AggregationElement.cc:420 #13 0x1105a2320 in ncml_module::AggregationElement::handleEnd() AggregationElement.cc:217 #14 0x1109f0b9f in ncml_module::NCMLParser::processEndNCMLElement(std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:1186 #15 0x1109f835b in ncml_module::NCMLParser::onEndElementWithNamespace(std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:324 #16 0x110b5c8c9 in ncmlSax2EndElementNs(void*, unsigned char const*, unsigned char const*, unsigned char const*) SaxParserWrapper.cc:242 #17 0x7fff597e1d8e in xmlParseEndTag2 (libxml2.2.dylib:x86_64+0x37d8e) #18 0x7fff597e0440 in xmlParseElement (libxml2.2.dylib:x86_64+0x36440) #19 0x7fff597e005a in xmlParseContent (libxml2.2.dylib:x86_64+0x3605a) #20 0x7fff597e03f1 in xmlParseElement (libxml2.2.dylib:x86_64+0x363f1) #21 0x7fff597e2b7a in xmlParseDocument (libxml2.2.dylib:x86_64+0x38b7a) #22 0x110b4d9ae in ncml_module::SaxParserWrapper::parse(std::__1::basic_string, std::__1::allocator > const&) SaxParserWrapper.cc:338 #23 0x1109e2d0b in ncml_module::NCMLParser::parseInto(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType, BESDapResponse*) NCMLParser.cc:185 #24 0x110a64346 in ncml_module::NCMLRequestHandler::ncml_build_data(BESDataHandlerInterface&) NCMLRequestHandler.cc:297 #25 0x10556cc8f in BESRequestHandlerList::execute_current(BESDataHandlerInterface&) BESRequestHandlerList.cc:273 #26 0x10556b0a4 in BESRequestHandlerList::execute_each(BESDataHandlerInterface&) BESRequestHandlerList.cc:167 #27 0x10913288c in BESDataResponseHandler::execute(BESDataHandlerInterface&) BESDataResponseHandler.cc:148 #28 0x105981d5a in BESXMLInterface::execute_data_request_plan() BESXMLInterface.cc:285 #29 0x1053e0b8d in BESInterface::execute_request(std::__1::basic_string, std::__1::allocator > const&) BESInterface.cc:513 #30 0x1053478d8 in StandAloneClient::executeCommand(std::__1::basic_string, std::__1::allocator > const&, int) StandAloneClient.cc:237 #31 0x1053453aa in StandAloneClient::executeCommands(std::__1::basic_ifstream >&, int) StandAloneClient.cc:349 #32 0x10532ae6d in StandAloneApp::run() StandAloneApp.cc:251 #33 0x105650c24 in BESApp::main(int, char**) BESApp.cc:58 #34 0x10532e12e in main StandAloneApp.cc:345 #35 0x7fff59ad3014 in start (libdyld.dylib:x86_64+0x1014) 0x603000011784 is located 0 bytes to the right of 20-byte region [0x603000011770,0x603000011784) allocated by thread T0 here: #0 0x105ad9cb2 in wrap__Znam (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x62cb2) #1 0x10967eb3c in libdap::Vector::m_create_cardinal_data_buffer_for_type(unsigned int) Vector.cc:203 #2 0x109693c15 in libdap::Vector::val2buf(void*, bool) Vector.cc:1206 #3 0x10967d5e7 in libdap::Vector::m_duplicate(libdap::Vector const&) Vector.cc:116 #4 0x109681733 in libdap::Vector::Vector(libdap::Vector const&) Vector.cc:297 #5 0x1096cf385 in libdap::Array::Array(libdap::Array const&) Array.cc:164 #6 0x1106c9116 in agg_util::ArrayAggregationBase::ArrayAggregationBase(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&) ArrayAggregationBase.cc:50 #7 0x1106b87d2 in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&, agg_util::Dimension const&) ArrayAggregateOnOuterDimension.cc:59 #8 0x1106b8e34 in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&, agg_util::Dimension const&) ArrayAggregateOnOuterDimension.cc:61 #9 0x1106197ae in ncml_module::AggregationElement::processAggVarJoinNewForArray(libdap::DDS&, libdap::Array const&, agg_util::Dimension const&, std::__1::vector, std::__1::allocator > > const&) AggregationElement.cc:855 #10 0x1105e6db0 in ncml_module::AggregationElement::processJoinNewOnAggVar(libdap::DDS*, std::__1::basic_string, std::__1::allocator > const&, libdap::DDS const&) AggregationElement.cc:801 #11 0x1105ac4d7 in ncml_module::AggregationElement::processJoinNew() AggregationElement.cc:420 #12 0x1105a2320 in ncml_module::AggregationElement::handleEnd() AggregationElement.cc:217 #13 0x1109f0b9f in ncml_module::NCMLParser::processEndNCMLElement(std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:1186 #14 0x1109f835b in ncml_module::NCMLParser::onEndElementWithNamespace(std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:324 #15 0x110b5c8c9 in ncmlSax2EndElementNs(void*, unsigned char const*, unsigned char const*, unsigned char const*) SaxParserWrapper.cc:242 #16 0x7fff597e1d8e in xmlParseEndTag2 (libxml2.2.dylib:x86_64+0x37d8e) #17 0x7fff597e0440 in xmlParseElement (libxml2.2.dylib:x86_64+0x36440) #18 0x7fff597e005a in xmlParseContent (libxml2.2.dylib:x86_64+0x3605a) #19 0x7fff597e03f1 in xmlParseElement (libxml2.2.dylib:x86_64+0x363f1) #20 0x7fff597e2b7a in xmlParseDocument (libxml2.2.dylib:x86_64+0x38b7a) #21 0x110b4d9ae in ncml_module::SaxParserWrapper::parse(std::__1::basic_string, std::__1::allocator > const&) SaxParserWrapper.cc:338 #22 0x1109e2d0b in ncml_module::NCMLParser::parseInto(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType, BESDapResponse*) NCMLParser.cc:185 #23 0x110a64346 in ncml_module::NCMLRequestHandler::ncml_build_data(BESDataHandlerInterface&) NCMLRequestHandler.cc:297 #24 0x10556cc8f in BESRequestHandlerList::execute_current(BESDataHandlerInterface&) BESRequestHandlerList.cc:273 #25 0x10556b0a4 in BESRequestHandlerList::execute_each(BESDataHandlerInterface&) BESRequestHandlerList.cc:167 #26 0x10913288c in BESDataResponseHandler::execute(BESDataHandlerInterface&) BESDataResponseHandler.cc:148 #27 0x105981d5a in BESXMLInterface::execute_data_request_plan() BESXMLInterface.cc:285 #28 0x1053e0b8d in BESInterface::execute_request(std::__1::basic_string, std::__1::allocator > const&) BESInterface.cc:513 #29 0x1053478d8 in StandAloneClient::executeCommand(std::__1::basic_string, std::__1::allocator > const&, int) StandAloneClient.cc:237 SUMMARY: AddressSanitizer: heap-buffer-overflow (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x4f3fd) in __asan_memcpy Shadow bytes around the buggy address: 0x1c06000022a0: fd fd fd fa fa fa 00 00 00 fa fa fa 00 00 00 fa 0x1c06000022b0: fa fa fd fd fd fd fa fa fd fd fd fd fa fa fd fd 0x1c06000022c0: fd fd fa fa fd fd fd fd fa fa fd fd fd fa fa fa 0x1c06000022d0: 00 00 00 fa fa fa fd fd fd fa fa fa 00 00 00 fa 0x1c06000022e0: fa fa 00 00 00 fa fa fa 00 00 00 fa fa fa 00 00 =>0x1c06000022f0:[04]fa fa fa 00 00 00 fa fa fa 00 00 00 fa fa fa 0x1c0600002300: 00 00 04 fa fa fa 00 00 00 fa fa fa 00 00 00 fa 0x1c0600002310: fa fa 00 00 04 fa fa fa 00 00 00 fa fa fa 00 00 0x1c0600002320: 00 fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c0600002330: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c0600002340: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa Shadow byte legend (one shadow byte represents 8 application bytes): Addressable: 00 Partially addressable: 01 02 03 04 05 06 07 Heap left redzone: fa Freed heap region: fd Stack left redzone: f1 Stack mid redzone: f2 Stack right redzone: f3 Stack after return: f5 Stack use after scope: f8 Global redzone: f9 Global init order: f6 Poisoned by user: f7 Container overflow: fc Array cookie: ac Intra object redzone: bb ASan internal: fe Left alloca redzone: ca Right alloca redzone: cb ==76435==ABORTING /Users/jimg/src/opendap/hyrax_git/bes/modules/ncml_module/tests/testsuite.dir/at-groups/404/test-source: line 44: 76435 Abort trap: 6 besstandalone -c $abs_builddir/bes.conf -i ./test.bescmd stdout: ./aggregations.at:76: exit code was 134, expected 0 404. aggregations.at:76: 404. Comparing dods response for agg/joinNew_simple.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_simple_cons_2.ncml (aggregations.at:76): FAILED (aggregations.at:76) # -*- compilation -*- 405. aggregations.at:80: testing Comparing das response for agg/joinNew_simple_2.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_simple_2_cons_1.ncml ... ./aggregations.at:80: besstandalone -c $abs_builddir/bes.conf -i ./test.bescmd stderr: Width: 20 Name: V Width: 20 Name: V Width: 80 Name: V ================================================================= ==76463==ERROR: AddressSanitizer: heap-buffer-overflow on address 0x6030000115d4 at pc 0x00010f1993fe bp 0x7ffee2026810 sp 0x7ffee2025fc0 READ of size 80 at 0x6030000115d4 thread T0 #0 0x10f1993fd in __asan_memcpy (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x4f3fd) Provided dSYM: [/Users/jimg/src/opendap/hyrax_git/build/lib/libdap.25.dylib.dSYM/Contents/Resources/DWARF/libdap.25.dylib] does not match symbol owner 0x7fb337705c80 #1 0x1120bbf39 in libdap::Vector::val2buf(void*, bool) Vector.cc:1212 #2 0x1120a55e7 in libdap::Vector::m_duplicate(libdap::Vector const&) Vector.cc:116 #3 0x1120a9733 in libdap::Vector::Vector(libdap::Vector const&) Vector.cc:297 #4 0x1120f7385 in libdap::Array::Array(libdap::Array const&) Array.cc:164 #5 0x1190098da in agg_util::ArrayAggregationBase::ArrayAggregationBase(agg_util::ArrayAggregationBase const&) ArrayAggregationBase.cc:56 #6 0x118ff8f84 in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(agg_util::ArrayAggregateOnOuterDimension const&) ArrayAggregateOnOuterDimension.cc:70 #7 0x118ff935c in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(agg_util::ArrayAggregateOnOuterDimension const&) ArrayAggregateOnOuterDimension.cc:71 #8 0x118ff989c in agg_util::ArrayAggregateOnOuterDimension::ptr_duplicate() ArrayAggregateOnOuterDimension.cc:85 #9 0x111fa80fd in libdap::DDS::add_var(libdap::BaseType*) DDS.cc:607 #10 0x118f5bde8 in ncml_module::AggregationElement::processAggVarJoinNewForArray(libdap::DDS&, libdap::Array const&, agg_util::Dimension const&, std::__1::vector, std::__1::allocator > > const&) AggregationElement.cc:867 #11 0x118f26db0 in ncml_module::AggregationElement::processJoinNewOnAggVar(libdap::DDS*, std::__1::basic_string, std::__1::allocator > const&, libdap::DDS const&) AggregationElement.cc:801 #12 0x118eec4d7 in ncml_module::AggregationElement::processJoinNew() AggregationElement.cc:420 #13 0x118ee2320 in ncml_module::AggregationElement::handleEnd() AggregationElement.cc:217 #14 0x119330b9f in ncml_module::NCMLParser::processEndNCMLElement(std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:1186 #15 0x11933835b in ncml_module::NCMLParser::onEndElementWithNamespace(std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:324 #16 0x11949c8c9 in ncmlSax2EndElementNs(void*, unsigned char const*, unsigned char const*, unsigned char const*) SaxParserWrapper.cc:242 #17 0x7fff597e1d8e in xmlParseEndTag2 (libxml2.2.dylib:x86_64+0x37d8e) #18 0x7fff597e0440 in xmlParseElement (libxml2.2.dylib:x86_64+0x36440) #19 0x7fff597e005a in xmlParseContent (libxml2.2.dylib:x86_64+0x3605a) #20 0x7fff597e03f1 in xmlParseElement (libxml2.2.dylib:x86_64+0x363f1) #21 0x7fff597e2b7a in xmlParseDocument (libxml2.2.dylib:x86_64+0x38b7a) #22 0x11948d9ae in ncml_module::SaxParserWrapper::parse(std::__1::basic_string, std::__1::allocator > const&) SaxParserWrapper.cc:338 #23 0x119322d0b in ncml_module::NCMLParser::parseInto(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType, BESDapResponse*) NCMLParser.cc:185 #24 0x11931c1e7 in ncml_module::NCMLParser::parse(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType) NCMLParser.cc:155 #25 0x119396841 in ncml_module::NCMLRequestHandler::ncml_build_das(BESDataHandlerInterface&) NCMLRequestHandler.cc:172 #26 0x10de0dc8f in BESRequestHandlerList::execute_current(BESDataHandlerInterface&) BESRequestHandlerList.cc:273 #27 0x10de0c0a4 in BESRequestHandlerList::execute_each(BESDataHandlerInterface&) BESRequestHandlerList.cc:167 #28 0x10ec21ff0 in BESDASResponseHandler::execute(BESDataHandlerInterface&) BESDASResponseHandler.cc:95 #29 0x10e228d5a in BESXMLInterface::execute_data_request_plan() BESXMLInterface.cc:285 #30 0x10dc81b8d in BESInterface::execute_request(std::__1::basic_string, std::__1::allocator > const&) BESInterface.cc:513 #31 0x10dbe98d8 in StandAloneClient::executeCommand(std::__1::basic_string, std::__1::allocator > const&, int) StandAloneClient.cc:237 #32 0x10dbe73aa in StandAloneClient::executeCommands(std::__1::basic_ifstream >&, int) StandAloneClient.cc:349 #33 0x10dbcce6d in StandAloneApp::run() StandAloneApp.cc:251 #34 0x10def1c24 in BESApp::main(int, char**) BESApp.cc:58 #35 0x10dbd012e in main StandAloneApp.cc:345 #36 0x7fff59ad3014 in start (libdyld.dylib:x86_64+0x1014) 0x6030000115d4 is located 0 bytes to the right of 20-byte region [0x6030000115c0,0x6030000115d4) allocated by thread T0 here: #0 0x10f1accb2 in wrap__Znam (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x62cb2) #1 0x1120a6b3c in libdap::Vector::m_create_cardinal_data_buffer_for_type(unsigned int) Vector.cc:203 #2 0x1120bbc15 in libdap::Vector::val2buf(void*, bool) Vector.cc:1206 #3 0x1120a55e7 in libdap::Vector::m_duplicate(libdap::Vector const&) Vector.cc:116 #4 0x1120a9733 in libdap::Vector::Vector(libdap::Vector const&) Vector.cc:297 #5 0x1120f7385 in libdap::Array::Array(libdap::Array const&) Array.cc:164 #6 0x119009116 in agg_util::ArrayAggregationBase::ArrayAggregationBase(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&) ArrayAggregationBase.cc:50 #7 0x118ff87d2 in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&, agg_util::Dimension const&) ArrayAggregateOnOuterDimension.cc:59 #8 0x118ff8e34 in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&, agg_util::Dimension const&) ArrayAggregateOnOuterDimension.cc:61 #9 0x118f597ae in ncml_module::AggregationElement::processAggVarJoinNewForArray(libdap::DDS&, libdap::Array const&, agg_util::Dimension const&, std::__1::vector, std::__1::allocator > > const&) AggregationElement.cc:855 #10 0x118f26db0 in ncml_module::AggregationElement::processJoinNewOnAggVar(libdap::DDS*, std::__1::basic_string, std::__1::allocator > const&, libdap::DDS const&) AggregationElement.cc:801 #11 0x118eec4d7 in ncml_module::AggregationElement::processJoinNew() AggregationElement.cc:420 #12 0x118ee2320 in ncml_module::AggregationElement::handleEnd() AggregationElement.cc:217 #13 0x119330b9f in ncml_module::NCMLParser::processEndNCMLElement(std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:1186 #14 0x11933835b in ncml_module::NCMLParser::onEndElementWithNamespace(std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:324 #15 0x11949c8c9 in ncmlSax2EndElementNs(void*, unsigned char const*, unsigned char const*, unsigned char const*) SaxParserWrapper.cc:242 #16 0x7fff597e1d8e in xmlParseEndTag2 (libxml2.2.dylib:x86_64+0x37d8e) #17 0x7fff597e0440 in xmlParseElement (libxml2.2.dylib:x86_64+0x36440) #18 0x7fff597e005a in xmlParseContent (libxml2.2.dylib:x86_64+0x3605a) #19 0x7fff597e03f1 in xmlParseElement (libxml2.2.dylib:x86_64+0x363f1) #20 0x7fff597e2b7a in xmlParseDocument (libxml2.2.dylib:x86_64+0x38b7a) #21 0x11948d9ae in ncml_module::SaxParserWrapper::parse(std::__1::basic_string, std::__1::allocator > const&) SaxParserWrapper.cc:338 #22 0x119322d0b in ncml_module::NCMLParser::parseInto(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType, BESDapResponse*) NCMLParser.cc:185 #23 0x11931c1e7 in ncml_module::NCMLParser::parse(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType) NCMLParser.cc:155 #24 0x119396841 in ncml_module::NCMLRequestHandler::ncml_build_das(BESDataHandlerInterface&) NCMLRequestHandler.cc:172 #25 0x10de0dc8f in BESRequestHandlerList::execute_current(BESDataHandlerInterface&) BESRequestHandlerList.cc:273 #26 0x10de0c0a4 in BESRequestHandlerList::execute_each(BESDataHandlerInterface&) BESRequestHandlerList.cc:167 #27 0x10ec21ff0 in BESDASResponseHandler::execute(BESDataHandlerInterface&) BESDASResponseHandler.cc:95 #28 0x10e228d5a in BESXMLInterface::execute_data_request_plan() BESXMLInterface.cc:285 #29 0x10dc81b8d in BESInterface::execute_request(std::__1::basic_string, std::__1::allocator > const&) BESInterface.cc:513 SUMMARY: AddressSanitizer: heap-buffer-overflow (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x4f3fd) in __asan_memcpy Shadow bytes around the buggy address: 0x1c0600002260: 00 fa fa fa 00 00 00 fa fa fa 00 00 04 fa fa fa 0x1c0600002270: fd fd fd fd fa fa fd fd fd fd fa fa fd fd fd fd 0x1c0600002280: fa fa 00 00 00 00 fa fa fd fd fd fa fa fa 00 00 0x1c0600002290: 00 fa fa fa fd fd fd fa fa fa 00 00 00 fa fa fa 0x1c06000022a0: fd fd fd fa fa fa 00 00 00 fa fa fa fd fd fd fa =>0x1c06000022b0: fa fa 00 00 00 fa fa fa 00 00[04]fa fa fa 00 00 0x1c06000022c0: 04 fa fa fa 00 00 00 fa fa fa 00 00 00 fa fa fa 0x1c06000022d0: 00 00 04 fa fa fa 00 00 00 00 fa fa fa fa fa fa 0x1c06000022e0: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c06000022f0: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c0600002300: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa Shadow byte legend (one shadow byte represents 8 application bytes): Addressable: 00 Partially addressable: 01 02 03 04 05 06 07 Heap left redzone: fa Freed heap region: fd Stack left redzone: f1 Stack mid redzone: f2 Stack right redzone: f3 Stack after return: f5 Stack use after scope: f8 Global redzone: f9 Global init order: f6 Poisoned by user: f7 Container overflow: fc Array cookie: ac Intra object redzone: bb ASan internal: fe Left alloca redzone: ca Right alloca redzone: cb ==76463==ABORTING /Users/jimg/src/opendap/hyrax_git/bes/modules/ncml_module/tests/testsuite.dir/at-groups/405/test-source: line 44: 76463 Abort trap: 6 besstandalone -c $abs_builddir/bes.conf -i ./test.bescmd stdout: ./aggregations.at:80: exit code was 134, expected 0 405. aggregations.at:80: 405. Comparing das response for agg/joinNew_simple_2.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_simple_2_cons_1.ncml (aggregations.at:80): FAILED (aggregations.at:80) # -*- compilation -*- 406. aggregations.at:80: testing Comparing dds response for agg/joinNew_simple_2.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_simple_2_cons_1.ncml ... ./aggregations.at:80: besstandalone -c $abs_builddir/bes.conf -i ./test.bescmd stderr: Width: 20 Name: V Width: 20 Name: V Width: 80 Name: V ================================================================= ==76534==ERROR: AddressSanitizer: heap-buffer-overflow on address 0x6030000115d4 at pc 0x0001025083fe bp 0x7ffeede8fb30 sp 0x7ffeede8f2e0 READ of size 80 at 0x6030000115d4 thread T0 #0 0x1025083fd in __asan_memcpy (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x4f3fd) Provided dSYM: [/Users/jimg/src/opendap/hyrax_git/build/lib/libdap.25.dylib.dSYM/Contents/Resources/DWARF/libdap.25.dylib] does not match symbol owner 0x7fce6d706380 #1 0x1060dbf39 in libdap::Vector::val2buf(void*, bool) Vector.cc:1212 #2 0x1060c55e7 in libdap::Vector::m_duplicate(libdap::Vector const&) Vector.cc:116 #3 0x1060c9733 in libdap::Vector::Vector(libdap::Vector const&) Vector.cc:297 #4 0x106117385 in libdap::Array::Array(libdap::Array const&) Array.cc:164 #5 0x10d1028da in agg_util::ArrayAggregationBase::ArrayAggregationBase(agg_util::ArrayAggregationBase const&) ArrayAggregationBase.cc:56 #6 0x10d0f1f84 in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(agg_util::ArrayAggregateOnOuterDimension const&) ArrayAggregateOnOuterDimension.cc:70 #7 0x10d0f235c in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(agg_util::ArrayAggregateOnOuterDimension const&) ArrayAggregateOnOuterDimension.cc:71 #8 0x10d0f289c in agg_util::ArrayAggregateOnOuterDimension::ptr_duplicate() ArrayAggregateOnOuterDimension.cc:85 #9 0x105fc80fd in libdap::DDS::add_var(libdap::BaseType*) DDS.cc:607 #10 0x10d054de8 in ncml_module::AggregationElement::processAggVarJoinNewForArray(libdap::DDS&, libdap::Array const&, agg_util::Dimension const&, std::__1::vector, std::__1::allocator > > const&) AggregationElement.cc:867 #11 0x10d01fdb0 in ncml_module::AggregationElement::processJoinNewOnAggVar(libdap::DDS*, std::__1::basic_string, std::__1::allocator > const&, libdap::DDS const&) AggregationElement.cc:801 #12 0x10cfe54d7 in ncml_module::AggregationElement::processJoinNew() AggregationElement.cc:420 #13 0x10cfdb320 in ncml_module::AggregationElement::handleEnd() AggregationElement.cc:217 #14 0x10d429b9f in ncml_module::NCMLParser::processEndNCMLElement(std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:1186 #15 0x10d43135b in ncml_module::NCMLParser::onEndElementWithNamespace(std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:324 #16 0x10d5958c9 in ncmlSax2EndElementNs(void*, unsigned char const*, unsigned char const*, unsigned char const*) SaxParserWrapper.cc:242 #17 0x7fff597e1d8e in xmlParseEndTag2 (libxml2.2.dylib:x86_64+0x37d8e) #18 0x7fff597e0440 in xmlParseElement (libxml2.2.dylib:x86_64+0x36440) #19 0x7fff597e005a in xmlParseContent (libxml2.2.dylib:x86_64+0x3605a) #20 0x7fff597e03f1 in xmlParseElement (libxml2.2.dylib:x86_64+0x363f1) #21 0x7fff597e2b7a in xmlParseDocument (libxml2.2.dylib:x86_64+0x38b7a) #22 0x10d5869ae in ncml_module::SaxParserWrapper::parse(std::__1::basic_string, std::__1::allocator > const&) SaxParserWrapper.cc:338 #23 0x10d41bd0b in ncml_module::NCMLParser::parseInto(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType, BESDapResponse*) NCMLParser.cc:185 #24 0x10d497aae in ncml_module::NCMLRequestHandler::ncml_build_dds(BESDataHandlerInterface&) NCMLRequestHandler.cc:260 #25 0x101fa7c8f in BESRequestHandlerList::execute_current(BESDataHandlerInterface&) BESRequestHandlerList.cc:273 #26 0x101fa60a4 in BESRequestHandlerList::execute_each(BESDataHandlerInterface&) BESRequestHandlerList.cc:167 #27 0x105b28048 in BESDDSResponseHandler::execute(BESDataHandlerInterface&) BESDDSResponseHandler.cc:107 #28 0x1023bdd5a in BESXMLInterface::execute_data_request_plan() BESXMLInterface.cc:285 #29 0x101e1bb8d in BESInterface::execute_request(std::__1::basic_string, std::__1::allocator > const&) BESInterface.cc:513 #30 0x101d808d8 in StandAloneClient::executeCommand(std::__1::basic_string, std::__1::allocator > const&, int) StandAloneClient.cc:237 #31 0x101d7e3aa in StandAloneClient::executeCommands(std::__1::basic_ifstream >&, int) StandAloneClient.cc:349 #32 0x101d63e6d in StandAloneApp::run() StandAloneApp.cc:251 #33 0x10208bc24 in BESApp::main(int, char**) BESApp.cc:58 #34 0x101d6712e in main StandAloneApp.cc:345 #35 0x7fff59ad3014 in start (libdyld.dylib:x86_64+0x1014) 0x6030000115d4 is located 0 bytes to the right of 20-byte region [0x6030000115c0,0x6030000115d4) allocated by thread T0 here: #0 0x10251bcb2 in wrap__Znam (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x62cb2) #1 0x1060c6b3c in libdap::Vector::m_create_cardinal_data_buffer_for_type(unsigned int) Vector.cc:203 #2 0x1060dbc15 in libdap::Vector::val2buf(void*, bool) Vector.cc:1206 #3 0x1060c55e7 in libdap::Vector::m_duplicate(libdap::Vector const&) Vector.cc:116 #4 0x1060c9733 in libdap::Vector::Vector(libdap::Vector const&) Vector.cc:297 #5 0x106117385 in libdap::Array::Array(libdap::Array const&) Array.cc:164 #6 0x10d102116 in agg_util::ArrayAggregationBase::ArrayAggregationBase(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&) ArrayAggregationBase.cc:50 #7 0x10d0f17d2 in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&, agg_util::Dimension const&) ArrayAggregateOnOuterDimension.cc:59 #8 0x10d0f1e34 in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&, agg_util::Dimension const&) ArrayAggregateOnOuterDimension.cc:61 #9 0x10d0527ae in ncml_module::AggregationElement::processAggVarJoinNewForArray(libdap::DDS&, libdap::Array const&, agg_util::Dimension const&, std::__1::vector, std::__1::allocator > > const&) AggregationElement.cc:855 #10 0x10d01fdb0 in ncml_module::AggregationElement::processJoinNewOnAggVar(libdap::DDS*, std::__1::basic_string, std::__1::allocator > const&, libdap::DDS const&) AggregationElement.cc:801 #11 0x10cfe54d7 in ncml_module::AggregationElement::processJoinNew() AggregationElement.cc:420 #12 0x10cfdb320 in ncml_module::AggregationElement::handleEnd() AggregationElement.cc:217 #13 0x10d429b9f in ncml_module::NCMLParser::processEndNCMLElement(std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:1186 #14 0x10d43135b in ncml_module::NCMLParser::onEndElementWithNamespace(std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:324 #15 0x10d5958c9 in ncmlSax2EndElementNs(void*, unsigned char const*, unsigned char const*, unsigned char const*) SaxParserWrapper.cc:242 #16 0x7fff597e1d8e in xmlParseEndTag2 (libxml2.2.dylib:x86_64+0x37d8e) #17 0x7fff597e0440 in xmlParseElement (libxml2.2.dylib:x86_64+0x36440) #18 0x7fff597e005a in xmlParseContent (libxml2.2.dylib:x86_64+0x3605a) #19 0x7fff597e03f1 in xmlParseElement (libxml2.2.dylib:x86_64+0x363f1) #20 0x7fff597e2b7a in xmlParseDocument (libxml2.2.dylib:x86_64+0x38b7a) #21 0x10d5869ae in ncml_module::SaxParserWrapper::parse(std::__1::basic_string, std::__1::allocator > const&) SaxParserWrapper.cc:338 #22 0x10d41bd0b in ncml_module::NCMLParser::parseInto(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType, BESDapResponse*) NCMLParser.cc:185 #23 0x10d497aae in ncml_module::NCMLRequestHandler::ncml_build_dds(BESDataHandlerInterface&) NCMLRequestHandler.cc:260 #24 0x101fa7c8f in BESRequestHandlerList::execute_current(BESDataHandlerInterface&) BESRequestHandlerList.cc:273 #25 0x101fa60a4 in BESRequestHandlerList::execute_each(BESDataHandlerInterface&) BESRequestHandlerList.cc:167 #26 0x105b28048 in BESDDSResponseHandler::execute(BESDataHandlerInterface&) BESDDSResponseHandler.cc:107 #27 0x1023bdd5a in BESXMLInterface::execute_data_request_plan() BESXMLInterface.cc:285 #28 0x101e1bb8d in BESInterface::execute_request(std::__1::basic_string, std::__1::allocator > const&) BESInterface.cc:513 #29 0x101d808d8 in StandAloneClient::executeCommand(std::__1::basic_string, std::__1::allocator > const&, int) StandAloneClient.cc:237 SUMMARY: AddressSanitizer: heap-buffer-overflow (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x4f3fd) in __asan_memcpy Shadow bytes around the buggy address: 0x1c0600002260: 00 fa fa fa 00 00 00 fa fa fa 00 00 04 fa fa fa 0x1c0600002270: fd fd fd fd fa fa fd fd fd fd fa fa fd fd fd fd 0x1c0600002280: fa fa 00 00 00 00 fa fa fd fd fd fa fa fa 00 00 0x1c0600002290: 00 fa fa fa fd fd fd fa fa fa 00 00 00 fa fa fa 0x1c06000022a0: fd fd fd fa fa fa 00 00 00 fa fa fa fd fd fd fa =>0x1c06000022b0: fa fa 00 00 00 fa fa fa 00 00[04]fa fa fa 00 00 0x1c06000022c0: 04 fa fa fa 00 00 00 fa fa fa 00 00 00 fa fa fa 0x1c06000022d0: 00 00 04 fa fa fa 00 00 00 00 fa fa fa fa fa fa 0x1c06000022e0: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c06000022f0: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c0600002300: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa Shadow byte legend (one shadow byte represents 8 application bytes): Addressable: 00 Partially addressable: 01 02 03 04 05 06 07 Heap left redzone: fa Freed heap region: fd Stack left redzone: f1 Stack mid redzone: f2 Stack right redzone: f3 Stack after return: f5 Stack use after scope: f8 Global redzone: f9 Global init order: f6 Poisoned by user: f7 Container overflow: fc Array cookie: ac Intra object redzone: bb ASan internal: fe Left alloca redzone: ca Right alloca redzone: cb ==76534==ABORTING /Users/jimg/src/opendap/hyrax_git/bes/modules/ncml_module/tests/testsuite.dir/at-groups/406/test-source: line 44: 76534 Abort trap: 6 besstandalone -c $abs_builddir/bes.conf -i ./test.bescmd stdout: ./aggregations.at:80: exit code was 134, expected 0 406. aggregations.at:80: 406. Comparing dds response for agg/joinNew_simple_2.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_simple_2_cons_1.ncml (aggregations.at:80): FAILED (aggregations.at:80) # -*- compilation -*- 407. aggregations.at:80: testing Comparing ddx response for agg/joinNew_simple_2.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_simple_2_cons_1.ncml ... ./aggregations.at:80: besstandalone -c $abs_builddir/bes.conf -i ./test.bescmd stderr: Width: 20 Name: V Width: 20 Name: V Width: 80 Name: V ================================================================= ==76537==ERROR: AddressSanitizer: heap-buffer-overflow on address 0x6030000115a4 at pc 0x00010997a3fe bp 0x7ffee6a1d6d0 sp 0x7ffee6a1ce80 READ of size 80 at 0x6030000115a4 thread T0 #0 0x10997a3fd in __asan_memcpy (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x4f3fd) Provided dSYM: [/Users/jimg/src/opendap/hyrax_git/build/lib/libdap.25.dylib.dSYM/Contents/Resources/DWARF/libdap.25.dylib] does not match symbol owner 0x7fa16e204f30 #1 0x10d593f39 in libdap::Vector::val2buf(void*, bool) Vector.cc:1212 #2 0x10d57d5e7 in libdap::Vector::m_duplicate(libdap::Vector const&) Vector.cc:116 #3 0x10d581733 in libdap::Vector::Vector(libdap::Vector const&) Vector.cc:297 #4 0x10d5cf385 in libdap::Array::Array(libdap::Array const&) Array.cc:164 #5 0x1145748da in agg_util::ArrayAggregationBase::ArrayAggregationBase(agg_util::ArrayAggregationBase const&) ArrayAggregationBase.cc:56 #6 0x114563f84 in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(agg_util::ArrayAggregateOnOuterDimension const&) ArrayAggregateOnOuterDimension.cc:70 #7 0x11456435c in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(agg_util::ArrayAggregateOnOuterDimension const&) ArrayAggregateOnOuterDimension.cc:71 #8 0x11456489c in agg_util::ArrayAggregateOnOuterDimension::ptr_duplicate() ArrayAggregateOnOuterDimension.cc:85 #9 0x10d4800fd in libdap::DDS::add_var(libdap::BaseType*) DDS.cc:607 #10 0x1144c6de8 in ncml_module::AggregationElement::processAggVarJoinNewForArray(libdap::DDS&, libdap::Array const&, agg_util::Dimension const&, std::__1::vector, std::__1::allocator > > const&) AggregationElement.cc:867 #11 0x114491db0 in ncml_module::AggregationElement::processJoinNewOnAggVar(libdap::DDS*, std::__1::basic_string, std::__1::allocator > const&, libdap::DDS const&) AggregationElement.cc:801 #12 0x1144574d7 in ncml_module::AggregationElement::processJoinNew() AggregationElement.cc:420 #13 0x11444d320 in ncml_module::AggregationElement::handleEnd() AggregationElement.cc:217 #14 0x11489bb9f in ncml_module::NCMLParser::processEndNCMLElement(std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:1186 #15 0x1148a335b in ncml_module::NCMLParser::onEndElementWithNamespace(std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:324 #16 0x114a078c9 in ncmlSax2EndElementNs(void*, unsigned char const*, unsigned char const*, unsigned char const*) SaxParserWrapper.cc:242 #17 0x7fff597e1d8e in xmlParseEndTag2 (libxml2.2.dylib:x86_64+0x37d8e) #18 0x7fff597e0440 in xmlParseElement (libxml2.2.dylib:x86_64+0x36440) #19 0x7fff597e005a in xmlParseContent (libxml2.2.dylib:x86_64+0x3605a) #20 0x7fff597e03f1 in xmlParseElement (libxml2.2.dylib:x86_64+0x363f1) #21 0x7fff597e2b7a in xmlParseDocument (libxml2.2.dylib:x86_64+0x38b7a) #22 0x1149f89ae in ncml_module::SaxParserWrapper::parse(std::__1::basic_string, std::__1::allocator > const&) SaxParserWrapper.cc:338 #23 0x11488dd0b in ncml_module::NCMLParser::parseInto(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType, BESDapResponse*) NCMLParser.cc:185 #24 0x114909aae in ncml_module::NCMLRequestHandler::ncml_build_dds(BESDataHandlerInterface&) NCMLRequestHandler.cc:260 #25 0x109416c8f in BESRequestHandlerList::execute_current(BESDataHandlerInterface&) BESRequestHandlerList.cc:273 #26 0x1094150a4 in BESRequestHandlerList::execute_each(BESDataHandlerInterface&) BESRequestHandlerList.cc:167 #27 0x10d02a5dc in BESDDXResponseHandler::execute(BESDataHandlerInterface&) BESDDXResponseHandler.cc:122 #28 0x10982fd5a in BESXMLInterface::execute_data_request_plan() BESXMLInterface.cc:285 #29 0x10928ab8d in BESInterface::execute_request(std::__1::basic_string, std::__1::allocator > const&) BESInterface.cc:513 #30 0x1091f28d8 in StandAloneClient::executeCommand(std::__1::basic_string, std::__1::allocator > const&, int) StandAloneClient.cc:237 #31 0x1091f03aa in StandAloneClient::executeCommands(std::__1::basic_ifstream >&, int) StandAloneClient.cc:349 #32 0x1091d5e6d in StandAloneApp::run() StandAloneApp.cc:251 #33 0x1094fac24 in BESApp::main(int, char**) BESApp.cc:58 #34 0x1091d912e in main StandAloneApp.cc:345 #35 0x7fff59ad3014 in start (libdyld.dylib:x86_64+0x1014) 0x6030000115a4 is located 0 bytes to the right of 20-byte region [0x603000011590,0x6030000115a4) allocated by thread T0 here: #0 0x10998dcb2 in wrap__Znam (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x62cb2) #1 0x10d57eb3c in libdap::Vector::m_create_cardinal_data_buffer_for_type(unsigned int) Vector.cc:203 #2 0x10d593c15 in libdap::Vector::val2buf(void*, bool) Vector.cc:1206 #3 0x10d57d5e7 in libdap::Vector::m_duplicate(libdap::Vector const&) Vector.cc:116 #4 0x10d581733 in libdap::Vector::Vector(libdap::Vector const&) Vector.cc:297 #5 0x10d5cf385 in libdap::Array::Array(libdap::Array const&) Array.cc:164 #6 0x114574116 in agg_util::ArrayAggregationBase::ArrayAggregationBase(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&) ArrayAggregationBase.cc:50 #7 0x1145637d2 in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&, agg_util::Dimension const&) ArrayAggregateOnOuterDimension.cc:59 #8 0x114563e34 in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&, agg_util::Dimension const&) ArrayAggregateOnOuterDimension.cc:61 #9 0x1144c47ae in ncml_module::AggregationElement::processAggVarJoinNewForArray(libdap::DDS&, libdap::Array const&, agg_util::Dimension const&, std::__1::vector, std::__1::allocator > > const&) AggregationElement.cc:855 #10 0x114491db0 in ncml_module::AggregationElement::processJoinNewOnAggVar(libdap::DDS*, std::__1::basic_string, std::__1::allocator > const&, libdap::DDS const&) AggregationElement.cc:801 #11 0x1144574d7 in ncml_module::AggregationElement::processJoinNew() AggregationElement.cc:420 #12 0x11444d320 in ncml_module::AggregationElement::handleEnd() AggregationElement.cc:217 #13 0x11489bb9f in ncml_module::NCMLParser::processEndNCMLElement(std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:1186 #14 0x1148a335b in ncml_module::NCMLParser::onEndElementWithNamespace(std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:324 #15 0x114a078c9 in ncmlSax2EndElementNs(void*, unsigned char const*, unsigned char const*, unsigned char const*) SaxParserWrapper.cc:242 #16 0x7fff597e1d8e in xmlParseEndTag2 (libxml2.2.dylib:x86_64+0x37d8e) #17 0x7fff597e0440 in xmlParseElement (libxml2.2.dylib:x86_64+0x36440) #18 0x7fff597e005a in xmlParseContent (libxml2.2.dylib:x86_64+0x3605a) #19 0x7fff597e03f1 in xmlParseElement (libxml2.2.dylib:x86_64+0x363f1) #20 0x7fff597e2b7a in xmlParseDocument (libxml2.2.dylib:x86_64+0x38b7a) #21 0x1149f89ae in ncml_module::SaxParserWrapper::parse(std::__1::basic_string, std::__1::allocator > const&) SaxParserWrapper.cc:338 #22 0x11488dd0b in ncml_module::NCMLParser::parseInto(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType, BESDapResponse*) NCMLParser.cc:185 #23 0x114909aae in ncml_module::NCMLRequestHandler::ncml_build_dds(BESDataHandlerInterface&) NCMLRequestHandler.cc:260 #24 0x109416c8f in BESRequestHandlerList::execute_current(BESDataHandlerInterface&) BESRequestHandlerList.cc:273 #25 0x1094150a4 in BESRequestHandlerList::execute_each(BESDataHandlerInterface&) BESRequestHandlerList.cc:167 #26 0x10d02a5dc in BESDDXResponseHandler::execute(BESDataHandlerInterface&) BESDDXResponseHandler.cc:122 #27 0x10982fd5a in BESXMLInterface::execute_data_request_plan() BESXMLInterface.cc:285 #28 0x10928ab8d in BESInterface::execute_request(std::__1::basic_string, std::__1::allocator > const&) BESInterface.cc:513 #29 0x1091f28d8 in StandAloneClient::executeCommand(std::__1::basic_string, std::__1::allocator > const&, int) StandAloneClient.cc:237 SUMMARY: AddressSanitizer: heap-buffer-overflow (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x4f3fd) in __asan_memcpy Shadow bytes around the buggy address: 0x1c0600002260: 00 fa fa fa 00 00 04 fa fa fa fd fd fd fd fa fa 0x1c0600002270: fd fd fd fd fa fa fd fd fd fd fa fa 00 00 00 00 0x1c0600002280: fa fa fd fd fd fa fa fa 00 00 00 fa fa fa fd fd 0x1c0600002290: fd fa fa fa 00 00 00 fa fa fa fd fd fd fa fa fa 0x1c06000022a0: 00 00 00 fa fa fa fd fd fd fa fa fa 00 00 00 fa =>0x1c06000022b0: fa fa 00 00[04]fa fa fa 00 00 04 fa fa fa 00 00 0x1c06000022c0: 00 fa fa fa 00 00 00 fa fa fa 00 00 04 fa fa fa 0x1c06000022d0: 00 00 00 00 fa fa fa fa fa fa fa fa fa fa fa fa 0x1c06000022e0: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c06000022f0: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c0600002300: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa Shadow byte legend (one shadow byte represents 8 application bytes): Addressable: 00 Partially addressable: 01 02 03 04 05 06 07 Heap left redzone: fa Freed heap region: fd Stack left redzone: f1 Stack mid redzone: f2 Stack right redzone: f3 Stack after return: f5 Stack use after scope: f8 Global redzone: f9 Global init order: f6 Poisoned by user: f7 Container overflow: fc Array cookie: ac Intra object redzone: bb ASan internal: fe Left alloca redzone: ca Right alloca redzone: cb ==76537==ABORTING /Users/jimg/src/opendap/hyrax_git/bes/modules/ncml_module/tests/testsuite.dir/at-groups/407/test-source: line 44: 76537 Abort trap: 6 besstandalone -c $abs_builddir/bes.conf -i ./test.bescmd stdout: ./aggregations.at:80: exit code was 134, expected 0 407. aggregations.at:80: 407. Comparing ddx response for agg/joinNew_simple_2.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_simple_2_cons_1.ncml (aggregations.at:80): FAILED (aggregations.at:80) # -*- compilation -*- 408. aggregations.at:80: testing Comparing dods response for agg/joinNew_simple_2.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_simple_2_cons_1.ncml ... ./aggregations.at:80: besstandalone -c $abs_builddir/bes.conf -i ./test.bescmd stderr: Width: 20 Name: V Width: 20 Name: V Width: 80 Name: V ================================================================= ==76542==ERROR: AddressSanitizer: heap-buffer-overflow on address 0x6030000115a4 at pc 0x00010c1c93fe bp 0x7ffee41cc9b0 sp 0x7ffee41cc160 READ of size 80 at 0x6030000115a4 thread T0 #0 0x10c1c93fd in __asan_memcpy (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x4f3fd) Provided dSYM: [/Users/jimg/src/opendap/hyrax_git/build/lib/libdap.25.dylib.dSYM/Contents/Resources/DWARF/libdap.25.dylib] does not match symbol owner 0x7fe4f7808160 #1 0x10fd93f39 in libdap::Vector::val2buf(void*, bool) Vector.cc:1212 #2 0x10fd7d5e7 in libdap::Vector::m_duplicate(libdap::Vector const&) Vector.cc:116 #3 0x10fd81733 in libdap::Vector::Vector(libdap::Vector const&) Vector.cc:297 #4 0x10fdcf385 in libdap::Array::Array(libdap::Array const&) Array.cc:164 #5 0x116dc58da in agg_util::ArrayAggregationBase::ArrayAggregationBase(agg_util::ArrayAggregationBase const&) ArrayAggregationBase.cc:56 #6 0x116db4f84 in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(agg_util::ArrayAggregateOnOuterDimension const&) ArrayAggregateOnOuterDimension.cc:70 #7 0x116db535c in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(agg_util::ArrayAggregateOnOuterDimension const&) ArrayAggregateOnOuterDimension.cc:71 #8 0x116db589c in agg_util::ArrayAggregateOnOuterDimension::ptr_duplicate() ArrayAggregateOnOuterDimension.cc:85 #9 0x10fc800fd in libdap::DDS::add_var(libdap::BaseType*) DDS.cc:607 #10 0x116d17de8 in ncml_module::AggregationElement::processAggVarJoinNewForArray(libdap::DDS&, libdap::Array const&, agg_util::Dimension const&, std::__1::vector, std::__1::allocator > > const&) AggregationElement.cc:867 #11 0x116ce2db0 in ncml_module::AggregationElement::processJoinNewOnAggVar(libdap::DDS*, std::__1::basic_string, std::__1::allocator > const&, libdap::DDS const&) AggregationElement.cc:801 #12 0x116ca84d7 in ncml_module::AggregationElement::processJoinNew() AggregationElement.cc:420 #13 0x116c9e320 in ncml_module::AggregationElement::handleEnd() AggregationElement.cc:217 #14 0x1170ecb9f in ncml_module::NCMLParser::processEndNCMLElement(std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:1186 #15 0x1170f435b in ncml_module::NCMLParser::onEndElementWithNamespace(std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:324 #16 0x1172588c9 in ncmlSax2EndElementNs(void*, unsigned char const*, unsigned char const*, unsigned char const*) SaxParserWrapper.cc:242 #17 0x7fff597e1d8e in xmlParseEndTag2 (libxml2.2.dylib:x86_64+0x37d8e) #18 0x7fff597e0440 in xmlParseElement (libxml2.2.dylib:x86_64+0x36440) #19 0x7fff597e005a in xmlParseContent (libxml2.2.dylib:x86_64+0x3605a) #20 0x7fff597e03f1 in xmlParseElement (libxml2.2.dylib:x86_64+0x363f1) #21 0x7fff597e2b7a in xmlParseDocument (libxml2.2.dylib:x86_64+0x38b7a) #22 0x1172499ae in ncml_module::SaxParserWrapper::parse(std::__1::basic_string, std::__1::allocator > const&) SaxParserWrapper.cc:338 #23 0x1170ded0b in ncml_module::NCMLParser::parseInto(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType, BESDapResponse*) NCMLParser.cc:185 #24 0x117160346 in ncml_module::NCMLRequestHandler::ncml_build_data(BESDataHandlerInterface&) NCMLRequestHandler.cc:297 #25 0x10bc67c8f in BESRequestHandlerList::execute_current(BESDataHandlerInterface&) BESRequestHandlerList.cc:273 #26 0x10bc660a4 in BESRequestHandlerList::execute_each(BESDataHandlerInterface&) BESRequestHandlerList.cc:167 #27 0x10f83288c in BESDataResponseHandler::execute(BESDataHandlerInterface&) BESDataResponseHandler.cc:148 #28 0x10c07ed5a in BESXMLInterface::execute_data_request_plan() BESXMLInterface.cc:285 #29 0x10badbb8d in BESInterface::execute_request(std::__1::basic_string, std::__1::allocator > const&) BESInterface.cc:513 #30 0x10ba438d8 in StandAloneClient::executeCommand(std::__1::basic_string, std::__1::allocator > const&, int) StandAloneClient.cc:237 #31 0x10ba413aa in StandAloneClient::executeCommands(std::__1::basic_ifstream >&, int) StandAloneClient.cc:349 #32 0x10ba26e6d in StandAloneApp::run() StandAloneApp.cc:251 #33 0x10bd4bc24 in BESApp::main(int, char**) BESApp.cc:58 #34 0x10ba2a12e in main StandAloneApp.cc:345 #35 0x7fff59ad3014 in start (libdyld.dylib:x86_64+0x1014) 0x6030000115a4 is located 0 bytes to the right of 20-byte region [0x603000011590,0x6030000115a4) allocated by thread T0 here: #0 0x10c1dccb2 in wrap__Znam (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x62cb2) #1 0x10fd7eb3c in libdap::Vector::m_create_cardinal_data_buffer_for_type(unsigned int) Vector.cc:203 #2 0x10fd93c15 in libdap::Vector::val2buf(void*, bool) Vector.cc:1206 #3 0x10fd7d5e7 in libdap::Vector::m_duplicate(libdap::Vector const&) Vector.cc:116 #4 0x10fd81733 in libdap::Vector::Vector(libdap::Vector const&) Vector.cc:297 #5 0x10fdcf385 in libdap::Array::Array(libdap::Array const&) Array.cc:164 #6 0x116dc5116 in agg_util::ArrayAggregationBase::ArrayAggregationBase(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&) ArrayAggregationBase.cc:50 #7 0x116db47d2 in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&, agg_util::Dimension const&) ArrayAggregateOnOuterDimension.cc:59 #8 0x116db4e34 in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&, agg_util::Dimension const&) ArrayAggregateOnOuterDimension.cc:61 #9 0x116d157ae in ncml_module::AggregationElement::processAggVarJoinNewForArray(libdap::DDS&, libdap::Array const&, agg_util::Dimension const&, std::__1::vector, std::__1::allocator > > const&) AggregationElement.cc:855 #10 0x116ce2db0 in ncml_module::AggregationElement::processJoinNewOnAggVar(libdap::DDS*, std::__1::basic_string, std::__1::allocator > const&, libdap::DDS const&) AggregationElement.cc:801 #11 0x116ca84d7 in ncml_module::AggregationElement::processJoinNew() AggregationElement.cc:420 #12 0x116c9e320 in ncml_module::AggregationElement::handleEnd() AggregationElement.cc:217 #13 0x1170ecb9f in ncml_module::NCMLParser::processEndNCMLElement(std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:1186 #14 0x1170f435b in ncml_module::NCMLParser::onEndElementWithNamespace(std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:324 #15 0x1172588c9 in ncmlSax2EndElementNs(void*, unsigned char const*, unsigned char const*, unsigned char const*) SaxParserWrapper.cc:242 #16 0x7fff597e1d8e in xmlParseEndTag2 (libxml2.2.dylib:x86_64+0x37d8e) #17 0x7fff597e0440 in xmlParseElement (libxml2.2.dylib:x86_64+0x36440) #18 0x7fff597e005a in xmlParseContent (libxml2.2.dylib:x86_64+0x3605a) #19 0x7fff597e03f1 in xmlParseElement (libxml2.2.dylib:x86_64+0x363f1) #20 0x7fff597e2b7a in xmlParseDocument (libxml2.2.dylib:x86_64+0x38b7a) #21 0x1172499ae in ncml_module::SaxParserWrapper::parse(std::__1::basic_string, std::__1::allocator > const&) SaxParserWrapper.cc:338 #22 0x1170ded0b in ncml_module::NCMLParser::parseInto(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType, BESDapResponse*) NCMLParser.cc:185 #23 0x117160346 in ncml_module::NCMLRequestHandler::ncml_build_data(BESDataHandlerInterface&) NCMLRequestHandler.cc:297 #24 0x10bc67c8f in BESRequestHandlerList::execute_current(BESDataHandlerInterface&) BESRequestHandlerList.cc:273 #25 0x10bc660a4 in BESRequestHandlerList::execute_each(BESDataHandlerInterface&) BESRequestHandlerList.cc:167 #26 0x10f83288c in BESDataResponseHandler::execute(BESDataHandlerInterface&) BESDataResponseHandler.cc:148 #27 0x10c07ed5a in BESXMLInterface::execute_data_request_plan() BESXMLInterface.cc:285 #28 0x10badbb8d in BESInterface::execute_request(std::__1::basic_string, std::__1::allocator > const&) BESInterface.cc:513 #29 0x10ba438d8 in StandAloneClient::executeCommand(std::__1::basic_string, std::__1::allocator > const&, int) StandAloneClient.cc:237 SUMMARY: AddressSanitizer: heap-buffer-overflow (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x4f3fd) in __asan_memcpy Shadow bytes around the buggy address: 0x1c0600002260: 00 fa fa fa 00 00 04 fa fa fa fd fd fd fd fa fa 0x1c0600002270: fd fd fd fd fa fa fd fd fd fd fa fa 00 00 00 00 0x1c0600002280: fa fa fd fd fd fa fa fa 00 00 00 fa fa fa fd fd 0x1c0600002290: fd fa fa fa 00 00 00 fa fa fa fd fd fd fa fa fa 0x1c06000022a0: 00 00 00 fa fa fa fd fd fd fa fa fa 00 00 00 fa =>0x1c06000022b0: fa fa 00 00[04]fa fa fa 00 00 04 fa fa fa 00 00 0x1c06000022c0: 00 fa fa fa 00 00 00 fa fa fa 00 00 04 fa fa fa 0x1c06000022d0: 00 00 00 00 fa fa fa fa fa fa fa fa fa fa fa fa 0x1c06000022e0: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c06000022f0: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c0600002300: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa Shadow byte legend (one shadow byte represents 8 application bytes): Addressable: 00 Partially addressable: 01 02 03 04 05 06 07 Heap left redzone: fa Freed heap region: fd Stack left redzone: f1 Stack mid redzone: f2 Stack right redzone: f3 Stack after return: f5 Stack use after scope: f8 Global redzone: f9 Global init order: f6 Poisoned by user: f7 Container overflow: fc Array cookie: ac Intra object redzone: bb ASan internal: fe Left alloca redzone: ca Right alloca redzone: cb ==76542==ABORTING /Users/jimg/src/opendap/hyrax_git/bes/modules/ncml_module/tests/testsuite.dir/at-groups/408/test-source: line 44: 76542 Abort trap: 6 besstandalone -c $abs_builddir/bes.conf -i ./test.bescmd stdout: ./aggregations.at:80: exit code was 134, expected 0 408. aggregations.at:80: 408. Comparing dods response for agg/joinNew_simple_2.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_simple_2_cons_1.ncml (aggregations.at:80): FAILED (aggregations.at:80) # -*- compilation -*- 409. aggregations.at:83: testing Comparing das response for agg/joinNew_simple_2.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_simple_2_cons_2.ncml ... ./aggregations.at:83: besstandalone -c $abs_builddir/bes.conf -i ./test.bescmd stderr: Width: 20 Name: V Width: 20 Name: V Width: 80 Name: V ================================================================= ==76544==ERROR: AddressSanitizer: heap-buffer-overflow on address 0x6030000115d4 at pc 0x000106f2f3fe bp 0x7ffee9469810 sp 0x7ffee9468fc0 READ of size 80 at 0x6030000115d4 thread T0 #0 0x106f2f3fd in __asan_memcpy (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x4f3fd) Provided dSYM: [/Users/jimg/src/opendap/hyrax_git/build/lib/libdap.25.dylib.dSYM/Contents/Resources/DWARF/libdap.25.dylib] does not match symbol owner 0x7f88ceb04390 #1 0x10aadbf39 in libdap::Vector::val2buf(void*, bool) Vector.cc:1212 #2 0x10aac55e7 in libdap::Vector::m_duplicate(libdap::Vector const&) Vector.cc:116 #3 0x10aac9733 in libdap::Vector::Vector(libdap::Vector const&) Vector.cc:297 #4 0x10ab17385 in libdap::Array::Array(libdap::Array const&) Array.cc:164 #5 0x111b288da in agg_util::ArrayAggregationBase::ArrayAggregationBase(agg_util::ArrayAggregationBase const&) ArrayAggregationBase.cc:56 #6 0x111b17f84 in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(agg_util::ArrayAggregateOnOuterDimension const&) ArrayAggregateOnOuterDimension.cc:70 #7 0x111b1835c in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(agg_util::ArrayAggregateOnOuterDimension const&) ArrayAggregateOnOuterDimension.cc:71 #8 0x111b1889c in agg_util::ArrayAggregateOnOuterDimension::ptr_duplicate() ArrayAggregateOnOuterDimension.cc:85 #9 0x10a9c80fd in libdap::DDS::add_var(libdap::BaseType*) DDS.cc:607 #10 0x111a7ade8 in ncml_module::AggregationElement::processAggVarJoinNewForArray(libdap::DDS&, libdap::Array const&, agg_util::Dimension const&, std::__1::vector, std::__1::allocator > > const&) AggregationElement.cc:867 #11 0x111a45db0 in ncml_module::AggregationElement::processJoinNewOnAggVar(libdap::DDS*, std::__1::basic_string, std::__1::allocator > const&, libdap::DDS const&) AggregationElement.cc:801 #12 0x111a0b4d7 in ncml_module::AggregationElement::processJoinNew() AggregationElement.cc:420 #13 0x111a01320 in ncml_module::AggregationElement::handleEnd() AggregationElement.cc:217 #14 0x111e4fb9f in ncml_module::NCMLParser::processEndNCMLElement(std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:1186 #15 0x111e5735b in ncml_module::NCMLParser::onEndElementWithNamespace(std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:324 #16 0x111fbb8c9 in ncmlSax2EndElementNs(void*, unsigned char const*, unsigned char const*, unsigned char const*) SaxParserWrapper.cc:242 #17 0x7fff597e1d8e in xmlParseEndTag2 (libxml2.2.dylib:x86_64+0x37d8e) #18 0x7fff597e0440 in xmlParseElement (libxml2.2.dylib:x86_64+0x36440) #19 0x7fff597e005a in xmlParseContent (libxml2.2.dylib:x86_64+0x3605a) #20 0x7fff597e03f1 in xmlParseElement (libxml2.2.dylib:x86_64+0x363f1) #21 0x7fff597e2b7a in xmlParseDocument (libxml2.2.dylib:x86_64+0x38b7a) #22 0x111fac9ae in ncml_module::SaxParserWrapper::parse(std::__1::basic_string, std::__1::allocator > const&) SaxParserWrapper.cc:338 #23 0x111e41d0b in ncml_module::NCMLParser::parseInto(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType, BESDapResponse*) NCMLParser.cc:185 #24 0x111e3b1e7 in ncml_module::NCMLParser::parse(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType) NCMLParser.cc:155 #25 0x111eb5841 in ncml_module::NCMLRequestHandler::ncml_build_das(BESDataHandlerInterface&) NCMLRequestHandler.cc:172 #26 0x1069cfc8f in BESRequestHandlerList::execute_current(BESDataHandlerInterface&) BESRequestHandlerList.cc:273 #27 0x1069ce0a4 in BESRequestHandlerList::execute_each(BESDataHandlerInterface&) BESRequestHandlerList.cc:167 #28 0x10a521ff0 in BESDASResponseHandler::execute(BESDataHandlerInterface&) BESDASResponseHandler.cc:95 #29 0x106debd5a in BESXMLInterface::execute_data_request_plan() BESXMLInterface.cc:285 #30 0x106843b8d in BESInterface::execute_request(std::__1::basic_string, std::__1::allocator > const&) BESInterface.cc:513 #31 0x1067a68d8 in StandAloneClient::executeCommand(std::__1::basic_string, std::__1::allocator > const&, int) StandAloneClient.cc:237 #32 0x1067a43aa in StandAloneClient::executeCommands(std::__1::basic_ifstream >&, int) StandAloneClient.cc:349 #33 0x106789e6d in StandAloneApp::run() StandAloneApp.cc:251 #34 0x106ab3c24 in BESApp::main(int, char**) BESApp.cc:58 #35 0x10678d12e in main StandAloneApp.cc:345 #36 0x7fff59ad3014 in start (libdyld.dylib:x86_64+0x1014) 0x6030000115d4 is located 0 bytes to the right of 20-byte region [0x6030000115c0,0x6030000115d4) allocated by thread T0 here: #0 0x106f42cb2 in wrap__Znam (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x62cb2) #1 0x10aac6b3c in libdap::Vector::m_create_cardinal_data_buffer_for_type(unsigned int) Vector.cc:203 #2 0x10aadbc15 in libdap::Vector::val2buf(void*, bool) Vector.cc:1206 #3 0x10aac55e7 in libdap::Vector::m_duplicate(libdap::Vector const&) Vector.cc:116 #4 0x10aac9733 in libdap::Vector::Vector(libdap::Vector const&) Vector.cc:297 #5 0x10ab17385 in libdap::Array::Array(libdap::Array const&) Array.cc:164 #6 0x111b28116 in agg_util::ArrayAggregationBase::ArrayAggregationBase(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&) ArrayAggregationBase.cc:50 #7 0x111b177d2 in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&, agg_util::Dimension const&) ArrayAggregateOnOuterDimension.cc:59 #8 0x111b17e34 in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&, agg_util::Dimension const&) ArrayAggregateOnOuterDimension.cc:61 #9 0x111a787ae in ncml_module::AggregationElement::processAggVarJoinNewForArray(libdap::DDS&, libdap::Array const&, agg_util::Dimension const&, std::__1::vector, std::__1::allocator > > const&) AggregationElement.cc:855 #10 0x111a45db0 in ncml_module::AggregationElement::processJoinNewOnAggVar(libdap::DDS*, std::__1::basic_string, std::__1::allocator > const&, libdap::DDS const&) AggregationElement.cc:801 #11 0x111a0b4d7 in ncml_module::AggregationElement::processJoinNew() AggregationElement.cc:420 #12 0x111a01320 in ncml_module::AggregationElement::handleEnd() AggregationElement.cc:217 #13 0x111e4fb9f in ncml_module::NCMLParser::processEndNCMLElement(std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:1186 #14 0x111e5735b in ncml_module::NCMLParser::onEndElementWithNamespace(std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:324 #15 0x111fbb8c9 in ncmlSax2EndElementNs(void*, unsigned char const*, unsigned char const*, unsigned char const*) SaxParserWrapper.cc:242 #16 0x7fff597e1d8e in xmlParseEndTag2 (libxml2.2.dylib:x86_64+0x37d8e) #17 0x7fff597e0440 in xmlParseElement (libxml2.2.dylib:x86_64+0x36440) #18 0x7fff597e005a in xmlParseContent (libxml2.2.dylib:x86_64+0x3605a) #19 0x7fff597e03f1 in xmlParseElement (libxml2.2.dylib:x86_64+0x363f1) #20 0x7fff597e2b7a in xmlParseDocument (libxml2.2.dylib:x86_64+0x38b7a) #21 0x111fac9ae in ncml_module::SaxParserWrapper::parse(std::__1::basic_string, std::__1::allocator > const&) SaxParserWrapper.cc:338 #22 0x111e41d0b in ncml_module::NCMLParser::parseInto(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType, BESDapResponse*) NCMLParser.cc:185 #23 0x111e3b1e7 in ncml_module::NCMLParser::parse(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType) NCMLParser.cc:155 #24 0x111eb5841 in ncml_module::NCMLRequestHandler::ncml_build_das(BESDataHandlerInterface&) NCMLRequestHandler.cc:172 #25 0x1069cfc8f in BESRequestHandlerList::execute_current(BESDataHandlerInterface&) BESRequestHandlerList.cc:273 #26 0x1069ce0a4 in BESRequestHandlerList::execute_each(BESDataHandlerInterface&) BESRequestHandlerList.cc:167 #27 0x10a521ff0 in BESDASResponseHandler::execute(BESDataHandlerInterface&) BESDASResponseHandler.cc:95 #28 0x106debd5a in BESXMLInterface::execute_data_request_plan() BESXMLInterface.cc:285 #29 0x106843b8d in BESInterface::execute_request(std::__1::basic_string, std::__1::allocator > const&) BESInterface.cc:513 SUMMARY: AddressSanitizer: heap-buffer-overflow (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x4f3fd) in __asan_memcpy Shadow bytes around the buggy address: 0x1c0600002260: 00 fa fa fa 00 00 00 fa fa fa 00 00 04 fa fa fa 0x1c0600002270: fd fd fd fd fa fa fd fd fd fd fa fa fd fd fd fd 0x1c0600002280: fa fa 00 00 00 00 fa fa fd fd fd fa fa fa 00 00 0x1c0600002290: 00 fa fa fa fd fd fd fa fa fa 00 00 00 fa fa fa 0x1c06000022a0: fd fd fd fa fa fa 00 00 00 fa fa fa fd fd fd fa =>0x1c06000022b0: fa fa 00 00 00 fa fa fa 00 00[04]fa fa fa 00 00 0x1c06000022c0: 04 fa fa fa 00 00 00 fa fa fa 00 00 00 fa fa fa 0x1c06000022d0: 00 00 04 fa fa fa 00 00 00 00 fa fa fa fa fa fa 0x1c06000022e0: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c06000022f0: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c0600002300: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa Shadow byte legend (one shadow byte represents 8 application bytes): Addressable: 00 Partially addressable: 01 02 03 04 05 06 07 Heap left redzone: fa Freed heap region: fd Stack left redzone: f1 Stack mid redzone: f2 Stack right redzone: f3 Stack after return: f5 Stack use after scope: f8 Global redzone: f9 Global init order: f6 Poisoned by user: f7 Container overflow: fc Array cookie: ac Intra object redzone: bb ASan internal: fe Left alloca redzone: ca Right alloca redzone: cb ==76544==ABORTING /Users/jimg/src/opendap/hyrax_git/bes/modules/ncml_module/tests/testsuite.dir/at-groups/409/test-source: line 44: 76544 Abort trap: 6 besstandalone -c $abs_builddir/bes.conf -i ./test.bescmd stdout: ./aggregations.at:83: exit code was 134, expected 0 409. aggregations.at:83: 409. Comparing das response for agg/joinNew_simple_2.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_simple_2_cons_2.ncml (aggregations.at:83): FAILED (aggregations.at:83) # -*- compilation -*- 410. aggregations.at:83: testing Comparing dds response for agg/joinNew_simple_2.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_simple_2_cons_2.ncml ... ./aggregations.at:83: besstandalone -c $abs_builddir/bes.conf -i ./test.bescmd stderr: Width: 20 Name: V Width: 20 Name: V Width: 80 Name: V ================================================================= ==76586==ERROR: AddressSanitizer: heap-buffer-overflow on address 0x6030000115d4 at pc 0x000105a693fe bp 0x7ffeea92ab30 sp 0x7ffeea92a2e0 READ of size 80 at 0x6030000115d4 thread T0 #0 0x105a693fd in __asan_memcpy (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x4f3fd) Provided dSYM: [/Users/jimg/src/opendap/hyrax_git/build/lib/libdap.25.dylib.dSYM/Contents/Resources/DWARF/libdap.25.dylib] does not match symbol owner 0x7f9ad4406570 #1 0x109806f39 in libdap::Vector::val2buf(void*, bool) Vector.cc:1212 #2 0x1097f05e7 in libdap::Vector::m_duplicate(libdap::Vector const&) Vector.cc:116 #3 0x1097f4733 in libdap::Vector::Vector(libdap::Vector const&) Vector.cc:297 #4 0x109842385 in libdap::Array::Array(libdap::Array const&) Array.cc:164 #5 0x11070e8da in agg_util::ArrayAggregationBase::ArrayAggregationBase(agg_util::ArrayAggregationBase const&) ArrayAggregationBase.cc:56 #6 0x1106fdf84 in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(agg_util::ArrayAggregateOnOuterDimension const&) ArrayAggregateOnOuterDimension.cc:70 #7 0x1106fe35c in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(agg_util::ArrayAggregateOnOuterDimension const&) ArrayAggregateOnOuterDimension.cc:71 #8 0x1106fe89c in agg_util::ArrayAggregateOnOuterDimension::ptr_duplicate() ArrayAggregateOnOuterDimension.cc:85 #9 0x1096f30fd in libdap::DDS::add_var(libdap::BaseType*) DDS.cc:607 #10 0x110660de8 in ncml_module::AggregationElement::processAggVarJoinNewForArray(libdap::DDS&, libdap::Array const&, agg_util::Dimension const&, std::__1::vector, std::__1::allocator > > const&) AggregationElement.cc:867 #11 0x11062bdb0 in ncml_module::AggregationElement::processJoinNewOnAggVar(libdap::DDS*, std::__1::basic_string, std::__1::allocator > const&, libdap::DDS const&) AggregationElement.cc:801 #12 0x1105f14d7 in ncml_module::AggregationElement::processJoinNew() AggregationElement.cc:420 #13 0x1105e7320 in ncml_module::AggregationElement::handleEnd() AggregationElement.cc:217 #14 0x110a35b9f in ncml_module::NCMLParser::processEndNCMLElement(std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:1186 #15 0x110a3d35b in ncml_module::NCMLParser::onEndElementWithNamespace(std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:324 #16 0x110ba18c9 in ncmlSax2EndElementNs(void*, unsigned char const*, unsigned char const*, unsigned char const*) SaxParserWrapper.cc:242 #17 0x7fff597e1d8e in xmlParseEndTag2 (libxml2.2.dylib:x86_64+0x37d8e) #18 0x7fff597e0440 in xmlParseElement (libxml2.2.dylib:x86_64+0x36440) #19 0x7fff597e005a in xmlParseContent (libxml2.2.dylib:x86_64+0x3605a) #20 0x7fff597e03f1 in xmlParseElement (libxml2.2.dylib:x86_64+0x363f1) #21 0x7fff597e2b7a in xmlParseDocument (libxml2.2.dylib:x86_64+0x38b7a) #22 0x110b929ae in ncml_module::SaxParserWrapper::parse(std::__1::basic_string, std::__1::allocator > const&) SaxParserWrapper.cc:338 #23 0x110a27d0b in ncml_module::NCMLParser::parseInto(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType, BESDapResponse*) NCMLParser.cc:185 #24 0x110aa3aae in ncml_module::NCMLRequestHandler::ncml_build_dds(BESDataHandlerInterface&) NCMLRequestHandler.cc:260 #25 0x10550ac8f in BESRequestHandlerList::execute_current(BESDataHandlerInterface&) BESRequestHandlerList.cc:273 #26 0x1055090a4 in BESRequestHandlerList::execute_each(BESDataHandlerInterface&) BESRequestHandlerList.cc:167 #27 0x109128048 in BESDDSResponseHandler::execute(BESDataHandlerInterface&) BESDDSResponseHandler.cc:107 #28 0x105924d5a in BESXMLInterface::execute_data_request_plan() BESXMLInterface.cc:285 #29 0x10537eb8d in BESInterface::execute_request(std::__1::basic_string, std::__1::allocator > const&) BESInterface.cc:513 #30 0x1052e58d8 in StandAloneClient::executeCommand(std::__1::basic_string, std::__1::allocator > const&, int) StandAloneClient.cc:237 #31 0x1052e33aa in StandAloneClient::executeCommands(std::__1::basic_ifstream >&, int) StandAloneClient.cc:349 #32 0x1052c8e6d in StandAloneApp::run() StandAloneApp.cc:251 #33 0x1055eec24 in BESApp::main(int, char**) BESApp.cc:58 #34 0x1052cc12e in main StandAloneApp.cc:345 #35 0x7fff59ad3014 in start (libdyld.dylib:x86_64+0x1014) 0x6030000115d4 is located 0 bytes to the right of 20-byte region [0x6030000115c0,0x6030000115d4) allocated by thread T0 here: #0 0x105a7ccb2 in wrap__Znam (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x62cb2) #1 0x1097f1b3c in libdap::Vector::m_create_cardinal_data_buffer_for_type(unsigned int) Vector.cc:203 #2 0x109806c15 in libdap::Vector::val2buf(void*, bool) Vector.cc:1206 #3 0x1097f05e7 in libdap::Vector::m_duplicate(libdap::Vector const&) Vector.cc:116 #4 0x1097f4733 in libdap::Vector::Vector(libdap::Vector const&) Vector.cc:297 #5 0x109842385 in libdap::Array::Array(libdap::Array const&) Array.cc:164 #6 0x11070e116 in agg_util::ArrayAggregationBase::ArrayAggregationBase(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&) ArrayAggregationBase.cc:50 #7 0x1106fd7d2 in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&, agg_util::Dimension const&) ArrayAggregateOnOuterDimension.cc:59 #8 0x1106fde34 in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&, agg_util::Dimension const&) ArrayAggregateOnOuterDimension.cc:61 #9 0x11065e7ae in ncml_module::AggregationElement::processAggVarJoinNewForArray(libdap::DDS&, libdap::Array const&, agg_util::Dimension const&, std::__1::vector, std::__1::allocator > > const&) AggregationElement.cc:855 #10 0x11062bdb0 in ncml_module::AggregationElement::processJoinNewOnAggVar(libdap::DDS*, std::__1::basic_string, std::__1::allocator > const&, libdap::DDS const&) AggregationElement.cc:801 #11 0x1105f14d7 in ncml_module::AggregationElement::processJoinNew() AggregationElement.cc:420 #12 0x1105e7320 in ncml_module::AggregationElement::handleEnd() AggregationElement.cc:217 #13 0x110a35b9f in ncml_module::NCMLParser::processEndNCMLElement(std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:1186 #14 0x110a3d35b in ncml_module::NCMLParser::onEndElementWithNamespace(std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:324 #15 0x110ba18c9 in ncmlSax2EndElementNs(void*, unsigned char const*, unsigned char const*, unsigned char const*) SaxParserWrapper.cc:242 #16 0x7fff597e1d8e in xmlParseEndTag2 (libxml2.2.dylib:x86_64+0x37d8e) #17 0x7fff597e0440 in xmlParseElement (libxml2.2.dylib:x86_64+0x36440) #18 0x7fff597e005a in xmlParseContent (libxml2.2.dylib:x86_64+0x3605a) #19 0x7fff597e03f1 in xmlParseElement (libxml2.2.dylib:x86_64+0x363f1) #20 0x7fff597e2b7a in xmlParseDocument (libxml2.2.dylib:x86_64+0x38b7a) #21 0x110b929ae in ncml_module::SaxParserWrapper::parse(std::__1::basic_string, std::__1::allocator > const&) SaxParserWrapper.cc:338 #22 0x110a27d0b in ncml_module::NCMLParser::parseInto(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType, BESDapResponse*) NCMLParser.cc:185 #23 0x110aa3aae in ncml_module::NCMLRequestHandler::ncml_build_dds(BESDataHandlerInterface&) NCMLRequestHandler.cc:260 #24 0x10550ac8f in BESRequestHandlerList::execute_current(BESDataHandlerInterface&) BESRequestHandlerList.cc:273 #25 0x1055090a4 in BESRequestHandlerList::execute_each(BESDataHandlerInterface&) BESRequestHandlerList.cc:167 #26 0x109128048 in BESDDSResponseHandler::execute(BESDataHandlerInterface&) BESDDSResponseHandler.cc:107 #27 0x105924d5a in BESXMLInterface::execute_data_request_plan() BESXMLInterface.cc:285 #28 0x10537eb8d in BESInterface::execute_request(std::__1::basic_string, std::__1::allocator > const&) BESInterface.cc:513 #29 0x1052e58d8 in StandAloneClient::executeCommand(std::__1::basic_string, std::__1::allocator > const&, int) StandAloneClient.cc:237 SUMMARY: AddressSanitizer: heap-buffer-overflow (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x4f3fd) in __asan_memcpy Shadow bytes around the buggy address: 0x1c0600002260: 00 fa fa fa 00 00 00 fa fa fa 00 00 04 fa fa fa 0x1c0600002270: fd fd fd fd fa fa fd fd fd fd fa fa fd fd fd fd 0x1c0600002280: fa fa 00 00 00 00 fa fa fd fd fd fa fa fa 00 00 0x1c0600002290: 00 fa fa fa fd fd fd fa fa fa 00 00 00 fa fa fa 0x1c06000022a0: fd fd fd fa fa fa 00 00 00 fa fa fa fd fd fd fa =>0x1c06000022b0: fa fa 00 00 00 fa fa fa 00 00[04]fa fa fa 00 00 0x1c06000022c0: 04 fa fa fa 00 00 00 fa fa fa 00 00 00 fa fa fa 0x1c06000022d0: 00 00 04 fa fa fa 00 00 00 00 fa fa fa fa fa fa 0x1c06000022e0: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c06000022f0: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c0600002300: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa Shadow byte legend (one shadow byte represents 8 application bytes): Addressable: 00 Partially addressable: 01 02 03 04 05 06 07 Heap left redzone: fa Freed heap region: fd Stack left redzone: f1 Stack mid redzone: f2 Stack right redzone: f3 Stack after return: f5 Stack use after scope: f8 Global redzone: f9 Global init order: f6 Poisoned by user: f7 Container overflow: fc Array cookie: ac Intra object redzone: bb ASan internal: fe Left alloca redzone: ca Right alloca redzone: cb ==76586==ABORTING /Users/jimg/src/opendap/hyrax_git/bes/modules/ncml_module/tests/testsuite.dir/at-groups/410/test-source: line 44: 76586 Abort trap: 6 besstandalone -c $abs_builddir/bes.conf -i ./test.bescmd stdout: ./aggregations.at:83: exit code was 134, expected 0 410. aggregations.at:83: 410. Comparing dds response for agg/joinNew_simple_2.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_simple_2_cons_2.ncml (aggregations.at:83): FAILED (aggregations.at:83) # -*- compilation -*- 411. aggregations.at:83: testing Comparing ddx response for agg/joinNew_simple_2.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_simple_2_cons_2.ncml ... ./aggregations.at:83: besstandalone -c $abs_builddir/bes.conf -i ./test.bescmd stderr: Width: 20 Name: V Width: 20 Name: V Width: 80 Name: V ================================================================= ==76653==ERROR: AddressSanitizer: heap-buffer-overflow on address 0x6030000115a4 at pc 0x0001080e93fe bp 0x7ffee82a56d0 sp 0x7ffee82a4e80 READ of size 80 at 0x6030000115a4 thread T0 #0 0x1080e93fd in __asan_memcpy (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x4f3fd) Provided dSYM: [/Users/jimg/src/opendap/hyrax_git/build/lib/libdap.25.dylib.dSYM/Contents/Resources/DWARF/libdap.25.dylib] does not match symbol owner 0x7fc618008b60 #1 0x109cdbf39 in libdap::Vector::val2buf(void*, bool) Vector.cc:1212 #2 0x109cc55e7 in libdap::Vector::m_duplicate(libdap::Vector const&) Vector.cc:116 #3 0x109cc9733 in libdap::Vector::Vector(libdap::Vector const&) Vector.cc:297 #4 0x109d17385 in libdap::Array::Array(libdap::Array const&) Array.cc:164 #5 0x112d8e8da in agg_util::ArrayAggregationBase::ArrayAggregationBase(agg_util::ArrayAggregationBase const&) ArrayAggregationBase.cc:56 #6 0x112d7df84 in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(agg_util::ArrayAggregateOnOuterDimension const&) ArrayAggregateOnOuterDimension.cc:70 #7 0x112d7e35c in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(agg_util::ArrayAggregateOnOuterDimension const&) ArrayAggregateOnOuterDimension.cc:71 #8 0x112d7e89c in agg_util::ArrayAggregateOnOuterDimension::ptr_duplicate() ArrayAggregateOnOuterDimension.cc:85 #9 0x109bc80fd in libdap::DDS::add_var(libdap::BaseType*) DDS.cc:607 #10 0x112ce0de8 in ncml_module::AggregationElement::processAggVarJoinNewForArray(libdap::DDS&, libdap::Array const&, agg_util::Dimension const&, std::__1::vector, std::__1::allocator > > const&) AggregationElement.cc:867 #11 0x112cabdb0 in ncml_module::AggregationElement::processJoinNewOnAggVar(libdap::DDS*, std::__1::basic_string, std::__1::allocator > const&, libdap::DDS const&) AggregationElement.cc:801 #12 0x112c714d7 in ncml_module::AggregationElement::processJoinNew() AggregationElement.cc:420 #13 0x112c67320 in ncml_module::AggregationElement::handleEnd() AggregationElement.cc:217 #14 0x1130b5b9f in ncml_module::NCMLParser::processEndNCMLElement(std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:1186 #15 0x1130bd35b in ncml_module::NCMLParser::onEndElementWithNamespace(std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:324 #16 0x1132218c9 in ncmlSax2EndElementNs(void*, unsigned char const*, unsigned char const*, unsigned char const*) SaxParserWrapper.cc:242 #17 0x7fff597e1d8e in xmlParseEndTag2 (libxml2.2.dylib:x86_64+0x37d8e) #18 0x7fff597e0440 in xmlParseElement (libxml2.2.dylib:x86_64+0x36440) #19 0x7fff597e005a in xmlParseContent (libxml2.2.dylib:x86_64+0x3605a) #20 0x7fff597e03f1 in xmlParseElement (libxml2.2.dylib:x86_64+0x363f1) #21 0x7fff597e2b7a in xmlParseDocument (libxml2.2.dylib:x86_64+0x38b7a) #22 0x1132129ae in ncml_module::SaxParserWrapper::parse(std::__1::basic_string, std::__1::allocator > const&) SaxParserWrapper.cc:338 #23 0x1130a7d0b in ncml_module::NCMLParser::parseInto(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType, BESDapResponse*) NCMLParser.cc:185 #24 0x113123aae in ncml_module::NCMLRequestHandler::ncml_build_dds(BESDataHandlerInterface&) NCMLRequestHandler.cc:260 #25 0x107b8dc8f in BESRequestHandlerList::execute_current(BESDataHandlerInterface&) BESRequestHandlerList.cc:273 #26 0x107b8c0a4 in BESRequestHandlerList::execute_each(BESDataHandlerInterface&) BESRequestHandlerList.cc:167 #27 0x10972a5dc in BESDDXResponseHandler::execute(BESDataHandlerInterface&) BESDDXResponseHandler.cc:122 #28 0x107fa2d5a in BESXMLInterface::execute_data_request_plan() BESXMLInterface.cc:285 #29 0x107a01b8d in BESInterface::execute_request(std::__1::basic_string, std::__1::allocator > const&) BESInterface.cc:513 #30 0x10796a8d8 in StandAloneClient::executeCommand(std::__1::basic_string, std::__1::allocator > const&, int) StandAloneClient.cc:237 #31 0x1079683aa in StandAloneClient::executeCommands(std::__1::basic_ifstream >&, int) StandAloneClient.cc:349 #32 0x10794de6d in StandAloneApp::run() StandAloneApp.cc:251 #33 0x107c71c24 in BESApp::main(int, char**) BESApp.cc:58 #34 0x10795112e in main StandAloneApp.cc:345 #35 0x7fff59ad3014 in start (libdyld.dylib:x86_64+0x1014) 0x6030000115a4 is located 0 bytes to the right of 20-byte region [0x603000011590,0x6030000115a4) allocated by thread T0 here: #0 0x1080fccb2 in wrap__Znam (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x62cb2) #1 0x109cc6b3c in libdap::Vector::m_create_cardinal_data_buffer_for_type(unsigned int) Vector.cc:203 #2 0x109cdbc15 in libdap::Vector::val2buf(void*, bool) Vector.cc:1206 #3 0x109cc55e7 in libdap::Vector::m_duplicate(libdap::Vector const&) Vector.cc:116 #4 0x109cc9733 in libdap::Vector::Vector(libdap::Vector const&) Vector.cc:297 #5 0x109d17385 in libdap::Array::Array(libdap::Array const&) Array.cc:164 #6 0x112d8e116 in agg_util::ArrayAggregationBase::ArrayAggregationBase(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&) ArrayAggregationBase.cc:50 #7 0x112d7d7d2 in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&, agg_util::Dimension const&) ArrayAggregateOnOuterDimension.cc:59 #8 0x112d7de34 in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&, agg_util::Dimension const&) ArrayAggregateOnOuterDimension.cc:61 #9 0x112cde7ae in ncml_module::AggregationElement::processAggVarJoinNewForArray(libdap::DDS&, libdap::Array const&, agg_util::Dimension const&, std::__1::vector, std::__1::allocator > > const&) AggregationElement.cc:855 #10 0x112cabdb0 in ncml_module::AggregationElement::processJoinNewOnAggVar(libdap::DDS*, std::__1::basic_string, std::__1::allocator > const&, libdap::DDS const&) AggregationElement.cc:801 #11 0x112c714d7 in ncml_module::AggregationElement::processJoinNew() AggregationElement.cc:420 #12 0x112c67320 in ncml_module::AggregationElement::handleEnd() AggregationElement.cc:217 #13 0x1130b5b9f in ncml_module::NCMLParser::processEndNCMLElement(std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:1186 #14 0x1130bd35b in ncml_module::NCMLParser::onEndElementWithNamespace(std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:324 #15 0x1132218c9 in ncmlSax2EndElementNs(void*, unsigned char const*, unsigned char const*, unsigned char const*) SaxParserWrapper.cc:242 #16 0x7fff597e1d8e in xmlParseEndTag2 (libxml2.2.dylib:x86_64+0x37d8e) #17 0x7fff597e0440 in xmlParseElement (libxml2.2.dylib:x86_64+0x36440) #18 0x7fff597e005a in xmlParseContent (libxml2.2.dylib:x86_64+0x3605a) #19 0x7fff597e03f1 in xmlParseElement (libxml2.2.dylib:x86_64+0x363f1) #20 0x7fff597e2b7a in xmlParseDocument (libxml2.2.dylib:x86_64+0x38b7a) #21 0x1132129ae in ncml_module::SaxParserWrapper::parse(std::__1::basic_string, std::__1::allocator > const&) SaxParserWrapper.cc:338 #22 0x1130a7d0b in ncml_module::NCMLParser::parseInto(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType, BESDapResponse*) NCMLParser.cc:185 #23 0x113123aae in ncml_module::NCMLRequestHandler::ncml_build_dds(BESDataHandlerInterface&) NCMLRequestHandler.cc:260 #24 0x107b8dc8f in BESRequestHandlerList::execute_current(BESDataHandlerInterface&) BESRequestHandlerList.cc:273 #25 0x107b8c0a4 in BESRequestHandlerList::execute_each(BESDataHandlerInterface&) BESRequestHandlerList.cc:167 #26 0x10972a5dc in BESDDXResponseHandler::execute(BESDataHandlerInterface&) BESDDXResponseHandler.cc:122 #27 0x107fa2d5a in BESXMLInterface::execute_data_request_plan() BESXMLInterface.cc:285 #28 0x107a01b8d in BESInterface::execute_request(std::__1::basic_string, std::__1::allocator > const&) BESInterface.cc:513 #29 0x10796a8d8 in StandAloneClient::executeCommand(std::__1::basic_string, std::__1::allocator > const&, int) StandAloneClient.cc:237 SUMMARY: AddressSanitizer: heap-buffer-overflow (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x4f3fd) in __asan_memcpy Shadow bytes around the buggy address: 0x1c0600002260: 00 fa fa fa 00 00 04 fa fa fa fd fd fd fd fa fa 0x1c0600002270: fd fd fd fd fa fa fd fd fd fd fa fa 00 00 00 00 0x1c0600002280: fa fa fd fd fd fa fa fa 00 00 00 fa fa fa fd fd 0x1c0600002290: fd fa fa fa 00 00 00 fa fa fa fd fd fd fa fa fa 0x1c06000022a0: 00 00 00 fa fa fa fd fd fd fa fa fa 00 00 00 fa =>0x1c06000022b0: fa fa 00 00[04]fa fa fa 00 00 04 fa fa fa 00 00 0x1c06000022c0: 00 fa fa fa 00 00 00 fa fa fa 00 00 04 fa fa fa 0x1c06000022d0: 00 00 00 00 fa fa fa fa fa fa fa fa fa fa fa fa 0x1c06000022e0: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c06000022f0: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c0600002300: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa Shadow byte legend (one shadow byte represents 8 application bytes): Addressable: 00 Partially addressable: 01 02 03 04 05 06 07 Heap left redzone: fa Freed heap region: fd Stack left redzone: f1 Stack mid redzone: f2 Stack right redzone: f3 Stack after return: f5 Stack use after scope: f8 Global redzone: f9 Global init order: f6 Poisoned by user: f7 Container overflow: fc Array cookie: ac Intra object redzone: bb ASan internal: fe Left alloca redzone: ca Right alloca redzone: cb ==76653==ABORTING /Users/jimg/src/opendap/hyrax_git/bes/modules/ncml_module/tests/testsuite.dir/at-groups/411/test-source: line 44: 76653 Abort trap: 6 besstandalone -c $abs_builddir/bes.conf -i ./test.bescmd stdout: ./aggregations.at:83: exit code was 134, expected 0 411. aggregations.at:83: 411. Comparing ddx response for agg/joinNew_simple_2.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_simple_2_cons_2.ncml (aggregations.at:83): FAILED (aggregations.at:83) # -*- compilation -*- 412. aggregations.at:83: testing Comparing dods response for agg/joinNew_simple_2.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_simple_2_cons_2.ncml ... ./aggregations.at:83: besstandalone -c $abs_builddir/bes.conf -i ./test.bescmd stderr: Width: 20 Name: V Width: 20 Name: V Width: 80 Name: V ================================================================= ==76652==ERROR: AddressSanitizer: heap-buffer-overflow on address 0x6030000115a4 at pc 0x00010d8a33fe bp 0x7ffee2af59b0 sp 0x7ffee2af5160 READ of size 80 at 0x6030000115a4 thread T0 #0 0x10d8a33fd in __asan_memcpy (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x4f3fd) Provided dSYM: [/Users/jimg/src/opendap/hyrax_git/build/lib/libdap.25.dylib.dSYM/Contents/Resources/DWARF/libdap.25.dylib] does not match symbol owner 0x7fa8c560c720 #1 0x111693f39 in libdap::Vector::val2buf(void*, bool) Vector.cc:1212 #2 0x11167d5e7 in libdap::Vector::m_duplicate(libdap::Vector const&) Vector.cc:116 #3 0x111681733 in libdap::Vector::Vector(libdap::Vector const&) Vector.cc:297 #4 0x1116cf385 in libdap::Array::Array(libdap::Array const&) Array.cc:164 #5 0x11854f8da in agg_util::ArrayAggregationBase::ArrayAggregationBase(agg_util::ArrayAggregationBase const&) ArrayAggregationBase.cc:56 #6 0x11853ef84 in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(agg_util::ArrayAggregateOnOuterDimension const&) ArrayAggregateOnOuterDimension.cc:70 #7 0x11853f35c in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(agg_util::ArrayAggregateOnOuterDimension const&) ArrayAggregateOnOuterDimension.cc:71 #8 0x11853f89c in agg_util::ArrayAggregateOnOuterDimension::ptr_duplicate() ArrayAggregateOnOuterDimension.cc:85 #9 0x1115800fd in libdap::DDS::add_var(libdap::BaseType*) DDS.cc:607 #10 0x1184a1de8 in ncml_module::AggregationElement::processAggVarJoinNewForArray(libdap::DDS&, libdap::Array const&, agg_util::Dimension const&, std::__1::vector, std::__1::allocator > > const&) AggregationElement.cc:867 #11 0x11846cdb0 in ncml_module::AggregationElement::processJoinNewOnAggVar(libdap::DDS*, std::__1::basic_string, std::__1::allocator > const&, libdap::DDS const&) AggregationElement.cc:801 #12 0x1184324d7 in ncml_module::AggregationElement::processJoinNew() AggregationElement.cc:420 #13 0x118428320 in ncml_module::AggregationElement::handleEnd() AggregationElement.cc:217 #14 0x118876b9f in ncml_module::NCMLParser::processEndNCMLElement(std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:1186 #15 0x11887e35b in ncml_module::NCMLParser::onEndElementWithNamespace(std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:324 #16 0x1189e28c9 in ncmlSax2EndElementNs(void*, unsigned char const*, unsigned char const*, unsigned char const*) SaxParserWrapper.cc:242 #17 0x7fff597e1d8e in xmlParseEndTag2 (libxml2.2.dylib:x86_64+0x37d8e) #18 0x7fff597e0440 in xmlParseElement (libxml2.2.dylib:x86_64+0x36440) #19 0x7fff597e005a in xmlParseContent (libxml2.2.dylib:x86_64+0x3605a) #20 0x7fff597e03f1 in xmlParseElement (libxml2.2.dylib:x86_64+0x363f1) #21 0x7fff597e2b7a in xmlParseDocument (libxml2.2.dylib:x86_64+0x38b7a) #22 0x1189d39ae in ncml_module::SaxParserWrapper::parse(std::__1::basic_string, std::__1::allocator > const&) SaxParserWrapper.cc:338 #23 0x118868d0b in ncml_module::NCMLParser::parseInto(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType, BESDapResponse*) NCMLParser.cc:185 #24 0x1188ea346 in ncml_module::NCMLRequestHandler::ncml_build_data(BESDataHandlerInterface&) NCMLRequestHandler.cc:297 #25 0x10d341c8f in BESRequestHandlerList::execute_current(BESDataHandlerInterface&) BESRequestHandlerList.cc:273 #26 0x10d3400a4 in BESRequestHandlerList::execute_each(BESDataHandlerInterface&) BESRequestHandlerList.cc:167 #27 0x11113288c in BESDataResponseHandler::execute(BESDataHandlerInterface&) BESDataResponseHandler.cc:148 #28 0x10d75dd5a in BESXMLInterface::execute_data_request_plan() BESXMLInterface.cc:285 #29 0x10d1b5b8d in BESInterface::execute_request(std::__1::basic_string, std::__1::allocator > const&) BESInterface.cc:513 #30 0x10d11a8d8 in StandAloneClient::executeCommand(std::__1::basic_string, std::__1::allocator > const&, int) StandAloneClient.cc:237 #31 0x10d1183aa in StandAloneClient::executeCommands(std::__1::basic_ifstream >&, int) StandAloneClient.cc:349 #32 0x10d0fde6d in StandAloneApp::run() StandAloneApp.cc:251 #33 0x10d425c24 in BESApp::main(int, char**) BESApp.cc:58 #34 0x10d10112e in main StandAloneApp.cc:345 #35 0x7fff59ad3014 in start (libdyld.dylib:x86_64+0x1014) 0x6030000115a4 is located 0 bytes to the right of 20-byte region [0x603000011590,0x6030000115a4) allocated by thread T0 here: #0 0x10d8b6cb2 in wrap__Znam (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x62cb2) #1 0x11167eb3c in libdap::Vector::m_create_cardinal_data_buffer_for_type(unsigned int) Vector.cc:203 #2 0x111693c15 in libdap::Vector::val2buf(void*, bool) Vector.cc:1206 #3 0x11167d5e7 in libdap::Vector::m_duplicate(libdap::Vector const&) Vector.cc:116 #4 0x111681733 in libdap::Vector::Vector(libdap::Vector const&) Vector.cc:297 #5 0x1116cf385 in libdap::Array::Array(libdap::Array const&) Array.cc:164 #6 0x11854f116 in agg_util::ArrayAggregationBase::ArrayAggregationBase(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&) ArrayAggregationBase.cc:50 #7 0x11853e7d2 in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&, agg_util::Dimension const&) ArrayAggregateOnOuterDimension.cc:59 #8 0x11853ee34 in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&, agg_util::Dimension const&) ArrayAggregateOnOuterDimension.cc:61 #9 0x11849f7ae in ncml_module::AggregationElement::processAggVarJoinNewForArray(libdap::DDS&, libdap::Array const&, agg_util::Dimension const&, std::__1::vector, std::__1::allocator > > const&) AggregationElement.cc:855 #10 0x11846cdb0 in ncml_module::AggregationElement::processJoinNewOnAggVar(libdap::DDS*, std::__1::basic_string, std::__1::allocator > const&, libdap::DDS const&) AggregationElement.cc:801 #11 0x1184324d7 in ncml_module::AggregationElement::processJoinNew() AggregationElement.cc:420 #12 0x118428320 in ncml_module::AggregationElement::handleEnd() AggregationElement.cc:217 #13 0x118876b9f in ncml_module::NCMLParser::processEndNCMLElement(std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:1186 #14 0x11887e35b in ncml_module::NCMLParser::onEndElementWithNamespace(std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:324 #15 0x1189e28c9 in ncmlSax2EndElementNs(void*, unsigned char const*, unsigned char const*, unsigned char const*) SaxParserWrapper.cc:242 #16 0x7fff597e1d8e in xmlParseEndTag2 (libxml2.2.dylib:x86_64+0x37d8e) #17 0x7fff597e0440 in xmlParseElement (libxml2.2.dylib:x86_64+0x36440) #18 0x7fff597e005a in xmlParseContent (libxml2.2.dylib:x86_64+0x3605a) #19 0x7fff597e03f1 in xmlParseElement (libxml2.2.dylib:x86_64+0x363f1) #20 0x7fff597e2b7a in xmlParseDocument (libxml2.2.dylib:x86_64+0x38b7a) #21 0x1189d39ae in ncml_module::SaxParserWrapper::parse(std::__1::basic_string, std::__1::allocator > const&) SaxParserWrapper.cc:338 #22 0x118868d0b in ncml_module::NCMLParser::parseInto(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType, BESDapResponse*) NCMLParser.cc:185 #23 0x1188ea346 in ncml_module::NCMLRequestHandler::ncml_build_data(BESDataHandlerInterface&) NCMLRequestHandler.cc:297 #24 0x10d341c8f in BESRequestHandlerList::execute_current(BESDataHandlerInterface&) BESRequestHandlerList.cc:273 #25 0x10d3400a4 in BESRequestHandlerList::execute_each(BESDataHandlerInterface&) BESRequestHandlerList.cc:167 #26 0x11113288c in BESDataResponseHandler::execute(BESDataHandlerInterface&) BESDataResponseHandler.cc:148 #27 0x10d75dd5a in BESXMLInterface::execute_data_request_plan() BESXMLInterface.cc:285 #28 0x10d1b5b8d in BESInterface::execute_request(std::__1::basic_string, std::__1::allocator > const&) BESInterface.cc:513 #29 0x10d11a8d8 in StandAloneClient::executeCommand(std::__1::basic_string, std::__1::allocator > const&, int) StandAloneClient.cc:237 SUMMARY: AddressSanitizer: heap-buffer-overflow (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x4f3fd) in __asan_memcpy Shadow bytes around the buggy address: 0x1c0600002260: 00 fa fa fa 00 00 04 fa fa fa fd fd fd fd fa fa 0x1c0600002270: fd fd fd fd fa fa fd fd fd fd fa fa 00 00 00 00 0x1c0600002280: fa fa fd fd fd fa fa fa 00 00 00 fa fa fa fd fd 0x1c0600002290: fd fa fa fa 00 00 00 fa fa fa fd fd fd fa fa fa 0x1c06000022a0: 00 00 00 fa fa fa fd fd fd fa fa fa 00 00 00 fa =>0x1c06000022b0: fa fa 00 00[04]fa fa fa 00 00 04 fa fa fa 00 00 0x1c06000022c0: 00 fa fa fa 00 00 00 fa fa fa 00 00 04 fa fa fa 0x1c06000022d0: 00 00 00 00 fa fa fa fa fa fa fa fa fa fa fa fa 0x1c06000022e0: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c06000022f0: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c0600002300: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa Shadow byte legend (one shadow byte represents 8 application bytes): Addressable: 00 Partially addressable: 01 02 03 04 05 06 07 Heap left redzone: fa Freed heap region: fd Stack left redzone: f1 Stack mid redzone: f2 Stack right redzone: f3 Stack after return: f5 Stack use after scope: f8 Global redzone: f9 Global init order: f6 Poisoned by user: f7 Container overflow: fc Array cookie: ac Intra object redzone: bb ASan internal: fe Left alloca redzone: ca Right alloca redzone: cb ==76652==ABORTING /Users/jimg/src/opendap/hyrax_git/bes/modules/ncml_module/tests/testsuite.dir/at-groups/412/test-source: line 44: 76652 Abort trap: 6 besstandalone -c $abs_builddir/bes.conf -i ./test.bescmd stdout: ./aggregations.at:83: exit code was 134, expected 0 412. aggregations.at:83: 412. Comparing dods response for agg/joinNew_simple_2.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_simple_2_cons_2.ncml (aggregations.at:83): FAILED (aggregations.at:83) # -*- compilation -*- 413. aggregations.at:87: testing Comparing das response for agg/joinNew_simple_2.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_simple_2_cons_3.ncml ... ./aggregations.at:87: besstandalone -c $abs_builddir/bes.conf -i ./test.bescmd stderr: Width: 20 Name: V Width: 20 Name: V Width: 80 Name: V ================================================================= ==76698==ERROR: AddressSanitizer: heap-buffer-overflow on address 0x6030000115d4 at pc 0x00010faca3fe bp 0x7ffee08cc810 sp 0x7ffee08cbfc0 READ of size 80 at 0x6030000115d4 thread T0 #0 0x10faca3fd in __asan_memcpy (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x4f3fd) Provided dSYM: [/Users/jimg/src/opendap/hyrax_git/build/lib/libdap.25.dylib.dSYM/Contents/Resources/DWARF/libdap.25.dylib] does not match symbol owner 0x7fb798f06200 #1 0x113693f39 in libdap::Vector::val2buf(void*, bool) Vector.cc:1212 #2 0x11367d5e7 in libdap::Vector::m_duplicate(libdap::Vector const&) Vector.cc:116 #3 0x113681733 in libdap::Vector::Vector(libdap::Vector const&) Vector.cc:297 #4 0x1136cf385 in libdap::Array::Array(libdap::Array const&) Array.cc:164 #5 0x11a6c58da in agg_util::ArrayAggregationBase::ArrayAggregationBase(agg_util::ArrayAggregationBase const&) ArrayAggregationBase.cc:56 #6 0x11a6b4f84 in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(agg_util::ArrayAggregateOnOuterDimension const&) ArrayAggregateOnOuterDimension.cc:70 #7 0x11a6b535c in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(agg_util::ArrayAggregateOnOuterDimension const&) ArrayAggregateOnOuterDimension.cc:71 #8 0x11a6b589c in agg_util::ArrayAggregateOnOuterDimension::ptr_duplicate() ArrayAggregateOnOuterDimension.cc:85 #9 0x1135800fd in libdap::DDS::add_var(libdap::BaseType*) DDS.cc:607 #10 0x11a617de8 in ncml_module::AggregationElement::processAggVarJoinNewForArray(libdap::DDS&, libdap::Array const&, agg_util::Dimension const&, std::__1::vector, std::__1::allocator > > const&) AggregationElement.cc:867 #11 0x11a5e2db0 in ncml_module::AggregationElement::processJoinNewOnAggVar(libdap::DDS*, std::__1::basic_string, std::__1::allocator > const&, libdap::DDS const&) AggregationElement.cc:801 #12 0x11a5a84d7 in ncml_module::AggregationElement::processJoinNew() AggregationElement.cc:420 #13 0x11a59e320 in ncml_module::AggregationElement::handleEnd() AggregationElement.cc:217 #14 0x11a9ecb9f in ncml_module::NCMLParser::processEndNCMLElement(std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:1186 #15 0x11a9f435b in ncml_module::NCMLParser::onEndElementWithNamespace(std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:324 #16 0x11ab588c9 in ncmlSax2EndElementNs(void*, unsigned char const*, unsigned char const*, unsigned char const*) SaxParserWrapper.cc:242 #17 0x7fff597e1d8e in xmlParseEndTag2 (libxml2.2.dylib:x86_64+0x37d8e) #18 0x7fff597e0440 in xmlParseElement (libxml2.2.dylib:x86_64+0x36440) #19 0x7fff597e005a in xmlParseContent (libxml2.2.dylib:x86_64+0x3605a) #20 0x7fff597e03f1 in xmlParseElement (libxml2.2.dylib:x86_64+0x363f1) #21 0x7fff597e2b7a in xmlParseDocument (libxml2.2.dylib:x86_64+0x38b7a) #22 0x11ab499ae in ncml_module::SaxParserWrapper::parse(std::__1::basic_string, std::__1::allocator > const&) SaxParserWrapper.cc:338 #23 0x11a9ded0b in ncml_module::NCMLParser::parseInto(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType, BESDapResponse*) NCMLParser.cc:185 #24 0x11a9d81e7 in ncml_module::NCMLParser::parse(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType) NCMLParser.cc:155 #25 0x11aa52841 in ncml_module::NCMLRequestHandler::ncml_build_das(BESDataHandlerInterface&) NCMLRequestHandler.cc:172 #26 0x10f568c8f in BESRequestHandlerList::execute_current(BESDataHandlerInterface&) BESRequestHandlerList.cc:273 #27 0x10f5670a4 in BESRequestHandlerList::execute_each(BESDataHandlerInterface&) BESRequestHandlerList.cc:167 #28 0x113121ff0 in BESDASResponseHandler::execute(BESDataHandlerInterface&) BESDASResponseHandler.cc:95 #29 0x10f97fd5a in BESXMLInterface::execute_data_request_plan() BESXMLInterface.cc:285 #30 0x10f3dcb8d in BESInterface::execute_request(std::__1::basic_string, std::__1::allocator > const&) BESInterface.cc:513 #31 0x10f3438d8 in StandAloneClient::executeCommand(std::__1::basic_string, std::__1::allocator > const&, int) StandAloneClient.cc:237 #32 0x10f3413aa in StandAloneClient::executeCommands(std::__1::basic_ifstream >&, int) StandAloneClient.cc:349 #33 0x10f326e6d in StandAloneApp::run() StandAloneApp.cc:251 #34 0x10f64cc24 in BESApp::main(int, char**) BESApp.cc:58 #35 0x10f32a12e in main StandAloneApp.cc:345 #36 0x7fff59ad3014 in start (libdyld.dylib:x86_64+0x1014) 0x6030000115d4 is located 0 bytes to the right of 20-byte region [0x6030000115c0,0x6030000115d4) allocated by thread T0 here: #0 0x10faddcb2 in wrap__Znam (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x62cb2) #1 0x11367eb3c in libdap::Vector::m_create_cardinal_data_buffer_for_type(unsigned int) Vector.cc:203 #2 0x113693c15 in libdap::Vector::val2buf(void*, bool) Vector.cc:1206 #3 0x11367d5e7 in libdap::Vector::m_duplicate(libdap::Vector const&) Vector.cc:116 #4 0x113681733 in libdap::Vector::Vector(libdap::Vector const&) Vector.cc:297 #5 0x1136cf385 in libdap::Array::Array(libdap::Array const&) Array.cc:164 #6 0x11a6c5116 in agg_util::ArrayAggregationBase::ArrayAggregationBase(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&) ArrayAggregationBase.cc:50 #7 0x11a6b47d2 in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&, agg_util::Dimension const&) ArrayAggregateOnOuterDimension.cc:59 #8 0x11a6b4e34 in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&, agg_util::Dimension const&) ArrayAggregateOnOuterDimension.cc:61 #9 0x11a6157ae in ncml_module::AggregationElement::processAggVarJoinNewForArray(libdap::DDS&, libdap::Array const&, agg_util::Dimension const&, std::__1::vector, std::__1::allocator > > const&) AggregationElement.cc:855 #10 0x11a5e2db0 in ncml_module::AggregationElement::processJoinNewOnAggVar(libdap::DDS*, std::__1::basic_string, std::__1::allocator > const&, libdap::DDS const&) AggregationElement.cc:801 #11 0x11a5a84d7 in ncml_module::AggregationElement::processJoinNew() AggregationElement.cc:420 #12 0x11a59e320 in ncml_module::AggregationElement::handleEnd() AggregationElement.cc:217 #13 0x11a9ecb9f in ncml_module::NCMLParser::processEndNCMLElement(std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:1186 #14 0x11a9f435b in ncml_module::NCMLParser::onEndElementWithNamespace(std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:324 #15 0x11ab588c9 in ncmlSax2EndElementNs(void*, unsigned char const*, unsigned char const*, unsigned char const*) SaxParserWrapper.cc:242 #16 0x7fff597e1d8e in xmlParseEndTag2 (libxml2.2.dylib:x86_64+0x37d8e) #17 0x7fff597e0440 in xmlParseElement (libxml2.2.dylib:x86_64+0x36440) #18 0x7fff597e005a in xmlParseContent (libxml2.2.dylib:x86_64+0x3605a) #19 0x7fff597e03f1 in xmlParseElement (libxml2.2.dylib:x86_64+0x363f1) #20 0x7fff597e2b7a in xmlParseDocument (libxml2.2.dylib:x86_64+0x38b7a) #21 0x11ab499ae in ncml_module::SaxParserWrapper::parse(std::__1::basic_string, std::__1::allocator > const&) SaxParserWrapper.cc:338 #22 0x11a9ded0b in ncml_module::NCMLParser::parseInto(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType, BESDapResponse*) NCMLParser.cc:185 #23 0x11a9d81e7 in ncml_module::NCMLParser::parse(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType) NCMLParser.cc:155 #24 0x11aa52841 in ncml_module::NCMLRequestHandler::ncml_build_das(BESDataHandlerInterface&) NCMLRequestHandler.cc:172 #25 0x10f568c8f in BESRequestHandlerList::execute_current(BESDataHandlerInterface&) BESRequestHandlerList.cc:273 #26 0x10f5670a4 in BESRequestHandlerList::execute_each(BESDataHandlerInterface&) BESRequestHandlerList.cc:167 #27 0x113121ff0 in BESDASResponseHandler::execute(BESDataHandlerInterface&) BESDASResponseHandler.cc:95 #28 0x10f97fd5a in BESXMLInterface::execute_data_request_plan() BESXMLInterface.cc:285 #29 0x10f3dcb8d in BESInterface::execute_request(std::__1::basic_string, std::__1::allocator > const&) BESInterface.cc:513 SUMMARY: AddressSanitizer: heap-buffer-overflow (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x4f3fd) in __asan_memcpy Shadow bytes around the buggy address: 0x1c0600002260: 00 fa fa fa 00 00 00 fa fa fa 00 00 04 fa fa fa 0x1c0600002270: fd fd fd fd fa fa fd fd fd fd fa fa fd fd fd fd 0x1c0600002280: fa fa 00 00 00 00 fa fa fd fd fd fa fa fa 00 00 0x1c0600002290: 00 fa fa fa fd fd fd fa fa fa 00 00 00 fa fa fa 0x1c06000022a0: fd fd fd fa fa fa 00 00 00 fa fa fa fd fd fd fa =>0x1c06000022b0: fa fa 00 00 00 fa fa fa 00 00[04]fa fa fa 00 00 0x1c06000022c0: 04 fa fa fa 00 00 00 fa fa fa 00 00 00 fa fa fa 0x1c06000022d0: 00 00 04 fa fa fa 00 00 00 00 fa fa fa fa fa fa 0x1c06000022e0: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c06000022f0: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c0600002300: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa Shadow byte legend (one shadow byte represents 8 application bytes): Addressable: 00 Partially addressable: 01 02 03 04 05 06 07 Heap left redzone: fa Freed heap region: fd Stack left redzone: f1 Stack mid redzone: f2 Stack right redzone: f3 Stack after return: f5 Stack use after scope: f8 Global redzone: f9 Global init order: f6 Poisoned by user: f7 Container overflow: fc Array cookie: ac Intra object redzone: bb ASan internal: fe Left alloca redzone: ca Right alloca redzone: cb ==76698==ABORTING /Users/jimg/src/opendap/hyrax_git/bes/modules/ncml_module/tests/testsuite.dir/at-groups/413/test-source: line 44: 76698 Abort trap: 6 besstandalone -c $abs_builddir/bes.conf -i ./test.bescmd stdout: ./aggregations.at:87: exit code was 134, expected 0 413. aggregations.at:87: 413. Comparing das response for agg/joinNew_simple_2.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_simple_2_cons_3.ncml (aggregations.at:87): FAILED (aggregations.at:87) # -*- compilation -*- 414. aggregations.at:87: testing Comparing dds response for agg/joinNew_simple_2.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_simple_2_cons_3.ncml ... ./aggregations.at:87: besstandalone -c $abs_builddir/bes.conf -i ./test.bescmd stderr: Width: 20 Name: V Width: 20 Name: V Width: 80 Name: V ================================================================= ==76734==ERROR: AddressSanitizer: heap-buffer-overflow on address 0x6030000115d4 at pc 0x00010ceae3fe bp 0x7ffee34e7b30 sp 0x7ffee34e72e0 READ of size 80 at 0x6030000115d4 thread T0 #0 0x10ceae3fd in __asan_memcpy (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x4f3fd) Provided dSYM: [/Users/jimg/src/opendap/hyrax_git/build/lib/libdap.25.dylib.dSYM/Contents/Resources/DWARF/libdap.25.dylib] does not match symbol owner 0x7fef93609b20 #1 0x110a93f39 in libdap::Vector::val2buf(void*, bool) Vector.cc:1212 #2 0x110a7d5e7 in libdap::Vector::m_duplicate(libdap::Vector const&) Vector.cc:116 #3 0x110a81733 in libdap::Vector::Vector(libdap::Vector const&) Vector.cc:297 #4 0x110acf385 in libdap::Array::Array(libdap::Array const&) Array.cc:164 #5 0x117d448da in agg_util::ArrayAggregationBase::ArrayAggregationBase(agg_util::ArrayAggregationBase const&) ArrayAggregationBase.cc:56 #6 0x117d33f84 in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(agg_util::ArrayAggregateOnOuterDimension const&) ArrayAggregateOnOuterDimension.cc:70 #7 0x117d3435c in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(agg_util::ArrayAggregateOnOuterDimension const&) ArrayAggregateOnOuterDimension.cc:71 #8 0x117d3489c in agg_util::ArrayAggregateOnOuterDimension::ptr_duplicate() ArrayAggregateOnOuterDimension.cc:85 #9 0x1109800fd in libdap::DDS::add_var(libdap::BaseType*) DDS.cc:607 #10 0x117c96de8 in ncml_module::AggregationElement::processAggVarJoinNewForArray(libdap::DDS&, libdap::Array const&, agg_util::Dimension const&, std::__1::vector, std::__1::allocator > > const&) AggregationElement.cc:867 #11 0x117c61db0 in ncml_module::AggregationElement::processJoinNewOnAggVar(libdap::DDS*, std::__1::basic_string, std::__1::allocator > const&, libdap::DDS const&) AggregationElement.cc:801 #12 0x117c274d7 in ncml_module::AggregationElement::processJoinNew() AggregationElement.cc:420 #13 0x117c1d320 in ncml_module::AggregationElement::handleEnd() AggregationElement.cc:217 #14 0x11806bb9f in ncml_module::NCMLParser::processEndNCMLElement(std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:1186 #15 0x11807335b in ncml_module::NCMLParser::onEndElementWithNamespace(std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:324 #16 0x1181d78c9 in ncmlSax2EndElementNs(void*, unsigned char const*, unsigned char const*, unsigned char const*) SaxParserWrapper.cc:242 #17 0x7fff597e1d8e in xmlParseEndTag2 (libxml2.2.dylib:x86_64+0x37d8e) #18 0x7fff597e0440 in xmlParseElement (libxml2.2.dylib:x86_64+0x36440) #19 0x7fff597e005a in xmlParseContent (libxml2.2.dylib:x86_64+0x3605a) #20 0x7fff597e03f1 in xmlParseElement (libxml2.2.dylib:x86_64+0x363f1) #21 0x7fff597e2b7a in xmlParseDocument (libxml2.2.dylib:x86_64+0x38b7a) #22 0x1181c89ae in ncml_module::SaxParserWrapper::parse(std::__1::basic_string, std::__1::allocator > const&) SaxParserWrapper.cc:338 #23 0x11805dd0b in ncml_module::NCMLParser::parseInto(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType, BESDapResponse*) NCMLParser.cc:185 #24 0x1180d9aae in ncml_module::NCMLRequestHandler::ncml_build_dds(BESDataHandlerInterface&) NCMLRequestHandler.cc:260 #25 0x10c950c8f in BESRequestHandlerList::execute_current(BESDataHandlerInterface&) BESRequestHandlerList.cc:273 #26 0x10c94f0a4 in BESRequestHandlerList::execute_each(BESDataHandlerInterface&) BESRequestHandlerList.cc:167 #27 0x110528048 in BESDDSResponseHandler::execute(BESDataHandlerInterface&) BESDDSResponseHandler.cc:107 #28 0x10cd68d5a in BESXMLInterface::execute_data_request_plan() BESXMLInterface.cc:285 #29 0x10c7c4b8d in BESInterface::execute_request(std::__1::basic_string, std::__1::allocator > const&) BESInterface.cc:513 #30 0x10c7288d8 in StandAloneClient::executeCommand(std::__1::basic_string, std::__1::allocator > const&, int) StandAloneClient.cc:237 #31 0x10c7263aa in StandAloneClient::executeCommands(std::__1::basic_ifstream >&, int) StandAloneClient.cc:349 #32 0x10c70be6d in StandAloneApp::run() StandAloneApp.cc:251 #33 0x10ca34c24 in BESApp::main(int, char**) BESApp.cc:58 #34 0x10c70f12e in main StandAloneApp.cc:345 #35 0x7fff59ad3014 in start (libdyld.dylib:x86_64+0x1014) 0x6030000115d4 is located 0 bytes to the right of 20-byte region [0x6030000115c0,0x6030000115d4) allocated by thread T0 here: #0 0x10cec1cb2 in wrap__Znam (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x62cb2) #1 0x110a7eb3c in libdap::Vector::m_create_cardinal_data_buffer_for_type(unsigned int) Vector.cc:203 #2 0x110a93c15 in libdap::Vector::val2buf(void*, bool) Vector.cc:1206 #3 0x110a7d5e7 in libdap::Vector::m_duplicate(libdap::Vector const&) Vector.cc:116 #4 0x110a81733 in libdap::Vector::Vector(libdap::Vector const&) Vector.cc:297 #5 0x110acf385 in libdap::Array::Array(libdap::Array const&) Array.cc:164 #6 0x117d44116 in agg_util::ArrayAggregationBase::ArrayAggregationBase(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&) ArrayAggregationBase.cc:50 #7 0x117d337d2 in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&, agg_util::Dimension const&) ArrayAggregateOnOuterDimension.cc:59 #8 0x117d33e34 in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&, agg_util::Dimension const&) ArrayAggregateOnOuterDimension.cc:61 #9 0x117c947ae in ncml_module::AggregationElement::processAggVarJoinNewForArray(libdap::DDS&, libdap::Array const&, agg_util::Dimension const&, std::__1::vector, std::__1::allocator > > const&) AggregationElement.cc:855 #10 0x117c61db0 in ncml_module::AggregationElement::processJoinNewOnAggVar(libdap::DDS*, std::__1::basic_string, std::__1::allocator > const&, libdap::DDS const&) AggregationElement.cc:801 #11 0x117c274d7 in ncml_module::AggregationElement::processJoinNew() AggregationElement.cc:420 #12 0x117c1d320 in ncml_module::AggregationElement::handleEnd() AggregationElement.cc:217 #13 0x11806bb9f in ncml_module::NCMLParser::processEndNCMLElement(std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:1186 #14 0x11807335b in ncml_module::NCMLParser::onEndElementWithNamespace(std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:324 #15 0x1181d78c9 in ncmlSax2EndElementNs(void*, unsigned char const*, unsigned char const*, unsigned char const*) SaxParserWrapper.cc:242 #16 0x7fff597e1d8e in xmlParseEndTag2 (libxml2.2.dylib:x86_64+0x37d8e) #17 0x7fff597e0440 in xmlParseElement (libxml2.2.dylib:x86_64+0x36440) #18 0x7fff597e005a in xmlParseContent (libxml2.2.dylib:x86_64+0x3605a) #19 0x7fff597e03f1 in xmlParseElement (libxml2.2.dylib:x86_64+0x363f1) #20 0x7fff597e2b7a in xmlParseDocument (libxml2.2.dylib:x86_64+0x38b7a) #21 0x1181c89ae in ncml_module::SaxParserWrapper::parse(std::__1::basic_string, std::__1::allocator > const&) SaxParserWrapper.cc:338 #22 0x11805dd0b in ncml_module::NCMLParser::parseInto(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType, BESDapResponse*) NCMLParser.cc:185 #23 0x1180d9aae in ncml_module::NCMLRequestHandler::ncml_build_dds(BESDataHandlerInterface&) NCMLRequestHandler.cc:260 #24 0x10c950c8f in BESRequestHandlerList::execute_current(BESDataHandlerInterface&) BESRequestHandlerList.cc:273 #25 0x10c94f0a4 in BESRequestHandlerList::execute_each(BESDataHandlerInterface&) BESRequestHandlerList.cc:167 #26 0x110528048 in BESDDSResponseHandler::execute(BESDataHandlerInterface&) BESDDSResponseHandler.cc:107 #27 0x10cd68d5a in BESXMLInterface::execute_data_request_plan() BESXMLInterface.cc:285 #28 0x10c7c4b8d in BESInterface::execute_request(std::__1::basic_string, std::__1::allocator > const&) BESInterface.cc:513 #29 0x10c7288d8 in StandAloneClient::executeCommand(std::__1::basic_string, std::__1::allocator > const&, int) StandAloneClient.cc:237 SUMMARY: AddressSanitizer: heap-buffer-overflow (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x4f3fd) in __asan_memcpy Shadow bytes around the buggy address: 0x1c0600002260: 00 fa fa fa 00 00 00 fa fa fa 00 00 04 fa fa fa 0x1c0600002270: fd fd fd fd fa fa fd fd fd fd fa fa fd fd fd fd 0x1c0600002280: fa fa 00 00 00 00 fa fa fd fd fd fa fa fa 00 00 0x1c0600002290: 00 fa fa fa fd fd fd fa fa fa 00 00 00 fa fa fa 0x1c06000022a0: fd fd fd fa fa fa 00 00 00 fa fa fa fd fd fd fa =>0x1c06000022b0: fa fa 00 00 00 fa fa fa 00 00[04]fa fa fa 00 00 0x1c06000022c0: 04 fa fa fa 00 00 00 fa fa fa 00 00 00 fa fa fa 0x1c06000022d0: 00 00 04 fa fa fa 00 00 00 00 fa fa fa fa fa fa 0x1c06000022e0: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c06000022f0: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c0600002300: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa Shadow byte legend (one shadow byte represents 8 application bytes): Addressable: 00 Partially addressable: 01 02 03 04 05 06 07 Heap left redzone: fa Freed heap region: fd Stack left redzone: f1 Stack mid redzone: f2 Stack right redzone: f3 Stack after return: f5 Stack use after scope: f8 Global redzone: f9 Global init order: f6 Poisoned by user: f7 Container overflow: fc Array cookie: ac Intra object redzone: bb ASan internal: fe Left alloca redzone: ca Right alloca redzone: cb ==76734==ABORTING /Users/jimg/src/opendap/hyrax_git/bes/modules/ncml_module/tests/testsuite.dir/at-groups/414/test-source: line 44: 76734 Abort trap: 6 besstandalone -c $abs_builddir/bes.conf -i ./test.bescmd stdout: ./aggregations.at:87: exit code was 134, expected 0 414. aggregations.at:87: 414. Comparing dds response for agg/joinNew_simple_2.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_simple_2_cons_3.ncml (aggregations.at:87): FAILED (aggregations.at:87) # -*- compilation -*- 415. aggregations.at:87: testing Comparing ddx response for agg/joinNew_simple_2.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_simple_2_cons_3.ncml ... ./aggregations.at:87: besstandalone -c $abs_builddir/bes.conf -i ./test.bescmd stderr: Width: 20 Name: V Width: 20 Name: V Width: 80 Name: V ================================================================= ==76767==ERROR: AddressSanitizer: heap-buffer-overflow on address 0x6030000115a4 at pc 0x00010e1983fe bp 0x7ffee21f56d0 sp 0x7ffee21f4e80 READ of size 80 at 0x6030000115a4 thread T0 #0 0x10e1983fd in __asan_memcpy (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x4f3fd) Provided dSYM: [/Users/jimg/src/opendap/hyrax_git/build/lib/libdap.25.dylib.dSYM/Contents/Resources/DWARF/libdap.25.dylib] does not match symbol owner 0x7fe2a8e06380 #1 0x111d93f39 in libdap::Vector::val2buf(void*, bool) Vector.cc:1212 #2 0x111d7d5e7 in libdap::Vector::m_duplicate(libdap::Vector const&) Vector.cc:116 #3 0x111d81733 in libdap::Vector::Vector(libdap::Vector const&) Vector.cc:297 #4 0x111dcf385 in libdap::Array::Array(libdap::Array const&) Array.cc:164 #5 0x118d9c8da in agg_util::ArrayAggregationBase::ArrayAggregationBase(agg_util::ArrayAggregationBase const&) ArrayAggregationBase.cc:56 #6 0x118d8bf84 in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(agg_util::ArrayAggregateOnOuterDimension const&) ArrayAggregateOnOuterDimension.cc:70 #7 0x118d8c35c in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(agg_util::ArrayAggregateOnOuterDimension const&) ArrayAggregateOnOuterDimension.cc:71 #8 0x118d8c89c in agg_util::ArrayAggregateOnOuterDimension::ptr_duplicate() ArrayAggregateOnOuterDimension.cc:85 #9 0x111c800fd in libdap::DDS::add_var(libdap::BaseType*) DDS.cc:607 #10 0x118ceede8 in ncml_module::AggregationElement::processAggVarJoinNewForArray(libdap::DDS&, libdap::Array const&, agg_util::Dimension const&, std::__1::vector, std::__1::allocator > > const&) AggregationElement.cc:867 #11 0x118cb9db0 in ncml_module::AggregationElement::processJoinNewOnAggVar(libdap::DDS*, std::__1::basic_string, std::__1::allocator > const&, libdap::DDS const&) AggregationElement.cc:801 #12 0x118c7f4d7 in ncml_module::AggregationElement::processJoinNew() AggregationElement.cc:420 #13 0x118c75320 in ncml_module::AggregationElement::handleEnd() AggregationElement.cc:217 #14 0x1190c3b9f in ncml_module::NCMLParser::processEndNCMLElement(std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:1186 #15 0x1190cb35b in ncml_module::NCMLParser::onEndElementWithNamespace(std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:324 #16 0x11922f8c9 in ncmlSax2EndElementNs(void*, unsigned char const*, unsigned char const*, unsigned char const*) SaxParserWrapper.cc:242 #17 0x7fff597e1d8e in xmlParseEndTag2 (libxml2.2.dylib:x86_64+0x37d8e) #18 0x7fff597e0440 in xmlParseElement (libxml2.2.dylib:x86_64+0x36440) #19 0x7fff597e005a in xmlParseContent (libxml2.2.dylib:x86_64+0x3605a) #20 0x7fff597e03f1 in xmlParseElement (libxml2.2.dylib:x86_64+0x363f1) #21 0x7fff597e2b7a in xmlParseDocument (libxml2.2.dylib:x86_64+0x38b7a) #22 0x1192209ae in ncml_module::SaxParserWrapper::parse(std::__1::basic_string, std::__1::allocator > const&) SaxParserWrapper.cc:338 #23 0x1190b5d0b in ncml_module::NCMLParser::parseInto(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType, BESDapResponse*) NCMLParser.cc:185 #24 0x119131aae in ncml_module::NCMLRequestHandler::ncml_build_dds(BESDataHandlerInterface&) NCMLRequestHandler.cc:260 #25 0x10dc3dc8f in BESRequestHandlerList::execute_current(BESDataHandlerInterface&) BESRequestHandlerList.cc:273 #26 0x10dc3c0a4 in BESRequestHandlerList::execute_each(BESDataHandlerInterface&) BESRequestHandlerList.cc:167 #27 0x11182a5dc in BESDDXResponseHandler::execute(BESDataHandlerInterface&) BESDDXResponseHandler.cc:122 #28 0x10e054d5a in BESXMLInterface::execute_data_request_plan() BESXMLInterface.cc:285 #29 0x10dab1b8d in BESInterface::execute_request(std::__1::basic_string, std::__1::allocator > const&) BESInterface.cc:513 #30 0x10da1a8d8 in StandAloneClient::executeCommand(std::__1::basic_string, std::__1::allocator > const&, int) StandAloneClient.cc:237 #31 0x10da183aa in StandAloneClient::executeCommands(std::__1::basic_ifstream >&, int) StandAloneClient.cc:349 #32 0x10d9fde6d in StandAloneApp::run() StandAloneApp.cc:251 #33 0x10dd21c24 in BESApp::main(int, char**) BESApp.cc:58 #34 0x10da0112e in main StandAloneApp.cc:345 #35 0x7fff59ad3014 in start (libdyld.dylib:x86_64+0x1014) 0x6030000115a4 is located 0 bytes to the right of 20-byte region [0x603000011590,0x6030000115a4) allocated by thread T0 here: #0 0x10e1abcb2 in wrap__Znam (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x62cb2) #1 0x111d7eb3c in libdap::Vector::m_create_cardinal_data_buffer_for_type(unsigned int) Vector.cc:203 #2 0x111d93c15 in libdap::Vector::val2buf(void*, bool) Vector.cc:1206 #3 0x111d7d5e7 in libdap::Vector::m_duplicate(libdap::Vector const&) Vector.cc:116 #4 0x111d81733 in libdap::Vector::Vector(libdap::Vector const&) Vector.cc:297 #5 0x111dcf385 in libdap::Array::Array(libdap::Array const&) Array.cc:164 #6 0x118d9c116 in agg_util::ArrayAggregationBase::ArrayAggregationBase(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&) ArrayAggregationBase.cc:50 #7 0x118d8b7d2 in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&, agg_util::Dimension const&) ArrayAggregateOnOuterDimension.cc:59 #8 0x118d8be34 in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&, agg_util::Dimension const&) ArrayAggregateOnOuterDimension.cc:61 #9 0x118cec7ae in ncml_module::AggregationElement::processAggVarJoinNewForArray(libdap::DDS&, libdap::Array const&, agg_util::Dimension const&, std::__1::vector, std::__1::allocator > > const&) AggregationElement.cc:855 #10 0x118cb9db0 in ncml_module::AggregationElement::processJoinNewOnAggVar(libdap::DDS*, std::__1::basic_string, std::__1::allocator > const&, libdap::DDS const&) AggregationElement.cc:801 #11 0x118c7f4d7 in ncml_module::AggregationElement::processJoinNew() AggregationElement.cc:420 #12 0x118c75320 in ncml_module::AggregationElement::handleEnd() AggregationElement.cc:217 #13 0x1190c3b9f in ncml_module::NCMLParser::processEndNCMLElement(std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:1186 #14 0x1190cb35b in ncml_module::NCMLParser::onEndElementWithNamespace(std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:324 #15 0x11922f8c9 in ncmlSax2EndElementNs(void*, unsigned char const*, unsigned char const*, unsigned char const*) SaxParserWrapper.cc:242 #16 0x7fff597e1d8e in xmlParseEndTag2 (libxml2.2.dylib:x86_64+0x37d8e) #17 0x7fff597e0440 in xmlParseElement (libxml2.2.dylib:x86_64+0x36440) #18 0x7fff597e005a in xmlParseContent (libxml2.2.dylib:x86_64+0x3605a) #19 0x7fff597e03f1 in xmlParseElement (libxml2.2.dylib:x86_64+0x363f1) #20 0x7fff597e2b7a in xmlParseDocument (libxml2.2.dylib:x86_64+0x38b7a) #21 0x1192209ae in ncml_module::SaxParserWrapper::parse(std::__1::basic_string, std::__1::allocator > const&) SaxParserWrapper.cc:338 #22 0x1190b5d0b in ncml_module::NCMLParser::parseInto(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType, BESDapResponse*) NCMLParser.cc:185 #23 0x119131aae in ncml_module::NCMLRequestHandler::ncml_build_dds(BESDataHandlerInterface&) NCMLRequestHandler.cc:260 #24 0x10dc3dc8f in BESRequestHandlerList::execute_current(BESDataHandlerInterface&) BESRequestHandlerList.cc:273 #25 0x10dc3c0a4 in BESRequestHandlerList::execute_each(BESDataHandlerInterface&) BESRequestHandlerList.cc:167 #26 0x11182a5dc in BESDDXResponseHandler::execute(BESDataHandlerInterface&) BESDDXResponseHandler.cc:122 #27 0x10e054d5a in BESXMLInterface::execute_data_request_plan() BESXMLInterface.cc:285 #28 0x10dab1b8d in BESInterface::execute_request(std::__1::basic_string, std::__1::allocator > const&) BESInterface.cc:513 #29 0x10da1a8d8 in StandAloneClient::executeCommand(std::__1::basic_string, std::__1::allocator > const&, int) StandAloneClient.cc:237 SUMMARY: AddressSanitizer: heap-buffer-overflow (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x4f3fd) in __asan_memcpy Shadow bytes around the buggy address: 0x1c0600002260: 00 fa fa fa 00 00 04 fa fa fa fd fd fd fd fa fa 0x1c0600002270: fd fd fd fd fa fa fd fd fd fd fa fa 00 00 00 00 0x1c0600002280: fa fa fd fd fd fa fa fa 00 00 00 fa fa fa fd fd 0x1c0600002290: fd fa fa fa 00 00 00 fa fa fa fd fd fd fa fa fa 0x1c06000022a0: 00 00 00 fa fa fa fd fd fd fa fa fa 00 00 00 fa =>0x1c06000022b0: fa fa 00 00[04]fa fa fa 00 00 04 fa fa fa 00 00 0x1c06000022c0: 00 fa fa fa 00 00 00 fa fa fa 00 00 04 fa fa fa 0x1c06000022d0: 00 00 00 00 fa fa fa fa fa fa fa fa fa fa fa fa 0x1c06000022e0: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c06000022f0: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c0600002300: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa Shadow byte legend (one shadow byte represents 8 application bytes): Addressable: 00 Partially addressable: 01 02 03 04 05 06 07 Heap left redzone: fa Freed heap region: fd Stack left redzone: f1 Stack mid redzone: f2 Stack right redzone: f3 Stack after return: f5 Stack use after scope: f8 Global redzone: f9 Global init order: f6 Poisoned by user: f7 Container overflow: fc Array cookie: ac Intra object redzone: bb ASan internal: fe Left alloca redzone: ca Right alloca redzone: cb ==76767==ABORTING /Users/jimg/src/opendap/hyrax_git/bes/modules/ncml_module/tests/testsuite.dir/at-groups/415/test-source: line 44: 76767 Abort trap: 6 besstandalone -c $abs_builddir/bes.conf -i ./test.bescmd stdout: ./aggregations.at:87: exit code was 134, expected 0 415. aggregations.at:87: 415. Comparing ddx response for agg/joinNew_simple_2.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_simple_2_cons_3.ncml (aggregations.at:87): FAILED (aggregations.at:87) # -*- compilation -*- 416. aggregations.at:87: testing Comparing dods response for agg/joinNew_simple_2.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_simple_2_cons_3.ncml ... ./aggregations.at:87: besstandalone -c $abs_builddir/bes.conf -i ./test.bescmd stderr: Width: 20 Name: V Width: 20 Name: V Width: 80 Name: V ================================================================= ==76768==ERROR: AddressSanitizer: heap-buffer-overflow on address 0x6030000115a4 at pc 0x0001009003fe bp 0x7ffeefa989b0 sp 0x7ffeefa98160 READ of size 80 at 0x6030000115a4 thread T0 #0 0x1009003fd in __asan_memcpy (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x4f3fd) Provided dSYM: [/Users/jimg/src/opendap/hyrax_git/build/lib/libdap.25.dylib.dSYM/Contents/Resources/DWARF/libdap.25.dylib] does not match symbol owner 0x7fd097a05d30 #1 0x1044dbf39 in libdap::Vector::val2buf(void*, bool) Vector.cc:1212 #2 0x1044c55e7 in libdap::Vector::m_duplicate(libdap::Vector const&) Vector.cc:116 #3 0x1044c9733 in libdap::Vector::Vector(libdap::Vector const&) Vector.cc:297 #4 0x104517385 in libdap::Array::Array(libdap::Array const&) Array.cc:164 #5 0x10b6928da in agg_util::ArrayAggregationBase::ArrayAggregationBase(agg_util::ArrayAggregationBase const&) ArrayAggregationBase.cc:56 #6 0x10b681f84 in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(agg_util::ArrayAggregateOnOuterDimension const&) ArrayAggregateOnOuterDimension.cc:70 #7 0x10b68235c in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(agg_util::ArrayAggregateOnOuterDimension const&) ArrayAggregateOnOuterDimension.cc:71 #8 0x10b68289c in agg_util::ArrayAggregateOnOuterDimension::ptr_duplicate() ArrayAggregateOnOuterDimension.cc:85 #9 0x1043c80fd in libdap::DDS::add_var(libdap::BaseType*) DDS.cc:607 #10 0x10b5e4de8 in ncml_module::AggregationElement::processAggVarJoinNewForArray(libdap::DDS&, libdap::Array const&, agg_util::Dimension const&, std::__1::vector, std::__1::allocator > > const&) AggregationElement.cc:867 #11 0x10b5afdb0 in ncml_module::AggregationElement::processJoinNewOnAggVar(libdap::DDS*, std::__1::basic_string, std::__1::allocator > const&, libdap::DDS const&) AggregationElement.cc:801 #12 0x10b5754d7 in ncml_module::AggregationElement::processJoinNew() AggregationElement.cc:420 #13 0x10b56b320 in ncml_module::AggregationElement::handleEnd() AggregationElement.cc:217 #14 0x10b9b9b9f in ncml_module::NCMLParser::processEndNCMLElement(std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:1186 #15 0x10b9c135b in ncml_module::NCMLParser::onEndElementWithNamespace(std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:324 #16 0x10bb258c9 in ncmlSax2EndElementNs(void*, unsigned char const*, unsigned char const*, unsigned char const*) SaxParserWrapper.cc:242 #17 0x7fff597e1d8e in xmlParseEndTag2 (libxml2.2.dylib:x86_64+0x37d8e) #18 0x7fff597e0440 in xmlParseElement (libxml2.2.dylib:x86_64+0x36440) #19 0x7fff597e005a in xmlParseContent (libxml2.2.dylib:x86_64+0x3605a) #20 0x7fff597e03f1 in xmlParseElement (libxml2.2.dylib:x86_64+0x363f1) #21 0x7fff597e2b7a in xmlParseDocument (libxml2.2.dylib:x86_64+0x38b7a) #22 0x10bb169ae in ncml_module::SaxParserWrapper::parse(std::__1::basic_string, std::__1::allocator > const&) SaxParserWrapper.cc:338 #23 0x10b9abd0b in ncml_module::NCMLParser::parseInto(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType, BESDapResponse*) NCMLParser.cc:185 #24 0x10ba2d346 in ncml_module::NCMLRequestHandler::ncml_build_data(BESDataHandlerInterface&) NCMLRequestHandler.cc:297 #25 0x10039cc8f in BESRequestHandlerList::execute_current(BESDataHandlerInterface&) BESRequestHandlerList.cc:273 #26 0x10039b0a4 in BESRequestHandlerList::execute_each(BESDataHandlerInterface&) BESRequestHandlerList.cc:167 #27 0x103f3288c in BESDataResponseHandler::execute(BESDataHandlerInterface&) BESDataResponseHandler.cc:148 #28 0x1007b5d5a in BESXMLInterface::execute_data_request_plan() BESXMLInterface.cc:285 #29 0x100210b8d in BESInterface::execute_request(std::__1::basic_string, std::__1::allocator > const&) BESInterface.cc:513 #30 0x1001778d8 in StandAloneClient::executeCommand(std::__1::basic_string, std::__1::allocator > const&, int) StandAloneClient.cc:237 #31 0x1001753aa in StandAloneClient::executeCommands(std::__1::basic_ifstream >&, int) StandAloneClient.cc:349 #32 0x10015ae6d in StandAloneApp::run() StandAloneApp.cc:251 #33 0x100480c24 in BESApp::main(int, char**) BESApp.cc:58 #34 0x10015e12e in main StandAloneApp.cc:345 #35 0x7fff59ad3014 in start (libdyld.dylib:x86_64+0x1014) 0x6030000115a4 is located 0 bytes to the right of 20-byte region [0x603000011590,0x6030000115a4) allocated by thread T0 here: #0 0x100913cb2 in wrap__Znam (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x62cb2) #1 0x1044c6b3c in libdap::Vector::m_create_cardinal_data_buffer_for_type(unsigned int) Vector.cc:203 #2 0x1044dbc15 in libdap::Vector::val2buf(void*, bool) Vector.cc:1206 #3 0x1044c55e7 in libdap::Vector::m_duplicate(libdap::Vector const&) Vector.cc:116 #4 0x1044c9733 in libdap::Vector::Vector(libdap::Vector const&) Vector.cc:297 #5 0x104517385 in libdap::Array::Array(libdap::Array const&) Array.cc:164 #6 0x10b692116 in agg_util::ArrayAggregationBase::ArrayAggregationBase(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&) ArrayAggregationBase.cc:50 #7 0x10b6817d2 in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&, agg_util::Dimension const&) ArrayAggregateOnOuterDimension.cc:59 #8 0x10b681e34 in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&, agg_util::Dimension const&) ArrayAggregateOnOuterDimension.cc:61 #9 0x10b5e27ae in ncml_module::AggregationElement::processAggVarJoinNewForArray(libdap::DDS&, libdap::Array const&, agg_util::Dimension const&, std::__1::vector, std::__1::allocator > > const&) AggregationElement.cc:855 #10 0x10b5afdb0 in ncml_module::AggregationElement::processJoinNewOnAggVar(libdap::DDS*, std::__1::basic_string, std::__1::allocator > const&, libdap::DDS const&) AggregationElement.cc:801 #11 0x10b5754d7 in ncml_module::AggregationElement::processJoinNew() AggregationElement.cc:420 #12 0x10b56b320 in ncml_module::AggregationElement::handleEnd() AggregationElement.cc:217 #13 0x10b9b9b9f in ncml_module::NCMLParser::processEndNCMLElement(std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:1186 #14 0x10b9c135b in ncml_module::NCMLParser::onEndElementWithNamespace(std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:324 #15 0x10bb258c9 in ncmlSax2EndElementNs(void*, unsigned char const*, unsigned char const*, unsigned char const*) SaxParserWrapper.cc:242 #16 0x7fff597e1d8e in xmlParseEndTag2 (libxml2.2.dylib:x86_64+0x37d8e) #17 0x7fff597e0440 in xmlParseElement (libxml2.2.dylib:x86_64+0x36440) #18 0x7fff597e005a in xmlParseContent (libxml2.2.dylib:x86_64+0x3605a) #19 0x7fff597e03f1 in xmlParseElement (libxml2.2.dylib:x86_64+0x363f1) #20 0x7fff597e2b7a in xmlParseDocument (libxml2.2.dylib:x86_64+0x38b7a) #21 0x10bb169ae in ncml_module::SaxParserWrapper::parse(std::__1::basic_string, std::__1::allocator > const&) SaxParserWrapper.cc:338 #22 0x10b9abd0b in ncml_module::NCMLParser::parseInto(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType, BESDapResponse*) NCMLParser.cc:185 #23 0x10ba2d346 in ncml_module::NCMLRequestHandler::ncml_build_data(BESDataHandlerInterface&) NCMLRequestHandler.cc:297 #24 0x10039cc8f in BESRequestHandlerList::execute_current(BESDataHandlerInterface&) BESRequestHandlerList.cc:273 #25 0x10039b0a4 in BESRequestHandlerList::execute_each(BESDataHandlerInterface&) BESRequestHandlerList.cc:167 #26 0x103f3288c in BESDataResponseHandler::execute(BESDataHandlerInterface&) BESDataResponseHandler.cc:148 #27 0x1007b5d5a in BESXMLInterface::execute_data_request_plan() BESXMLInterface.cc:285 #28 0x100210b8d in BESInterface::execute_request(std::__1::basic_string, std::__1::allocator > const&) BESInterface.cc:513 #29 0x1001778d8 in StandAloneClient::executeCommand(std::__1::basic_string, std::__1::allocator > const&, int) StandAloneClient.cc:237 SUMMARY: AddressSanitizer: heap-buffer-overflow (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x4f3fd) in __asan_memcpy Shadow bytes around the buggy address: 0x1c0600002260: 00 fa fa fa 00 00 04 fa fa fa fd fd fd fd fa fa 0x1c0600002270: fd fd fd fd fa fa fd fd fd fd fa fa 00 00 00 00 0x1c0600002280: fa fa fd fd fd fa fa fa 00 00 00 fa fa fa fd fd 0x1c0600002290: fd fa fa fa 00 00 00 fa fa fa fd fd fd fa fa fa 0x1c06000022a0: 00 00 00 fa fa fa fd fd fd fa fa fa 00 00 00 fa =>0x1c06000022b0: fa fa 00 00[04]fa fa fa 00 00 04 fa fa fa 00 00 0x1c06000022c0: 00 fa fa fa 00 00 00 fa fa fa 00 00 04 fa fa fa 0x1c06000022d0: 00 00 00 00 fa fa fa fa fa fa fa fa fa fa fa fa 0x1c06000022e0: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c06000022f0: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c0600002300: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa Shadow byte legend (one shadow byte represents 8 application bytes): Addressable: 00 Partially addressable: 01 02 03 04 05 06 07 Heap left redzone: fa Freed heap region: fd Stack left redzone: f1 Stack mid redzone: f2 Stack right redzone: f3 Stack after return: f5 Stack use after scope: f8 Global redzone: f9 Global init order: f6 Poisoned by user: f7 Container overflow: fc Array cookie: ac Intra object redzone: bb ASan internal: fe Left alloca redzone: ca Right alloca redzone: cb ==76768==ABORTING /Users/jimg/src/opendap/hyrax_git/bes/modules/ncml_module/tests/testsuite.dir/at-groups/416/test-source: line 44: 76768 Abort trap: 6 besstandalone -c $abs_builddir/bes.conf -i ./test.bescmd stdout: ./aggregations.at:87: exit code was 134, expected 0 416. aggregations.at:87: 416. Comparing dods response for agg/joinNew_simple_2.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_simple_2_cons_3.ncml (aggregations.at:87): FAILED (aggregations.at:87) # -*- compilation -*- 429. aggregations.at:99: testing Comparing das response for agg/joinNew_with_explicit_map.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_with_explicit_map.ncml ... ./aggregations.at:99: besstandalone -c $abs_builddir/bes.conf -i ./test.bescmd stderr: Width: 12 Name: V Width: 12 Name: V Width: 24 Name: V ================================================================= ==77254==ERROR: AddressSanitizer: heap-buffer-overflow on address 0x60200000be5c at pc 0x00010e40c3fe bp 0x7ffee1f8e810 sp 0x7ffee1f8dfc0 READ of size 24 at 0x60200000be5c thread T0 #0 0x10e40c3fd in __asan_memcpy (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x4f3fd) Provided dSYM: [/Users/jimg/src/opendap/hyrax_git/build/lib/libdap.25.dylib.dSYM/Contents/Resources/DWARF/libdap.25.dylib] does not match symbol owner 0x7fae45d021f0 #1 0x111fdbf39 in libdap::Vector::val2buf(void*, bool) Vector.cc:1212 #2 0x111fc55e7 in libdap::Vector::m_duplicate(libdap::Vector const&) Vector.cc:116 #3 0x111fc9733 in libdap::Vector::Vector(libdap::Vector const&) Vector.cc:297 #4 0x112017385 in libdap::Array::Array(libdap::Array const&) Array.cc:164 #5 0x1190ad8da in agg_util::ArrayAggregationBase::ArrayAggregationBase(agg_util::ArrayAggregationBase const&) ArrayAggregationBase.cc:56 #6 0x11909cf84 in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(agg_util::ArrayAggregateOnOuterDimension const&) ArrayAggregateOnOuterDimension.cc:70 #7 0x11909d35c in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(agg_util::ArrayAggregateOnOuterDimension const&) ArrayAggregateOnOuterDimension.cc:71 #8 0x11909d89c in agg_util::ArrayAggregateOnOuterDimension::ptr_duplicate() ArrayAggregateOnOuterDimension.cc:85 #9 0x111ec80fd in libdap::DDS::add_var(libdap::BaseType*) DDS.cc:607 #10 0x118fffde8 in ncml_module::AggregationElement::processAggVarJoinNewForArray(libdap::DDS&, libdap::Array const&, agg_util::Dimension const&, std::__1::vector, std::__1::allocator > > const&) AggregationElement.cc:867 #11 0x118fcadb0 in ncml_module::AggregationElement::processJoinNewOnAggVar(libdap::DDS*, std::__1::basic_string, std::__1::allocator > const&, libdap::DDS const&) AggregationElement.cc:801 #12 0x118f904d7 in ncml_module::AggregationElement::processJoinNew() AggregationElement.cc:420 #13 0x118f86320 in ncml_module::AggregationElement::handleEnd() AggregationElement.cc:217 #14 0x1193d4b9f in ncml_module::NCMLParser::processEndNCMLElement(std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:1186 #15 0x1193dc35b in ncml_module::NCMLParser::onEndElementWithNamespace(std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:324 #16 0x1195408c9 in ncmlSax2EndElementNs(void*, unsigned char const*, unsigned char const*, unsigned char const*) SaxParserWrapper.cc:242 #17 0x7fff597e1d8e in xmlParseEndTag2 (libxml2.2.dylib:x86_64+0x37d8e) #18 0x7fff597e0440 in xmlParseElement (libxml2.2.dylib:x86_64+0x36440) #19 0x7fff597e005a in xmlParseContent (libxml2.2.dylib:x86_64+0x3605a) #20 0x7fff597e03f1 in xmlParseElement (libxml2.2.dylib:x86_64+0x363f1) #21 0x7fff597e2b7a in xmlParseDocument (libxml2.2.dylib:x86_64+0x38b7a) #22 0x1195319ae in ncml_module::SaxParserWrapper::parse(std::__1::basic_string, std::__1::allocator > const&) SaxParserWrapper.cc:338 #23 0x1193c6d0b in ncml_module::NCMLParser::parseInto(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType, BESDapResponse*) NCMLParser.cc:185 #24 0x1193c01e7 in ncml_module::NCMLParser::parse(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType) NCMLParser.cc:155 #25 0x11943a841 in ncml_module::NCMLRequestHandler::ncml_build_das(BESDataHandlerInterface&) NCMLRequestHandler.cc:172 #26 0x10dea9c8f in BESRequestHandlerList::execute_current(BESDataHandlerInterface&) BESRequestHandlerList.cc:273 #27 0x10dea80a4 in BESRequestHandlerList::execute_each(BESDataHandlerInterface&) BESRequestHandlerList.cc:167 #28 0x111a21ff0 in BESDASResponseHandler::execute(BESDataHandlerInterface&) BESDASResponseHandler.cc:95 #29 0x10e2c1d5a in BESXMLInterface::execute_data_request_plan() BESXMLInterface.cc:285 #30 0x10dd1db8d in BESInterface::execute_request(std::__1::basic_string, std::__1::allocator > const&) BESInterface.cc:513 #31 0x10dc818d8 in StandAloneClient::executeCommand(std::__1::basic_string, std::__1::allocator > const&, int) StandAloneClient.cc:237 #32 0x10dc7f3aa in StandAloneClient::executeCommands(std::__1::basic_ifstream >&, int) StandAloneClient.cc:349 #33 0x10dc64e6d in StandAloneApp::run() StandAloneApp.cc:251 #34 0x10df8dc24 in BESApp::main(int, char**) BESApp.cc:58 #35 0x10dc6812e in main StandAloneApp.cc:345 #36 0x7fff59ad3014 in start (libdyld.dylib:x86_64+0x1014) 0x60200000be5c is located 0 bytes to the right of 12-byte region [0x60200000be50,0x60200000be5c) allocated by thread T0 here: #0 0x10e41fcb2 in wrap__Znam (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x62cb2) #1 0x111fc6b3c in libdap::Vector::m_create_cardinal_data_buffer_for_type(unsigned int) Vector.cc:203 #2 0x111fdbc15 in libdap::Vector::val2buf(void*, bool) Vector.cc:1206 #3 0x111fc55e7 in libdap::Vector::m_duplicate(libdap::Vector const&) Vector.cc:116 #4 0x111fc9733 in libdap::Vector::Vector(libdap::Vector const&) Vector.cc:297 #5 0x112017385 in libdap::Array::Array(libdap::Array const&) Array.cc:164 #6 0x1190ad116 in agg_util::ArrayAggregationBase::ArrayAggregationBase(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&) ArrayAggregationBase.cc:50 #7 0x11909c7d2 in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&, agg_util::Dimension const&) ArrayAggregateOnOuterDimension.cc:59 #8 0x11909ce34 in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&, agg_util::Dimension const&) ArrayAggregateOnOuterDimension.cc:61 #9 0x118ffd7ae in ncml_module::AggregationElement::processAggVarJoinNewForArray(libdap::DDS&, libdap::Array const&, agg_util::Dimension const&, std::__1::vector, std::__1::allocator > > const&) AggregationElement.cc:855 #10 0x118fcadb0 in ncml_module::AggregationElement::processJoinNewOnAggVar(libdap::DDS*, std::__1::basic_string, std::__1::allocator > const&, libdap::DDS const&) AggregationElement.cc:801 #11 0x118f904d7 in ncml_module::AggregationElement::processJoinNew() AggregationElement.cc:420 #12 0x118f86320 in ncml_module::AggregationElement::handleEnd() AggregationElement.cc:217 #13 0x1193d4b9f in ncml_module::NCMLParser::processEndNCMLElement(std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:1186 #14 0x1193dc35b in ncml_module::NCMLParser::onEndElementWithNamespace(std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:324 #15 0x1195408c9 in ncmlSax2EndElementNs(void*, unsigned char const*, unsigned char const*, unsigned char const*) SaxParserWrapper.cc:242 #16 0x7fff597e1d8e in xmlParseEndTag2 (libxml2.2.dylib:x86_64+0x37d8e) #17 0x7fff597e0440 in xmlParseElement (libxml2.2.dylib:x86_64+0x36440) #18 0x7fff597e005a in xmlParseContent (libxml2.2.dylib:x86_64+0x3605a) #19 0x7fff597e03f1 in xmlParseElement (libxml2.2.dylib:x86_64+0x363f1) #20 0x7fff597e2b7a in xmlParseDocument (libxml2.2.dylib:x86_64+0x38b7a) #21 0x1195319ae in ncml_module::SaxParserWrapper::parse(std::__1::basic_string, std::__1::allocator > const&) SaxParserWrapper.cc:338 #22 0x1193c6d0b in ncml_module::NCMLParser::parseInto(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType, BESDapResponse*) NCMLParser.cc:185 #23 0x1193c01e7 in ncml_module::NCMLParser::parse(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType) NCMLParser.cc:155 #24 0x11943a841 in ncml_module::NCMLRequestHandler::ncml_build_das(BESDataHandlerInterface&) NCMLRequestHandler.cc:172 #25 0x10dea9c8f in BESRequestHandlerList::execute_current(BESDataHandlerInterface&) BESRequestHandlerList.cc:273 #26 0x10dea80a4 in BESRequestHandlerList::execute_each(BESDataHandlerInterface&) BESRequestHandlerList.cc:167 #27 0x111a21ff0 in BESDASResponseHandler::execute(BESDataHandlerInterface&) BESDASResponseHandler.cc:95 #28 0x10e2c1d5a in BESXMLInterface::execute_data_request_plan() BESXMLInterface.cc:285 #29 0x10dd1db8d in BESInterface::execute_request(std::__1::basic_string, std::__1::allocator > const&) BESInterface.cc:513 SUMMARY: AddressSanitizer: heap-buffer-overflow (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x4f3fd) in __asan_memcpy Shadow bytes around the buggy address: 0x1c0400001770: fa fa 00 02 fa fa 00 02 fa fa fd fa fa fa fd fd 0x1c0400001780: fa fa fd fa fa fa 00 fa fa fa 00 fa fa fa 00 fa 0x1c0400001790: fa fa fd fd fa fa 00 04 fa fa 00 04 fa fa 00 00 0x1c04000017a0: fa fa 00 fa fa fa 00 fa fa fa 00 fa fa fa fd fd 0x1c04000017b0: fa fa 00 04 fa fa 00 04 fa fa fd fa fa fa 00 00 =>0x1c04000017c0: fa fa 00 00 fa fa 00 fa fa fa 00[04]fa fa 00 04 0x1c04000017d0: fa fa 00 04 fa fa 00 00 fa fa fa fa fa fa fa fa 0x1c04000017e0: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c04000017f0: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c0400001800: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c0400001810: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa Shadow byte legend (one shadow byte represents 8 application bytes): Addressable: 00 Partially addressable: 01 02 03 04 05 06 07 Heap left redzone: fa Freed heap region: fd Stack left redzone: f1 Stack mid redzone: f2 Stack right redzone: f3 Stack after return: f5 Stack use after scope: f8 Global redzone: f9 Global init order: f6 Poisoned by user: f7 Container overflow: fc Array cookie: ac Intra object redzone: bb ASan internal: fe Left alloca redzone: ca Right alloca redzone: cb ==77254==ABORTING /Users/jimg/src/opendap/hyrax_git/bes/modules/ncml_module/tests/testsuite.dir/at-groups/429/test-source: line 44: 77254 Abort trap: 6 besstandalone -c $abs_builddir/bes.conf -i ./test.bescmd stdout: ./aggregations.at:99: exit code was 134, expected 0 429. aggregations.at:99: 429. Comparing das response for agg/joinNew_with_explicit_map.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_with_explicit_map.ncml (aggregations.at:99): FAILED (aggregations.at:99) # -*- compilation -*- 430. aggregations.at:99: testing Comparing dds response for agg/joinNew_with_explicit_map.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_with_explicit_map.ncml ... ./aggregations.at:99: besstandalone -c $abs_builddir/bes.conf -i ./test.bescmd stderr: Width: 12 Name: V Width: 12 Name: V Width: 24 Name: V ================================================================= ==77252==ERROR: AddressSanitizer: heap-buffer-overflow on address 0x60200000be3c at pc 0x00010ce4d3fe bp 0x7ffee354eb30 sp 0x7ffee354e2e0 READ of size 24 at 0x60200000be3c thread T0 #0 0x10ce4d3fd in __asan_memcpy (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x4f3fd) Provided dSYM: [/Users/jimg/src/opendap/hyrax_git/build/lib/libdap.25.dylib.dSYM/Contents/Resources/DWARF/libdap.25.dylib] does not match symbol owner 0x7ff017100c70 #1 0x1109f2f39 in libdap::Vector::val2buf(void*, bool) Vector.cc:1212 #2 0x1109dc5e7 in libdap::Vector::m_duplicate(libdap::Vector const&) Vector.cc:116 #3 0x1109e0733 in libdap::Vector::Vector(libdap::Vector const&) Vector.cc:297 #4 0x110a2e385 in libdap::Array::Array(libdap::Array const&) Array.cc:164 #5 0x117b4f8da in agg_util::ArrayAggregationBase::ArrayAggregationBase(agg_util::ArrayAggregationBase const&) ArrayAggregationBase.cc:56 #6 0x117b3ef84 in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(agg_util::ArrayAggregateOnOuterDimension const&) ArrayAggregateOnOuterDimension.cc:70 #7 0x117b3f35c in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(agg_util::ArrayAggregateOnOuterDimension const&) ArrayAggregateOnOuterDimension.cc:71 #8 0x117b3f89c in agg_util::ArrayAggregateOnOuterDimension::ptr_duplicate() ArrayAggregateOnOuterDimension.cc:85 #9 0x1108df0fd in libdap::DDS::add_var(libdap::BaseType*) DDS.cc:607 #10 0x117aa1de8 in ncml_module::AggregationElement::processAggVarJoinNewForArray(libdap::DDS&, libdap::Array const&, agg_util::Dimension const&, std::__1::vector, std::__1::allocator > > const&) AggregationElement.cc:867 #11 0x117a6cdb0 in ncml_module::AggregationElement::processJoinNewOnAggVar(libdap::DDS*, std::__1::basic_string, std::__1::allocator > const&, libdap::DDS const&) AggregationElement.cc:801 #12 0x117a324d7 in ncml_module::AggregationElement::processJoinNew() AggregationElement.cc:420 #13 0x117a28320 in ncml_module::AggregationElement::handleEnd() AggregationElement.cc:217 #14 0x117e76b9f in ncml_module::NCMLParser::processEndNCMLElement(std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:1186 #15 0x117e7e35b in ncml_module::NCMLParser::onEndElementWithNamespace(std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:324 #16 0x117fe28c9 in ncmlSax2EndElementNs(void*, unsigned char const*, unsigned char const*, unsigned char const*) SaxParserWrapper.cc:242 #17 0x7fff597e1d8e in xmlParseEndTag2 (libxml2.2.dylib:x86_64+0x37d8e) #18 0x7fff597e0440 in xmlParseElement (libxml2.2.dylib:x86_64+0x36440) #19 0x7fff597e005a in xmlParseContent (libxml2.2.dylib:x86_64+0x3605a) #20 0x7fff597e03f1 in xmlParseElement (libxml2.2.dylib:x86_64+0x363f1) #21 0x7fff597e2b7a in xmlParseDocument (libxml2.2.dylib:x86_64+0x38b7a) #22 0x117fd39ae in ncml_module::SaxParserWrapper::parse(std::__1::basic_string, std::__1::allocator > const&) SaxParserWrapper.cc:338 #23 0x117e68d0b in ncml_module::NCMLParser::parseInto(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType, BESDapResponse*) NCMLParser.cc:185 #24 0x117ee4aae in ncml_module::NCMLRequestHandler::ncml_build_dds(BESDataHandlerInterface&) NCMLRequestHandler.cc:260 #25 0x10c8e6c8f in BESRequestHandlerList::execute_current(BESDataHandlerInterface&) BESRequestHandlerList.cc:273 #26 0x10c8e50a4 in BESRequestHandlerList::execute_each(BESDataHandlerInterface&) BESRequestHandlerList.cc:167 #27 0x11043f048 in BESDDSResponseHandler::execute(BESDataHandlerInterface&) BESDDSResponseHandler.cc:107 #28 0x10cd02d5a in BESXMLInterface::execute_data_request_plan() BESXMLInterface.cc:285 #29 0x10c75ab8d in BESInterface::execute_request(std::__1::basic_string, std::__1::allocator > const&) BESInterface.cc:513 #30 0x10c6c18d8 in StandAloneClient::executeCommand(std::__1::basic_string, std::__1::allocator > const&, int) StandAloneClient.cc:237 #31 0x10c6bf3aa in StandAloneClient::executeCommands(std::__1::basic_ifstream >&, int) StandAloneClient.cc:349 #32 0x10c6a4e6d in StandAloneApp::run() StandAloneApp.cc:251 #33 0x10c9cac24 in BESApp::main(int, char**) BESApp.cc:58 #34 0x10c6a812e in main StandAloneApp.cc:345 #35 0x7fff59ad3014 in start (libdyld.dylib:x86_64+0x1014) 0x60200000be3c is located 0 bytes to the right of 12-byte region [0x60200000be30,0x60200000be3c) allocated by thread T0 here: #0 0x10ce60cb2 in wrap__Znam (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x62cb2) #1 0x1109ddb3c in libdap::Vector::m_create_cardinal_data_buffer_for_type(unsigned int) Vector.cc:203 #2 0x1109f2c15 in libdap::Vector::val2buf(void*, bool) Vector.cc:1206 #3 0x1109dc5e7 in libdap::Vector::m_duplicate(libdap::Vector const&) Vector.cc:116 #4 0x1109e0733 in libdap::Vector::Vector(libdap::Vector const&) Vector.cc:297 #5 0x110a2e385 in libdap::Array::Array(libdap::Array const&) Array.cc:164 #6 0x117b4f116 in agg_util::ArrayAggregationBase::ArrayAggregationBase(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&) ArrayAggregationBase.cc:50 #7 0x117b3e7d2 in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&, agg_util::Dimension const&) ArrayAggregateOnOuterDimension.cc:59 #8 0x117b3ee34 in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&, agg_util::Dimension const&) ArrayAggregateOnOuterDimension.cc:61 #9 0x117a9f7ae in ncml_module::AggregationElement::processAggVarJoinNewForArray(libdap::DDS&, libdap::Array const&, agg_util::Dimension const&, std::__1::vector, std::__1::allocator > > const&) AggregationElement.cc:855 #10 0x117a6cdb0 in ncml_module::AggregationElement::processJoinNewOnAggVar(libdap::DDS*, std::__1::basic_string, std::__1::allocator > const&, libdap::DDS const&) AggregationElement.cc:801 #11 0x117a324d7 in ncml_module::AggregationElement::processJoinNew() AggregationElement.cc:420 #12 0x117a28320 in ncml_module::AggregationElement::handleEnd() AggregationElement.cc:217 #13 0x117e76b9f in ncml_module::NCMLParser::processEndNCMLElement(std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:1186 #14 0x117e7e35b in ncml_module::NCMLParser::onEndElementWithNamespace(std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:324 #15 0x117fe28c9 in ncmlSax2EndElementNs(void*, unsigned char const*, unsigned char const*, unsigned char const*) SaxParserWrapper.cc:242 #16 0x7fff597e1d8e in xmlParseEndTag2 (libxml2.2.dylib:x86_64+0x37d8e) #17 0x7fff597e0440 in xmlParseElement (libxml2.2.dylib:x86_64+0x36440) #18 0x7fff597e005a in xmlParseContent (libxml2.2.dylib:x86_64+0x3605a) #19 0x7fff597e03f1 in xmlParseElement (libxml2.2.dylib:x86_64+0x363f1) #20 0x7fff597e2b7a in xmlParseDocument (libxml2.2.dylib:x86_64+0x38b7a) #21 0x117fd39ae in ncml_module::SaxParserWrapper::parse(std::__1::basic_string, std::__1::allocator > const&) SaxParserWrapper.cc:338 #22 0x117e68d0b in ncml_module::NCMLParser::parseInto(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType, BESDapResponse*) NCMLParser.cc:185 #23 0x117ee4aae in ncml_module::NCMLRequestHandler::ncml_build_dds(BESDataHandlerInterface&) NCMLRequestHandler.cc:260 #24 0x10c8e6c8f in BESRequestHandlerList::execute_current(BESDataHandlerInterface&) BESRequestHandlerList.cc:273 #25 0x10c8e50a4 in BESRequestHandlerList::execute_each(BESDataHandlerInterface&) BESRequestHandlerList.cc:167 #26 0x11043f048 in BESDDSResponseHandler::execute(BESDataHandlerInterface&) BESDDSResponseHandler.cc:107 #27 0x10cd02d5a in BESXMLInterface::execute_data_request_plan() BESXMLInterface.cc:285 #28 0x10c75ab8d in BESInterface::execute_request(std::__1::basic_string, std::__1::allocator > const&) BESInterface.cc:513 #29 0x10c6c18d8 in StandAloneClient::executeCommand(std::__1::basic_string, std::__1::allocator > const&, int) StandAloneClient.cc:237 SUMMARY: AddressSanitizer: heap-buffer-overflow (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x4f3fd) in __asan_memcpy Shadow bytes around the buggy address: 0x1c0400001770: fa fa 00 02 fa fa fd fa fa fa fd fd fa fa fd fa 0x1c0400001780: fa fa 00 fa fa fa 00 fa fa fa 00 fa fa fa fd fd 0x1c0400001790: fa fa 00 04 fa fa 00 04 fa fa 00 00 fa fa 00 fa 0x1c04000017a0: fa fa 00 fa fa fa 00 fa fa fa fd fd fa fa 00 04 0x1c04000017b0: fa fa 00 04 fa fa fd fa fa fa 00 00 fa fa 00 00 =>0x1c04000017c0: fa fa 00 fa fa fa 00[04]fa fa 00 04 fa fa 00 04 0x1c04000017d0: fa fa 00 00 fa fa fa fa fa fa fa fa fa fa fa fa 0x1c04000017e0: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c04000017f0: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c0400001800: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c0400001810: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa Shadow byte legend (one shadow byte represents 8 application bytes): Addressable: 00 Partially addressable: 01 02 03 04 05 06 07 Heap left redzone: fa Freed heap region: fd Stack left redzone: f1 Stack mid redzone: f2 Stack right redzone: f3 Stack after return: f5 Stack use after scope: f8 Global redzone: f9 Global init order: f6 Poisoned by user: f7 Container overflow: fc Array cookie: ac Intra object redzone: bb ASan internal: fe Left alloca redzone: ca Right alloca redzone: cb ==77252==ABORTING /Users/jimg/src/opendap/hyrax_git/bes/modules/ncml_module/tests/testsuite.dir/at-groups/430/test-source: line 44: 77252 Abort trap: 6 besstandalone -c $abs_builddir/bes.conf -i ./test.bescmd stdout: ./aggregations.at:99: exit code was 134, expected 0 430. aggregations.at:99: 430. Comparing dds response for agg/joinNew_with_explicit_map.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_with_explicit_map.ncml (aggregations.at:99): FAILED (aggregations.at:99) # -*- compilation -*- 431. aggregations.at:99: testing Comparing ddx response for agg/joinNew_with_explicit_map.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_with_explicit_map.ncml ... ./aggregations.at:99: besstandalone -c $abs_builddir/bes.conf -i ./test.bescmd stderr: Width: 12 Name: V Width: 12 Name: V Width: 24 Name: V ================================================================= ==77259==ERROR: AddressSanitizer: heap-buffer-overflow on address 0x60200000be3c at pc 0x0001084713fe bp 0x7ffee7f2b6d0 sp 0x7ffee7f2ae80 READ of size 24 at 0x60200000be3c thread T0 #0 0x1084713fd in __asan_memcpy (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x4f3fd) Provided dSYM: [/Users/jimg/src/opendap/hyrax_git/build/lib/libdap.25.dylib.dSYM/Contents/Resources/DWARF/libdap.25.dylib] does not match symbol owner 0x7ff2f7d0e0e0 #1 0x10c093f39 in libdap::Vector::val2buf(void*, bool) Vector.cc:1212 #2 0x10c07d5e7 in libdap::Vector::m_duplicate(libdap::Vector const&) Vector.cc:116 #3 0x10c081733 in libdap::Vector::Vector(libdap::Vector const&) Vector.cc:297 #4 0x10c0cf385 in libdap::Array::Array(libdap::Array const&) Array.cc:164 #5 0x1130668da in agg_util::ArrayAggregationBase::ArrayAggregationBase(agg_util::ArrayAggregationBase const&) ArrayAggregationBase.cc:56 #6 0x113055f84 in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(agg_util::ArrayAggregateOnOuterDimension const&) ArrayAggregateOnOuterDimension.cc:70 #7 0x11305635c in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(agg_util::ArrayAggregateOnOuterDimension const&) ArrayAggregateOnOuterDimension.cc:71 #8 0x11305689c in agg_util::ArrayAggregateOnOuterDimension::ptr_duplicate() ArrayAggregateOnOuterDimension.cc:85 #9 0x10bf800fd in libdap::DDS::add_var(libdap::BaseType*) DDS.cc:607 #10 0x112fb8de8 in ncml_module::AggregationElement::processAggVarJoinNewForArray(libdap::DDS&, libdap::Array const&, agg_util::Dimension const&, std::__1::vector, std::__1::allocator > > const&) AggregationElement.cc:867 #11 0x112f83db0 in ncml_module::AggregationElement::processJoinNewOnAggVar(libdap::DDS*, std::__1::basic_string, std::__1::allocator > const&, libdap::DDS const&) AggregationElement.cc:801 #12 0x112f494d7 in ncml_module::AggregationElement::processJoinNew() AggregationElement.cc:420 #13 0x112f3f320 in ncml_module::AggregationElement::handleEnd() AggregationElement.cc:217 #14 0x11338db9f in ncml_module::NCMLParser::processEndNCMLElement(std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:1186 #15 0x11339535b in ncml_module::NCMLParser::onEndElementWithNamespace(std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:324 #16 0x1134f98c9 in ncmlSax2EndElementNs(void*, unsigned char const*, unsigned char const*, unsigned char const*) SaxParserWrapper.cc:242 #17 0x7fff597e1d8e in xmlParseEndTag2 (libxml2.2.dylib:x86_64+0x37d8e) #18 0x7fff597e0440 in xmlParseElement (libxml2.2.dylib:x86_64+0x36440) #19 0x7fff597e005a in xmlParseContent (libxml2.2.dylib:x86_64+0x3605a) #20 0x7fff597e03f1 in xmlParseElement (libxml2.2.dylib:x86_64+0x363f1) #21 0x7fff597e2b7a in xmlParseDocument (libxml2.2.dylib:x86_64+0x38b7a) #22 0x1134ea9ae in ncml_module::SaxParserWrapper::parse(std::__1::basic_string, std::__1::allocator > const&) SaxParserWrapper.cc:338 #23 0x11337fd0b in ncml_module::NCMLParser::parseInto(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType, BESDapResponse*) NCMLParser.cc:185 #24 0x1133fbaae in ncml_module::NCMLRequestHandler::ncml_build_dds(BESDataHandlerInterface&) NCMLRequestHandler.cc:260 #25 0x107f0bc8f in BESRequestHandlerList::execute_current(BESDataHandlerInterface&) BESRequestHandlerList.cc:273 #26 0x107f0a0a4 in BESRequestHandlerList::execute_each(BESDataHandlerInterface&) BESRequestHandlerList.cc:167 #27 0x10bb2a5dc in BESDDXResponseHandler::execute(BESDataHandlerInterface&) BESDDXResponseHandler.cc:122 #28 0x108326d5a in BESXMLInterface::execute_data_request_plan() BESXMLInterface.cc:285 #29 0x107d7fb8d in BESInterface::execute_request(std::__1::basic_string, std::__1::allocator > const&) BESInterface.cc:513 #30 0x107ce48d8 in StandAloneClient::executeCommand(std::__1::basic_string, std::__1::allocator > const&, int) StandAloneClient.cc:237 #31 0x107ce23aa in StandAloneClient::executeCommands(std::__1::basic_ifstream >&, int) StandAloneClient.cc:349 #32 0x107cc7e6d in StandAloneApp::run() StandAloneApp.cc:251 #33 0x107fefc24 in BESApp::main(int, char**) BESApp.cc:58 #34 0x107ccb12e in main StandAloneApp.cc:345 #35 0x7fff59ad3014 in start (libdyld.dylib:x86_64+0x1014) 0x60200000be3c is located 0 bytes to the right of 12-byte region [0x60200000be30,0x60200000be3c) allocated by thread T0 here: #0 0x108484cb2 in wrap__Znam (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x62cb2) #1 0x10c07eb3c in libdap::Vector::m_create_cardinal_data_buffer_for_type(unsigned int) Vector.cc:203 #2 0x10c093c15 in libdap::Vector::val2buf(void*, bool) Vector.cc:1206 #3 0x10c07d5e7 in libdap::Vector::m_duplicate(libdap::Vector const&) Vector.cc:116 #4 0x10c081733 in libdap::Vector::Vector(libdap::Vector const&) Vector.cc:297 #5 0x10c0cf385 in libdap::Array::Array(libdap::Array const&) Array.cc:164 #6 0x113066116 in agg_util::ArrayAggregationBase::ArrayAggregationBase(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&) ArrayAggregationBase.cc:50 #7 0x1130557d2 in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&, agg_util::Dimension const&) ArrayAggregateOnOuterDimension.cc:59 #8 0x113055e34 in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&, agg_util::Dimension const&) ArrayAggregateOnOuterDimension.cc:61 #9 0x112fb67ae in ncml_module::AggregationElement::processAggVarJoinNewForArray(libdap::DDS&, libdap::Array const&, agg_util::Dimension const&, std::__1::vector, std::__1::allocator > > const&) AggregationElement.cc:855 #10 0x112f83db0 in ncml_module::AggregationElement::processJoinNewOnAggVar(libdap::DDS*, std::__1::basic_string, std::__1::allocator > const&, libdap::DDS const&) AggregationElement.cc:801 #11 0x112f494d7 in ncml_module::AggregationElement::processJoinNew() AggregationElement.cc:420 #12 0x112f3f320 in ncml_module::AggregationElement::handleEnd() AggregationElement.cc:217 #13 0x11338db9f in ncml_module::NCMLParser::processEndNCMLElement(std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:1186 #14 0x11339535b in ncml_module::NCMLParser::onEndElementWithNamespace(std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:324 #15 0x1134f98c9 in ncmlSax2EndElementNs(void*, unsigned char const*, unsigned char const*, unsigned char const*) SaxParserWrapper.cc:242 #16 0x7fff597e1d8e in xmlParseEndTag2 (libxml2.2.dylib:x86_64+0x37d8e) #17 0x7fff597e0440 in xmlParseElement (libxml2.2.dylib:x86_64+0x36440) #18 0x7fff597e005a in xmlParseContent (libxml2.2.dylib:x86_64+0x3605a) #19 0x7fff597e03f1 in xmlParseElement (libxml2.2.dylib:x86_64+0x363f1) #20 0x7fff597e2b7a in xmlParseDocument (libxml2.2.dylib:x86_64+0x38b7a) #21 0x1134ea9ae in ncml_module::SaxParserWrapper::parse(std::__1::basic_string, std::__1::allocator > const&) SaxParserWrapper.cc:338 #22 0x11337fd0b in ncml_module::NCMLParser::parseInto(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType, BESDapResponse*) NCMLParser.cc:185 #23 0x1133fbaae in ncml_module::NCMLRequestHandler::ncml_build_dds(BESDataHandlerInterface&) NCMLRequestHandler.cc:260 #24 0x107f0bc8f in BESRequestHandlerList::execute_current(BESDataHandlerInterface&) BESRequestHandlerList.cc:273 #25 0x107f0a0a4 in BESRequestHandlerList::execute_each(BESDataHandlerInterface&) BESRequestHandlerList.cc:167 #26 0x10bb2a5dc in BESDDXResponseHandler::execute(BESDataHandlerInterface&) BESDDXResponseHandler.cc:122 #27 0x108326d5a in BESXMLInterface::execute_data_request_plan() BESXMLInterface.cc:285 #28 0x107d7fb8d in BESInterface::execute_request(std::__1::basic_string, std::__1::allocator > const&) BESInterface.cc:513 #29 0x107ce48d8 in StandAloneClient::executeCommand(std::__1::basic_string, std::__1::allocator > const&, int) StandAloneClient.cc:237 SUMMARY: AddressSanitizer: heap-buffer-overflow (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x4f3fd) in __asan_memcpy Shadow bytes around the buggy address: 0x1c0400001770: fa fa 00 02 fa fa fd fa fa fa fd fd fa fa fd fa 0x1c0400001780: fa fa 00 fa fa fa 00 fa fa fa 00 fa fa fa fd fd 0x1c0400001790: fa fa 00 04 fa fa 00 04 fa fa 00 00 fa fa 00 fa 0x1c04000017a0: fa fa 00 fa fa fa 00 fa fa fa fd fd fa fa 00 04 0x1c04000017b0: fa fa 00 04 fa fa fd fa fa fa 00 00 fa fa 00 00 =>0x1c04000017c0: fa fa 00 fa fa fa 00[04]fa fa 00 04 fa fa 00 04 0x1c04000017d0: fa fa 00 00 fa fa fa fa fa fa fa fa fa fa fa fa 0x1c04000017e0: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c04000017f0: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c0400001800: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c0400001810: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa Shadow byte legend (one shadow byte represents 8 application bytes): Addressable: 00 Partially addressable: 01 02 03 04 05 06 07 Heap left redzone: fa Freed heap region: fd Stack left redzone: f1 Stack mid redzone: f2 Stack right redzone: f3 Stack after return: f5 Stack use after scope: f8 Global redzone: f9 Global init order: f6 Poisoned by user: f7 Container overflow: fc Array cookie: ac Intra object redzone: bb ASan internal: fe Left alloca redzone: ca Right alloca redzone: cb ==77259==ABORTING /Users/jimg/src/opendap/hyrax_git/bes/modules/ncml_module/tests/testsuite.dir/at-groups/431/test-source: line 44: 77259 Abort trap: 6 besstandalone -c $abs_builddir/bes.conf -i ./test.bescmd stdout: ./aggregations.at:99: exit code was 134, expected 0 431. aggregations.at:99: 431. Comparing ddx response for agg/joinNew_with_explicit_map.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_with_explicit_map.ncml (aggregations.at:99): FAILED (aggregations.at:99) # -*- compilation -*- 432. aggregations.at:99: testing Comparing dods response for agg/joinNew_with_explicit_map.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_with_explicit_map.ncml ... ./aggregations.at:99: besstandalone -c $abs_builddir/bes.conf -i ./test.bescmd stderr: Width: 12 Name: V Width: 12 Name: V Width: 24 Name: V ================================================================= ==77269==ERROR: AddressSanitizer: heap-buffer-overflow on address 0x60200000be5c at pc 0x00010198e3fe bp 0x7ffeee9ff9b0 sp 0x7ffeee9ff160 READ of size 24 at 0x60200000be5c thread T0 #0 0x10198e3fd in __asan_memcpy (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x4f3fd) Provided dSYM: [/Users/jimg/src/opendap/hyrax_git/build/lib/libdap.25.dylib.dSYM/Contents/Resources/DWARF/libdap.25.dylib] does not match symbol owner 0x7fcecf506340 #1 0x105773f39 in libdap::Vector::val2buf(void*, bool) Vector.cc:1212 #2 0x10575d5e7 in libdap::Vector::m_duplicate(libdap::Vector const&) Vector.cc:116 #3 0x105761733 in libdap::Vector::Vector(libdap::Vector const&) Vector.cc:297 #4 0x1057af385 in libdap::Array::Array(libdap::Array const&) Array.cc:164 #5 0x10c63f8da in agg_util::ArrayAggregationBase::ArrayAggregationBase(agg_util::ArrayAggregationBase const&) ArrayAggregationBase.cc:56 #6 0x10c62ef84 in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(agg_util::ArrayAggregateOnOuterDimension const&) ArrayAggregateOnOuterDimension.cc:70 #7 0x10c62f35c in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(agg_util::ArrayAggregateOnOuterDimension const&) ArrayAggregateOnOuterDimension.cc:71 #8 0x10c62f89c in agg_util::ArrayAggregateOnOuterDimension::ptr_duplicate() ArrayAggregateOnOuterDimension.cc:85 #9 0x1056600fd in libdap::DDS::add_var(libdap::BaseType*) DDS.cc:607 #10 0x10c591de8 in ncml_module::AggregationElement::processAggVarJoinNewForArray(libdap::DDS&, libdap::Array const&, agg_util::Dimension const&, std::__1::vector, std::__1::allocator > > const&) AggregationElement.cc:867 #11 0x10c55cdb0 in ncml_module::AggregationElement::processJoinNewOnAggVar(libdap::DDS*, std::__1::basic_string, std::__1::allocator > const&, libdap::DDS const&) AggregationElement.cc:801 #12 0x10c5224d7 in ncml_module::AggregationElement::processJoinNew() AggregationElement.cc:420 #13 0x10c518320 in ncml_module::AggregationElement::handleEnd() AggregationElement.cc:217 #14 0x10c966b9f in ncml_module::NCMLParser::processEndNCMLElement(std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:1186 #15 0x10c96e35b in ncml_module::NCMLParser::onEndElementWithNamespace(std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:324 #16 0x10cad28c9 in ncmlSax2EndElementNs(void*, unsigned char const*, unsigned char const*, unsigned char const*) SaxParserWrapper.cc:242 #17 0x7fff597e1d8e in xmlParseEndTag2 (libxml2.2.dylib:x86_64+0x37d8e) #18 0x7fff597e0440 in xmlParseElement (libxml2.2.dylib:x86_64+0x36440) #19 0x7fff597e005a in xmlParseContent (libxml2.2.dylib:x86_64+0x3605a) #20 0x7fff597e03f1 in xmlParseElement (libxml2.2.dylib:x86_64+0x363f1) #21 0x7fff597e2b7a in xmlParseDocument (libxml2.2.dylib:x86_64+0x38b7a) #22 0x10cac39ae in ncml_module::SaxParserWrapper::parse(std::__1::basic_string, std::__1::allocator > const&) SaxParserWrapper.cc:338 #23 0x10c958d0b in ncml_module::NCMLParser::parseInto(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType, BESDapResponse*) NCMLParser.cc:185 #24 0x10c9da346 in ncml_module::NCMLRequestHandler::ncml_build_data(BESDataHandlerInterface&) NCMLRequestHandler.cc:297 #25 0x101432c8f in BESRequestHandlerList::execute_current(BESDataHandlerInterface&) BESRequestHandlerList.cc:273 #26 0x1014310a4 in BESRequestHandlerList::execute_each(BESDataHandlerInterface&) BESRequestHandlerList.cc:167 #27 0x10521288c in BESDataResponseHandler::execute(BESDataHandlerInterface&) BESDataResponseHandler.cc:148 #28 0x101848d5a in BESXMLInterface::execute_data_request_plan() BESXMLInterface.cc:285 #29 0x1012a6b8d in BESInterface::execute_request(std::__1::basic_string, std::__1::allocator > const&) BESInterface.cc:513 #30 0x1012108d8 in StandAloneClient::executeCommand(std::__1::basic_string, std::__1::allocator > const&, int) StandAloneClient.cc:237 #31 0x10120e3aa in StandAloneClient::executeCommands(std::__1::basic_ifstream >&, int) StandAloneClient.cc:349 #32 0x1011f3e6d in StandAloneApp::run() StandAloneApp.cc:251 #33 0x101516c24 in BESApp::main(int, char**) BESApp.cc:58 #34 0x1011f712e in main StandAloneApp.cc:345 #35 0x7fff59ad3014 in start (libdyld.dylib:x86_64+0x1014) 0x60200000be5c is located 0 bytes to the right of 12-byte region [0x60200000be50,0x60200000be5c) allocated by thread T0 here: #0 0x1019a1cb2 in wrap__Znam (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x62cb2) #1 0x10575eb3c in libdap::Vector::m_create_cardinal_data_buffer_for_type(unsigned int) Vector.cc:203 #2 0x105773c15 in libdap::Vector::val2buf(void*, bool) Vector.cc:1206 #3 0x10575d5e7 in libdap::Vector::m_duplicate(libdap::Vector const&) Vector.cc:116 #4 0x105761733 in libdap::Vector::Vector(libdap::Vector const&) Vector.cc:297 #5 0x1057af385 in libdap::Array::Array(libdap::Array const&) Array.cc:164 #6 0x10c63f116 in agg_util::ArrayAggregationBase::ArrayAggregationBase(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&) ArrayAggregationBase.cc:50 #7 0x10c62e7d2 in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&, agg_util::Dimension const&) ArrayAggregateOnOuterDimension.cc:59 #8 0x10c62ee34 in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&, agg_util::Dimension const&) ArrayAggregateOnOuterDimension.cc:61 #9 0x10c58f7ae in ncml_module::AggregationElement::processAggVarJoinNewForArray(libdap::DDS&, libdap::Array const&, agg_util::Dimension const&, std::__1::vector, std::__1::allocator > > const&) AggregationElement.cc:855 #10 0x10c55cdb0 in ncml_module::AggregationElement::processJoinNewOnAggVar(libdap::DDS*, std::__1::basic_string, std::__1::allocator > const&, libdap::DDS const&) AggregationElement.cc:801 #11 0x10c5224d7 in ncml_module::AggregationElement::processJoinNew() AggregationElement.cc:420 #12 0x10c518320 in ncml_module::AggregationElement::handleEnd() AggregationElement.cc:217 #13 0x10c966b9f in ncml_module::NCMLParser::processEndNCMLElement(std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:1186 #14 0x10c96e35b in ncml_module::NCMLParser::onEndElementWithNamespace(std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:324 #15 0x10cad28c9 in ncmlSax2EndElementNs(void*, unsigned char const*, unsigned char const*, unsigned char const*) SaxParserWrapper.cc:242 #16 0x7fff597e1d8e in xmlParseEndTag2 (libxml2.2.dylib:x86_64+0x37d8e) #17 0x7fff597e0440 in xmlParseElement (libxml2.2.dylib:x86_64+0x36440) #18 0x7fff597e005a in xmlParseContent (libxml2.2.dylib:x86_64+0x3605a) #19 0x7fff597e03f1 in xmlParseElement (libxml2.2.dylib:x86_64+0x363f1) #20 0x7fff597e2b7a in xmlParseDocument (libxml2.2.dylib:x86_64+0x38b7a) #21 0x10cac39ae in ncml_module::SaxParserWrapper::parse(std::__1::basic_string, std::__1::allocator > const&) SaxParserWrapper.cc:338 #22 0x10c958d0b in ncml_module::NCMLParser::parseInto(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType, BESDapResponse*) NCMLParser.cc:185 #23 0x10c9da346 in ncml_module::NCMLRequestHandler::ncml_build_data(BESDataHandlerInterface&) NCMLRequestHandler.cc:297 #24 0x101432c8f in BESRequestHandlerList::execute_current(BESDataHandlerInterface&) BESRequestHandlerList.cc:273 #25 0x1014310a4 in BESRequestHandlerList::execute_each(BESDataHandlerInterface&) BESRequestHandlerList.cc:167 #26 0x10521288c in BESDataResponseHandler::execute(BESDataHandlerInterface&) BESDataResponseHandler.cc:148 #27 0x101848d5a in BESXMLInterface::execute_data_request_plan() BESXMLInterface.cc:285 #28 0x1012a6b8d in BESInterface::execute_request(std::__1::basic_string, std::__1::allocator > const&) BESInterface.cc:513 #29 0x1012108d8 in StandAloneClient::executeCommand(std::__1::basic_string, std::__1::allocator > const&, int) StandAloneClient.cc:237 SUMMARY: AddressSanitizer: heap-buffer-overflow (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x4f3fd) in __asan_memcpy Shadow bytes around the buggy address: 0x1c0400001770: fa fa 00 02 fa fa 00 02 fa fa fd fa fa fa fd fd 0x1c0400001780: fa fa fd fa fa fa 00 fa fa fa 00 fa fa fa 00 fa 0x1c0400001790: fa fa fd fd fa fa 00 04 fa fa 00 04 fa fa 00 00 0x1c04000017a0: fa fa 00 fa fa fa 00 fa fa fa 00 fa fa fa fd fd 0x1c04000017b0: fa fa 00 04 fa fa 00 04 fa fa fd fa fa fa 00 00 =>0x1c04000017c0: fa fa 00 00 fa fa 00 fa fa fa 00[04]fa fa 00 04 0x1c04000017d0: fa fa 00 04 fa fa 00 00 fa fa fa fa fa fa fa fa 0x1c04000017e0: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c04000017f0: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c0400001800: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c0400001810: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa Shadow byte legend (one shadow byte represents 8 application bytes): Addressable: 00 Partially addressable: 01 02 03 04 05 06 07 Heap left redzone: fa Freed heap region: fd Stack left redzone: f1 Stack mid redzone: f2 Stack right redzone: f3 Stack after return: f5 Stack use after scope: f8 Global redzone: f9 Global init order: f6 Poisoned by user: f7 Container overflow: fc Array cookie: ac Intra object redzone: bb ASan internal: fe Left alloca redzone: ca Right alloca redzone: cb ==77269==ABORTING /Users/jimg/src/opendap/hyrax_git/bes/modules/ncml_module/tests/testsuite.dir/at-groups/432/test-source: line 44: 77269 Abort trap: 6 besstandalone -c $abs_builddir/bes.conf -i ./test.bescmd stdout: ./aggregations.at:99: exit code was 134, expected 0 432. aggregations.at:99: 432. Comparing dods response for agg/joinNew_with_explicit_map.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_with_explicit_map.ncml (aggregations.at:99): FAILED (aggregations.at:99) # -*- compilation -*- 433. aggregations.at:100: testing Comparing dods response for agg/joinNew_with_explicit_map.ncml to getdap (ascii) baseline ${abs_srcdir}/baselines/agg/joinNew_with_explicit_map.ncml ... ./aggregations.at:100: besstandalone -c $abs_builddir/bes.conf -i ./test.bescmd stderr: Width: 12 Name: V Width: 12 Name: V Width: 24 Name: V ================================================================= ==77319==ERROR: AddressSanitizer: heap-buffer-overflow on address 0x60200000be5c at pc 0x0001049bd3fe bp 0x7ffeeb9da9b0 sp 0x7ffeeb9da160 READ of size 24 at 0x60200000be5c thread T0 #0 0x1049bd3fd in __asan_memcpy (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x4f3fd) Provided dSYM: [/Users/jimg/src/opendap/hyrax_git/build/lib/libdap.25.dylib.dSYM/Contents/Resources/DWARF/libdap.25.dylib] does not match symbol owner 0x7f9597504ec0 #1 0x108593f39 in libdap::Vector::val2buf(void*, bool) Vector.cc:1212 #2 0x10857d5e7 in libdap::Vector::m_duplicate(libdap::Vector const&) Vector.cc:116 #3 0x108581733 in libdap::Vector::Vector(libdap::Vector const&) Vector.cc:297 #4 0x1085cf385 in libdap::Array::Array(libdap::Array const&) Array.cc:164 #5 0x10fe868da in agg_util::ArrayAggregationBase::ArrayAggregationBase(agg_util::ArrayAggregationBase const&) ArrayAggregationBase.cc:56 #6 0x10fe75f84 in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(agg_util::ArrayAggregateOnOuterDimension const&) ArrayAggregateOnOuterDimension.cc:70 #7 0x10fe7635c in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(agg_util::ArrayAggregateOnOuterDimension const&) ArrayAggregateOnOuterDimension.cc:71 #8 0x10fe7689c in agg_util::ArrayAggregateOnOuterDimension::ptr_duplicate() ArrayAggregateOnOuterDimension.cc:85 #9 0x1084800fd in libdap::DDS::add_var(libdap::BaseType*) DDS.cc:607 #10 0x10fdd8de8 in ncml_module::AggregationElement::processAggVarJoinNewForArray(libdap::DDS&, libdap::Array const&, agg_util::Dimension const&, std::__1::vector, std::__1::allocator > > const&) AggregationElement.cc:867 #11 0x10fda3db0 in ncml_module::AggregationElement::processJoinNewOnAggVar(libdap::DDS*, std::__1::basic_string, std::__1::allocator > const&, libdap::DDS const&) AggregationElement.cc:801 #12 0x10fd694d7 in ncml_module::AggregationElement::processJoinNew() AggregationElement.cc:420 #13 0x10fd5f320 in ncml_module::AggregationElement::handleEnd() AggregationElement.cc:217 #14 0x1101adb9f in ncml_module::NCMLParser::processEndNCMLElement(std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:1186 #15 0x1101b535b in ncml_module::NCMLParser::onEndElementWithNamespace(std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:324 #16 0x1103198c9 in ncmlSax2EndElementNs(void*, unsigned char const*, unsigned char const*, unsigned char const*) SaxParserWrapper.cc:242 #17 0x7fff597e1d8e in xmlParseEndTag2 (libxml2.2.dylib:x86_64+0x37d8e) #18 0x7fff597e0440 in xmlParseElement (libxml2.2.dylib:x86_64+0x36440) #19 0x7fff597e005a in xmlParseContent (libxml2.2.dylib:x86_64+0x3605a) #20 0x7fff597e03f1 in xmlParseElement (libxml2.2.dylib:x86_64+0x363f1) #21 0x7fff597e2b7a in xmlParseDocument (libxml2.2.dylib:x86_64+0x38b7a) #22 0x11030a9ae in ncml_module::SaxParserWrapper::parse(std::__1::basic_string, std::__1::allocator > const&) SaxParserWrapper.cc:338 #23 0x11019fd0b in ncml_module::NCMLParser::parseInto(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType, BESDapResponse*) NCMLParser.cc:185 #24 0x110221346 in ncml_module::NCMLRequestHandler::ncml_build_data(BESDataHandlerInterface&) NCMLRequestHandler.cc:297 #25 0x10445ec8f in BESRequestHandlerList::execute_current(BESDataHandlerInterface&) BESRequestHandlerList.cc:273 #26 0x10445d0a4 in BESRequestHandlerList::execute_each(BESDataHandlerInterface&) BESRequestHandlerList.cc:167 #27 0x10803288c in BESDataResponseHandler::execute(BESDataHandlerInterface&) BESDataResponseHandler.cc:148 #28 0x104879d5a in BESXMLInterface::execute_data_request_plan() BESXMLInterface.cc:285 #29 0x1042d2b8d in BESInterface::execute_request(std::__1::basic_string, std::__1::allocator > const&) BESInterface.cc:513 #30 0x1042358d8 in StandAloneClient::executeCommand(std::__1::basic_string, std::__1::allocator > const&, int) StandAloneClient.cc:237 #31 0x1042333aa in StandAloneClient::executeCommands(std::__1::basic_ifstream >&, int) StandAloneClient.cc:349 #32 0x104218e6d in StandAloneApp::run() StandAloneApp.cc:251 #33 0x104542c24 in BESApp::main(int, char**) BESApp.cc:58 #34 0x10421c12e in main StandAloneApp.cc:345 #35 0x7fff59ad3014 in start (libdyld.dylib:x86_64+0x1014) 0x60200000be5c is located 0 bytes to the right of 12-byte region [0x60200000be50,0x60200000be5c) allocated by thread T0 here: #0 0x1049d0cb2 in wrap__Znam (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x62cb2) #1 0x10857eb3c in libdap::Vector::m_create_cardinal_data_buffer_for_type(unsigned int) Vector.cc:203 #2 0x108593c15 in libdap::Vector::val2buf(void*, bool) Vector.cc:1206 #3 0x10857d5e7 in libdap::Vector::m_duplicate(libdap::Vector const&) Vector.cc:116 #4 0x108581733 in libdap::Vector::Vector(libdap::Vector const&) Vector.cc:297 #5 0x1085cf385 in libdap::Array::Array(libdap::Array const&) Array.cc:164 #6 0x10fe86116 in agg_util::ArrayAggregationBase::ArrayAggregationBase(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&) ArrayAggregationBase.cc:50 #7 0x10fe757d2 in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&, agg_util::Dimension const&) ArrayAggregateOnOuterDimension.cc:59 #8 0x10fe75e34 in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&, agg_util::Dimension const&) ArrayAggregateOnOuterDimension.cc:61 #9 0x10fdd67ae in ncml_module::AggregationElement::processAggVarJoinNewForArray(libdap::DDS&, libdap::Array const&, agg_util::Dimension const&, std::__1::vector, std::__1::allocator > > const&) AggregationElement.cc:855 #10 0x10fda3db0 in ncml_module::AggregationElement::processJoinNewOnAggVar(libdap::DDS*, std::__1::basic_string, std::__1::allocator > const&, libdap::DDS const&) AggregationElement.cc:801 #11 0x10fd694d7 in ncml_module::AggregationElement::processJoinNew() AggregationElement.cc:420 #12 0x10fd5f320 in ncml_module::AggregationElement::handleEnd() AggregationElement.cc:217 #13 0x1101adb9f in ncml_module::NCMLParser::processEndNCMLElement(std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:1186 #14 0x1101b535b in ncml_module::NCMLParser::onEndElementWithNamespace(std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:324 #15 0x1103198c9 in ncmlSax2EndElementNs(void*, unsigned char const*, unsigned char const*, unsigned char const*) SaxParserWrapper.cc:242 #16 0x7fff597e1d8e in xmlParseEndTag2 (libxml2.2.dylib:x86_64+0x37d8e) #17 0x7fff597e0440 in xmlParseElement (libxml2.2.dylib:x86_64+0x36440) #18 0x7fff597e005a in xmlParseContent (libxml2.2.dylib:x86_64+0x3605a) #19 0x7fff597e03f1 in xmlParseElement (libxml2.2.dylib:x86_64+0x363f1) #20 0x7fff597e2b7a in xmlParseDocument (libxml2.2.dylib:x86_64+0x38b7a) #21 0x11030a9ae in ncml_module::SaxParserWrapper::parse(std::__1::basic_string, std::__1::allocator > const&) SaxParserWrapper.cc:338 #22 0x11019fd0b in ncml_module::NCMLParser::parseInto(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType, BESDapResponse*) NCMLParser.cc:185 #23 0x110221346 in ncml_module::NCMLRequestHandler::ncml_build_data(BESDataHandlerInterface&) NCMLRequestHandler.cc:297 #24 0x10445ec8f in BESRequestHandlerList::execute_current(BESDataHandlerInterface&) BESRequestHandlerList.cc:273 #25 0x10445d0a4 in BESRequestHandlerList::execute_each(BESDataHandlerInterface&) BESRequestHandlerList.cc:167 #26 0x10803288c in BESDataResponseHandler::execute(BESDataHandlerInterface&) BESDataResponseHandler.cc:148 #27 0x104879d5a in BESXMLInterface::execute_data_request_plan() BESXMLInterface.cc:285 #28 0x1042d2b8d in BESInterface::execute_request(std::__1::basic_string, std::__1::allocator > const&) BESInterface.cc:513 #29 0x1042358d8 in StandAloneClient::executeCommand(std::__1::basic_string, std::__1::allocator > const&, int) StandAloneClient.cc:237 SUMMARY: AddressSanitizer: heap-buffer-overflow (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x4f3fd) in __asan_memcpy Shadow bytes around the buggy address: 0x1c0400001770: fa fa 00 02 fa fa 00 02 fa fa fd fa fa fa fd fd 0x1c0400001780: fa fa fd fa fa fa 00 fa fa fa 00 fa fa fa 00 fa 0x1c0400001790: fa fa fd fd fa fa 00 04 fa fa 00 04 fa fa 00 00 0x1c04000017a0: fa fa 00 fa fa fa 00 fa fa fa 00 fa fa fa fd fd 0x1c04000017b0: fa fa 00 04 fa fa 00 04 fa fa fd fa fa fa 00 00 =>0x1c04000017c0: fa fa 00 00 fa fa 00 fa fa fa 00[04]fa fa 00 04 0x1c04000017d0: fa fa 00 04 fa fa 00 00 fa fa fa fa fa fa fa fa 0x1c04000017e0: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c04000017f0: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c0400001800: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c0400001810: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa Shadow byte legend (one shadow byte represents 8 application bytes): Addressable: 00 Partially addressable: 01 02 03 04 05 06 07 Heap left redzone: fa Freed heap region: fd Stack left redzone: f1 Stack mid redzone: f2 Stack right redzone: f3 Stack after return: f5 Stack use after scope: f8 Global redzone: f9 Global init order: f6 Poisoned by user: f7 Container overflow: fc Array cookie: ac Intra object redzone: bb ASan internal: fe Left alloca redzone: ca Right alloca redzone: cb ==77319==ABORTING /Users/jimg/src/opendap/hyrax_git/bes/modules/ncml_module/tests/testsuite.dir/at-groups/433/test-source: line 55: 77319 Abort trap: 6 besstandalone -c $abs_builddir/bes.conf -i ./test.bescmd stdout: ./aggregations.at:100: exit code was 134, expected 0 433. aggregations.at:100: 433. Comparing dods response for agg/joinNew_with_explicit_map.ncml to getdap (ascii) baseline ${abs_srcdir}/baselines/agg/joinNew_with_explicit_map.ncml (aggregations.at:100): FAILED (aggregations.at:100) # -*- compilation -*- 434. aggregations.at:105: testing Comparing das response for agg/joinNew_explicit_autogen.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_explicit_autogen.ncml ... ./aggregations.at:105: besstandalone -c $abs_builddir/bes.conf -i ./test.bescmd stderr: Width: 12 Name: V Width: 12 Name: V Width: 24 Name: V ================================================================= ==77325==ERROR: AddressSanitizer: heap-buffer-overflow on address 0x60200000be5c at pc 0x00011040e3fe bp 0x7ffedff85810 sp 0x7ffedff84fc0 READ of size 24 at 0x60200000be5c thread T0 #0 0x11040e3fd in __asan_memcpy (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x4f3fd) Provided dSYM: [/Users/jimg/src/opendap/hyrax_git/build/lib/libdap.25.dylib.dSYM/Contents/Resources/DWARF/libdap.25.dylib] does not match symbol owner 0x7f9c2ee05bc0 #1 0x113fdbf39 in libdap::Vector::val2buf(void*, bool) Vector.cc:1212 #2 0x113fc55e7 in libdap::Vector::m_duplicate(libdap::Vector const&) Vector.cc:116 #3 0x113fc9733 in libdap::Vector::Vector(libdap::Vector const&) Vector.cc:297 #4 0x114017385 in libdap::Array::Array(libdap::Array const&) Array.cc:164 #5 0x11b2148da in agg_util::ArrayAggregationBase::ArrayAggregationBase(agg_util::ArrayAggregationBase const&) ArrayAggregationBase.cc:56 #6 0x11b203f84 in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(agg_util::ArrayAggregateOnOuterDimension const&) ArrayAggregateOnOuterDimension.cc:70 #7 0x11b20435c in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(agg_util::ArrayAggregateOnOuterDimension const&) ArrayAggregateOnOuterDimension.cc:71 #8 0x11b20489c in agg_util::ArrayAggregateOnOuterDimension::ptr_duplicate() ArrayAggregateOnOuterDimension.cc:85 #9 0x113ec80fd in libdap::DDS::add_var(libdap::BaseType*) DDS.cc:607 #10 0x11b166de8 in ncml_module::AggregationElement::processAggVarJoinNewForArray(libdap::DDS&, libdap::Array const&, agg_util::Dimension const&, std::__1::vector, std::__1::allocator > > const&) AggregationElement.cc:867 #11 0x11b131db0 in ncml_module::AggregationElement::processJoinNewOnAggVar(libdap::DDS*, std::__1::basic_string, std::__1::allocator > const&, libdap::DDS const&) AggregationElement.cc:801 #12 0x11b0f74d7 in ncml_module::AggregationElement::processJoinNew() AggregationElement.cc:420 #13 0x11b0ed320 in ncml_module::AggregationElement::handleEnd() AggregationElement.cc:217 #14 0x11b53bb9f in ncml_module::NCMLParser::processEndNCMLElement(std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:1186 #15 0x11b54335b in ncml_module::NCMLParser::onEndElementWithNamespace(std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:324 #16 0x11b6a78c9 in ncmlSax2EndElementNs(void*, unsigned char const*, unsigned char const*, unsigned char const*) SaxParserWrapper.cc:242 #17 0x7fff597e1d8e in xmlParseEndTag2 (libxml2.2.dylib:x86_64+0x37d8e) #18 0x7fff597e0440 in xmlParseElement (libxml2.2.dylib:x86_64+0x36440) #19 0x7fff597e005a in xmlParseContent (libxml2.2.dylib:x86_64+0x3605a) #20 0x7fff597e03f1 in xmlParseElement (libxml2.2.dylib:x86_64+0x363f1) #21 0x7fff597e2b7a in xmlParseDocument (libxml2.2.dylib:x86_64+0x38b7a) #22 0x11b6989ae in ncml_module::SaxParserWrapper::parse(std::__1::basic_string, std::__1::allocator > const&) SaxParserWrapper.cc:338 #23 0x11b52dd0b in ncml_module::NCMLParser::parseInto(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType, BESDapResponse*) NCMLParser.cc:185 #24 0x11b5271e7 in ncml_module::NCMLParser::parse(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType) NCMLParser.cc:155 #25 0x11b5a1841 in ncml_module::NCMLRequestHandler::ncml_build_das(BESDataHandlerInterface&) NCMLRequestHandler.cc:172 #26 0x10feb2c8f in BESRequestHandlerList::execute_current(BESDataHandlerInterface&) BESRequestHandlerList.cc:273 #27 0x10feb10a4 in BESRequestHandlerList::execute_each(BESDataHandlerInterface&) BESRequestHandlerList.cc:167 #28 0x113a21ff0 in BESDASResponseHandler::execute(BESDataHandlerInterface&) BESDASResponseHandler.cc:95 #29 0x1102c9d5a in BESXMLInterface::execute_data_request_plan() BESXMLInterface.cc:285 #30 0x10fd26b8d in BESInterface::execute_request(std::__1::basic_string, std::__1::allocator > const&) BESInterface.cc:513 #31 0x10fc8a8d8 in StandAloneClient::executeCommand(std::__1::basic_string, std::__1::allocator > const&, int) StandAloneClient.cc:237 #32 0x10fc883aa in StandAloneClient::executeCommands(std::__1::basic_ifstream >&, int) StandAloneClient.cc:349 #33 0x10fc6de6d in StandAloneApp::run() StandAloneApp.cc:251 #34 0x10ff96c24 in BESApp::main(int, char**) BESApp.cc:58 #35 0x10fc7112e in main StandAloneApp.cc:345 #36 0x7fff59ad3014 in start (libdyld.dylib:x86_64+0x1014) 0x60200000be5c is located 0 bytes to the right of 12-byte region [0x60200000be50,0x60200000be5c) allocated by thread T0 here: #0 0x110421cb2 in wrap__Znam (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x62cb2) #1 0x113fc6b3c in libdap::Vector::m_create_cardinal_data_buffer_for_type(unsigned int) Vector.cc:203 #2 0x113fdbc15 in libdap::Vector::val2buf(void*, bool) Vector.cc:1206 #3 0x113fc55e7 in libdap::Vector::m_duplicate(libdap::Vector const&) Vector.cc:116 #4 0x113fc9733 in libdap::Vector::Vector(libdap::Vector const&) Vector.cc:297 #5 0x114017385 in libdap::Array::Array(libdap::Array const&) Array.cc:164 #6 0x11b214116 in agg_util::ArrayAggregationBase::ArrayAggregationBase(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&) ArrayAggregationBase.cc:50 #7 0x11b2037d2 in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&, agg_util::Dimension const&) ArrayAggregateOnOuterDimension.cc:59 #8 0x11b203e34 in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&, agg_util::Dimension const&) ArrayAggregateOnOuterDimension.cc:61 #9 0x11b1647ae in ncml_module::AggregationElement::processAggVarJoinNewForArray(libdap::DDS&, libdap::Array const&, agg_util::Dimension const&, std::__1::vector, std::__1::allocator > > const&) AggregationElement.cc:855 #10 0x11b131db0 in ncml_module::AggregationElement::processJoinNewOnAggVar(libdap::DDS*, std::__1::basic_string, std::__1::allocator > const&, libdap::DDS const&) AggregationElement.cc:801 #11 0x11b0f74d7 in ncml_module::AggregationElement::processJoinNew() AggregationElement.cc:420 #12 0x11b0ed320 in ncml_module::AggregationElement::handleEnd() AggregationElement.cc:217 #13 0x11b53bb9f in ncml_module::NCMLParser::processEndNCMLElement(std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:1186 #14 0x11b54335b in ncml_module::NCMLParser::onEndElementWithNamespace(std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:324 #15 0x11b6a78c9 in ncmlSax2EndElementNs(void*, unsigned char const*, unsigned char const*, unsigned char const*) SaxParserWrapper.cc:242 #16 0x7fff597e1d8e in xmlParseEndTag2 (libxml2.2.dylib:x86_64+0x37d8e) #17 0x7fff597e0440 in xmlParseElement (libxml2.2.dylib:x86_64+0x36440) #18 0x7fff597e005a in xmlParseContent (libxml2.2.dylib:x86_64+0x3605a) #19 0x7fff597e03f1 in xmlParseElement (libxml2.2.dylib:x86_64+0x363f1) #20 0x7fff597e2b7a in xmlParseDocument (libxml2.2.dylib:x86_64+0x38b7a) #21 0x11b6989ae in ncml_module::SaxParserWrapper::parse(std::__1::basic_string, std::__1::allocator > const&) SaxParserWrapper.cc:338 #22 0x11b52dd0b in ncml_module::NCMLParser::parseInto(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType, BESDapResponse*) NCMLParser.cc:185 #23 0x11b5271e7 in ncml_module::NCMLParser::parse(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType) NCMLParser.cc:155 #24 0x11b5a1841 in ncml_module::NCMLRequestHandler::ncml_build_das(BESDataHandlerInterface&) NCMLRequestHandler.cc:172 #25 0x10feb2c8f in BESRequestHandlerList::execute_current(BESDataHandlerInterface&) BESRequestHandlerList.cc:273 #26 0x10feb10a4 in BESRequestHandlerList::execute_each(BESDataHandlerInterface&) BESRequestHandlerList.cc:167 #27 0x113a21ff0 in BESDASResponseHandler::execute(BESDataHandlerInterface&) BESDASResponseHandler.cc:95 #28 0x1102c9d5a in BESXMLInterface::execute_data_request_plan() BESXMLInterface.cc:285 #29 0x10fd26b8d in BESInterface::execute_request(std::__1::basic_string, std::__1::allocator > const&) BESInterface.cc:513 SUMMARY: AddressSanitizer: heap-buffer-overflow (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x4f3fd) in __asan_memcpy Shadow bytes around the buggy address: 0x1c0400001770: fa fa 00 02 fa fa 00 02 fa fa fd fa fa fa fd fd 0x1c0400001780: fa fa fd fa fa fa 00 fa fa fa 00 fa fa fa 00 fa 0x1c0400001790: fa fa fd fd fa fa 00 04 fa fa 00 04 fa fa 00 00 0x1c04000017a0: fa fa 00 fa fa fa 00 fa fa fa 00 fa fa fa fd fd 0x1c04000017b0: fa fa 00 04 fa fa 00 04 fa fa fd fa fa fa 00 00 =>0x1c04000017c0: fa fa 00 00 fa fa 00 fa fa fa 00[04]fa fa 00 04 0x1c04000017d0: fa fa 00 04 fa fa 00 00 fa fa fa fa fa fa fa fa 0x1c04000017e0: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c04000017f0: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c0400001800: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c0400001810: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa Shadow byte legend (one shadow byte represents 8 application bytes): Addressable: 00 Partially addressable: 01 02 03 04 05 06 07 Heap left redzone: fa Freed heap region: fd Stack left redzone: f1 Stack mid redzone: f2 Stack right redzone: f3 Stack after return: f5 Stack use after scope: f8 Global redzone: f9 Global init order: f6 Poisoned by user: f7 Container overflow: fc Array cookie: ac Intra object redzone: bb ASan internal: fe Left alloca redzone: ca Right alloca redzone: cb ==77325==ABORTING /Users/jimg/src/opendap/hyrax_git/bes/modules/ncml_module/tests/testsuite.dir/at-groups/434/test-source: line 44: 77325 Abort trap: 6 besstandalone -c $abs_builddir/bes.conf -i ./test.bescmd stdout: ./aggregations.at:105: exit code was 134, expected 0 434. aggregations.at:105: 434. Comparing das response for agg/joinNew_explicit_autogen.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_explicit_autogen.ncml (aggregations.at:105): FAILED (aggregations.at:105) # -*- compilation -*- 435. aggregations.at:105: testing Comparing dds response for agg/joinNew_explicit_autogen.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_explicit_autogen.ncml ... ./aggregations.at:105: besstandalone -c $abs_builddir/bes.conf -i ./test.bescmd stderr: Width: 12 Name: V Width: 12 Name: V Width: 24 Name: V ================================================================= ==77323==ERROR: AddressSanitizer: heap-buffer-overflow on address 0x60200000be3c at pc 0x000101af43fe bp 0x7ffeee89cb30 sp 0x7ffeee89c2e0 READ of size 24 at 0x60200000be3c thread T0 #0 0x101af43fd in __asan_memcpy (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x4f3fd) Provided dSYM: [/Users/jimg/src/opendap/hyrax_git/build/lib/libdap.25.dylib.dSYM/Contents/Resources/DWARF/libdap.25.dylib] does not match symbol owner 0x7ff3cea05960 #1 0x1056dbf39 in libdap::Vector::val2buf(void*, bool) Vector.cc:1212 #2 0x1056c55e7 in libdap::Vector::m_duplicate(libdap::Vector const&) Vector.cc:116 #3 0x1056c9733 in libdap::Vector::Vector(libdap::Vector const&) Vector.cc:297 #4 0x105717385 in libdap::Array::Array(libdap::Array const&) Array.cc:164 #5 0x10c79c8da in agg_util::ArrayAggregationBase::ArrayAggregationBase(agg_util::ArrayAggregationBase const&) ArrayAggregationBase.cc:56 #6 0x10c78bf84 in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(agg_util::ArrayAggregateOnOuterDimension const&) ArrayAggregateOnOuterDimension.cc:70 #7 0x10c78c35c in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(agg_util::ArrayAggregateOnOuterDimension const&) ArrayAggregateOnOuterDimension.cc:71 #8 0x10c78c89c in agg_util::ArrayAggregateOnOuterDimension::ptr_duplicate() ArrayAggregateOnOuterDimension.cc:85 #9 0x1055c80fd in libdap::DDS::add_var(libdap::BaseType*) DDS.cc:607 #10 0x10c6eede8 in ncml_module::AggregationElement::processAggVarJoinNewForArray(libdap::DDS&, libdap::Array const&, agg_util::Dimension const&, std::__1::vector, std::__1::allocator > > const&) AggregationElement.cc:867 #11 0x10c6b9db0 in ncml_module::AggregationElement::processJoinNewOnAggVar(libdap::DDS*, std::__1::basic_string, std::__1::allocator > const&, libdap::DDS const&) AggregationElement.cc:801 #12 0x10c67f4d7 in ncml_module::AggregationElement::processJoinNew() AggregationElement.cc:420 #13 0x10c675320 in ncml_module::AggregationElement::handleEnd() AggregationElement.cc:217 #14 0x10cac3b9f in ncml_module::NCMLParser::processEndNCMLElement(std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:1186 #15 0x10cacb35b in ncml_module::NCMLParser::onEndElementWithNamespace(std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:324 #16 0x10cc2f8c9 in ncmlSax2EndElementNs(void*, unsigned char const*, unsigned char const*, unsigned char const*) SaxParserWrapper.cc:242 #17 0x7fff597e1d8e in xmlParseEndTag2 (libxml2.2.dylib:x86_64+0x37d8e) #18 0x7fff597e0440 in xmlParseElement (libxml2.2.dylib:x86_64+0x36440) #19 0x7fff597e005a in xmlParseContent (libxml2.2.dylib:x86_64+0x3605a) #20 0x7fff597e03f1 in xmlParseElement (libxml2.2.dylib:x86_64+0x363f1) #21 0x7fff597e2b7a in xmlParseDocument (libxml2.2.dylib:x86_64+0x38b7a) #22 0x10cc209ae in ncml_module::SaxParserWrapper::parse(std::__1::basic_string, std::__1::allocator > const&) SaxParserWrapper.cc:338 #23 0x10cab5d0b in ncml_module::NCMLParser::parseInto(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType, BESDapResponse*) NCMLParser.cc:185 #24 0x10cb31aae in ncml_module::NCMLRequestHandler::ncml_build_dds(BESDataHandlerInterface&) NCMLRequestHandler.cc:260 #25 0x10159ac8f in BESRequestHandlerList::execute_current(BESDataHandlerInterface&) BESRequestHandlerList.cc:273 #26 0x1015990a4 in BESRequestHandlerList::execute_each(BESDataHandlerInterface&) BESRequestHandlerList.cc:167 #27 0x105128048 in BESDDSResponseHandler::execute(BESDataHandlerInterface&) BESDDSResponseHandler.cc:107 #28 0x1019b0d5a in BESXMLInterface::execute_data_request_plan() BESXMLInterface.cc:285 #29 0x10140eb8d in BESInterface::execute_request(std::__1::basic_string, std::__1::allocator > const&) BESInterface.cc:513 #30 0x1013738d8 in StandAloneClient::executeCommand(std::__1::basic_string, std::__1::allocator > const&, int) StandAloneClient.cc:237 #31 0x1013713aa in StandAloneClient::executeCommands(std::__1::basic_ifstream >&, int) StandAloneClient.cc:349 #32 0x101356e6d in StandAloneApp::run() StandAloneApp.cc:251 #33 0x10167ec24 in BESApp::main(int, char**) BESApp.cc:58 #34 0x10135a12e in main StandAloneApp.cc:345 #35 0x7fff59ad3014 in start (libdyld.dylib:x86_64+0x1014) 0x60200000be3c is located 0 bytes to the right of 12-byte region [0x60200000be30,0x60200000be3c) allocated by thread T0 here: #0 0x101b07cb2 in wrap__Znam (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x62cb2) #1 0x1056c6b3c in libdap::Vector::m_create_cardinal_data_buffer_for_type(unsigned int) Vector.cc:203 #2 0x1056dbc15 in libdap::Vector::val2buf(void*, bool) Vector.cc:1206 #3 0x1056c55e7 in libdap::Vector::m_duplicate(libdap::Vector const&) Vector.cc:116 #4 0x1056c9733 in libdap::Vector::Vector(libdap::Vector const&) Vector.cc:297 #5 0x105717385 in libdap::Array::Array(libdap::Array const&) Array.cc:164 #6 0x10c79c116 in agg_util::ArrayAggregationBase::ArrayAggregationBase(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&) ArrayAggregationBase.cc:50 #7 0x10c78b7d2 in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&, agg_util::Dimension const&) ArrayAggregateOnOuterDimension.cc:59 #8 0x10c78be34 in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&, agg_util::Dimension const&) ArrayAggregateOnOuterDimension.cc:61 #9 0x10c6ec7ae in ncml_module::AggregationElement::processAggVarJoinNewForArray(libdap::DDS&, libdap::Array const&, agg_util::Dimension const&, std::__1::vector, std::__1::allocator > > const&) AggregationElement.cc:855 #10 0x10c6b9db0 in ncml_module::AggregationElement::processJoinNewOnAggVar(libdap::DDS*, std::__1::basic_string, std::__1::allocator > const&, libdap::DDS const&) AggregationElement.cc:801 #11 0x10c67f4d7 in ncml_module::AggregationElement::processJoinNew() AggregationElement.cc:420 #12 0x10c675320 in ncml_module::AggregationElement::handleEnd() AggregationElement.cc:217 #13 0x10cac3b9f in ncml_module::NCMLParser::processEndNCMLElement(std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:1186 #14 0x10cacb35b in ncml_module::NCMLParser::onEndElementWithNamespace(std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:324 #15 0x10cc2f8c9 in ncmlSax2EndElementNs(void*, unsigned char const*, unsigned char const*, unsigned char const*) SaxParserWrapper.cc:242 #16 0x7fff597e1d8e in xmlParseEndTag2 (libxml2.2.dylib:x86_64+0x37d8e) #17 0x7fff597e0440 in xmlParseElement (libxml2.2.dylib:x86_64+0x36440) #18 0x7fff597e005a in xmlParseContent (libxml2.2.dylib:x86_64+0x3605a) #19 0x7fff597e03f1 in xmlParseElement (libxml2.2.dylib:x86_64+0x363f1) #20 0x7fff597e2b7a in xmlParseDocument (libxml2.2.dylib:x86_64+0x38b7a) #21 0x10cc209ae in ncml_module::SaxParserWrapper::parse(std::__1::basic_string, std::__1::allocator > const&) SaxParserWrapper.cc:338 #22 0x10cab5d0b in ncml_module::NCMLParser::parseInto(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType, BESDapResponse*) NCMLParser.cc:185 #23 0x10cb31aae in ncml_module::NCMLRequestHandler::ncml_build_dds(BESDataHandlerInterface&) NCMLRequestHandler.cc:260 #24 0x10159ac8f in BESRequestHandlerList::execute_current(BESDataHandlerInterface&) BESRequestHandlerList.cc:273 #25 0x1015990a4 in BESRequestHandlerList::execute_each(BESDataHandlerInterface&) BESRequestHandlerList.cc:167 #26 0x105128048 in BESDDSResponseHandler::execute(BESDataHandlerInterface&) BESDDSResponseHandler.cc:107 #27 0x1019b0d5a in BESXMLInterface::execute_data_request_plan() BESXMLInterface.cc:285 #28 0x10140eb8d in BESInterface::execute_request(std::__1::basic_string, std::__1::allocator > const&) BESInterface.cc:513 #29 0x1013738d8 in StandAloneClient::executeCommand(std::__1::basic_string, std::__1::allocator > const&, int) StandAloneClient.cc:237 SUMMARY: AddressSanitizer: heap-buffer-overflow (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x4f3fd) in __asan_memcpy Shadow bytes around the buggy address: 0x1c0400001770: fa fa 00 02 fa fa fd fa fa fa fd fd fa fa fd fa 0x1c0400001780: fa fa 00 fa fa fa 00 fa fa fa 00 fa fa fa fd fd 0x1c0400001790: fa fa 00 04 fa fa 00 04 fa fa 00 00 fa fa 00 fa 0x1c04000017a0: fa fa 00 fa fa fa 00 fa fa fa fd fd fa fa 00 04 0x1c04000017b0: fa fa 00 04 fa fa fd fa fa fa 00 00 fa fa 00 00 =>0x1c04000017c0: fa fa 00 fa fa fa 00[04]fa fa 00 04 fa fa 00 04 0x1c04000017d0: fa fa 00 00 fa fa fa fa fa fa fa fa fa fa fa fa 0x1c04000017e0: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c04000017f0: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c0400001800: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c0400001810: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa Shadow byte legend (one shadow byte represents 8 application bytes): Addressable: 00 Partially addressable: 01 02 03 04 05 06 07 Heap left redzone: fa Freed heap region: fd Stack left redzone: f1 Stack mid redzone: f2 Stack right redzone: f3 Stack after return: f5 Stack use after scope: f8 Global redzone: f9 Global init order: f6 Poisoned by user: f7 Container overflow: fc Array cookie: ac Intra object redzone: bb ASan internal: fe Left alloca redzone: ca Right alloca redzone: cb ==77323==ABORTING /Users/jimg/src/opendap/hyrax_git/bes/modules/ncml_module/tests/testsuite.dir/at-groups/435/test-source: line 44: 77323 Abort trap: 6 besstandalone -c $abs_builddir/bes.conf -i ./test.bescmd stdout: ./aggregations.at:105: exit code was 134, expected 0 435. aggregations.at:105: 435. Comparing dds response for agg/joinNew_explicit_autogen.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_explicit_autogen.ncml (aggregations.at:105): FAILED (aggregations.at:105) # -*- compilation -*- 436. aggregations.at:105: testing Comparing ddx response for agg/joinNew_explicit_autogen.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_explicit_autogen.ncml ... ./aggregations.at:105: besstandalone -c $abs_builddir/bes.conf -i ./test.bescmd stderr: Width: 12 Name: V Width: 12 Name: V Width: 24 Name: V ================================================================= ==77331==ERROR: AddressSanitizer: heap-buffer-overflow on address 0x60200000be3c at pc 0x00010d25d3fe bp 0x7ffee31366d0 sp 0x7ffee3135e80 READ of size 24 at 0x60200000be3c thread T0 #0 0x10d25d3fd in __asan_memcpy (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x4f3fd) Provided dSYM: [/Users/jimg/src/opendap/hyrax_git/build/lib/libdap.25.dylib.dSYM/Contents/Resources/DWARF/libdap.25.dylib] does not match symbol owner 0x7f84d2504b00 #1 0x110e93f39 in libdap::Vector::val2buf(void*, bool) Vector.cc:1212 #2 0x110e7d5e7 in libdap::Vector::m_duplicate(libdap::Vector const&) Vector.cc:116 #3 0x110e81733 in libdap::Vector::Vector(libdap::Vector const&) Vector.cc:297 #4 0x110ecf385 in libdap::Array::Array(libdap::Array const&) Array.cc:164 #5 0x117f018da in agg_util::ArrayAggregationBase::ArrayAggregationBase(agg_util::ArrayAggregationBase const&) ArrayAggregationBase.cc:56 #6 0x117ef0f84 in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(agg_util::ArrayAggregateOnOuterDimension const&) ArrayAggregateOnOuterDimension.cc:70 #7 0x117ef135c in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(agg_util::ArrayAggregateOnOuterDimension const&) ArrayAggregateOnOuterDimension.cc:71 #8 0x117ef189c in agg_util::ArrayAggregateOnOuterDimension::ptr_duplicate() ArrayAggregateOnOuterDimension.cc:85 #9 0x110d800fd in libdap::DDS::add_var(libdap::BaseType*) DDS.cc:607 #10 0x117e53de8 in ncml_module::AggregationElement::processAggVarJoinNewForArray(libdap::DDS&, libdap::Array const&, agg_util::Dimension const&, std::__1::vector, std::__1::allocator > > const&) AggregationElement.cc:867 #11 0x117e1edb0 in ncml_module::AggregationElement::processJoinNewOnAggVar(libdap::DDS*, std::__1::basic_string, std::__1::allocator > const&, libdap::DDS const&) AggregationElement.cc:801 #12 0x117de44d7 in ncml_module::AggregationElement::processJoinNew() AggregationElement.cc:420 #13 0x117dda320 in ncml_module::AggregationElement::handleEnd() AggregationElement.cc:217 #14 0x118228b9f in ncml_module::NCMLParser::processEndNCMLElement(std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:1186 #15 0x11823035b in ncml_module::NCMLParser::onEndElementWithNamespace(std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:324 #16 0x1183948c9 in ncmlSax2EndElementNs(void*, unsigned char const*, unsigned char const*, unsigned char const*) SaxParserWrapper.cc:242 #17 0x7fff597e1d8e in xmlParseEndTag2 (libxml2.2.dylib:x86_64+0x37d8e) #18 0x7fff597e0440 in xmlParseElement (libxml2.2.dylib:x86_64+0x36440) #19 0x7fff597e005a in xmlParseContent (libxml2.2.dylib:x86_64+0x3605a) #20 0x7fff597e03f1 in xmlParseElement (libxml2.2.dylib:x86_64+0x363f1) #21 0x7fff597e2b7a in xmlParseDocument (libxml2.2.dylib:x86_64+0x38b7a) #22 0x1183859ae in ncml_module::SaxParserWrapper::parse(std::__1::basic_string, std::__1::allocator > const&) SaxParserWrapper.cc:338 #23 0x11821ad0b in ncml_module::NCMLParser::parseInto(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType, BESDapResponse*) NCMLParser.cc:185 #24 0x118296aae in ncml_module::NCMLRequestHandler::ncml_build_dds(BESDataHandlerInterface&) NCMLRequestHandler.cc:260 #25 0x10ccfec8f in BESRequestHandlerList::execute_current(BESDataHandlerInterface&) BESRequestHandlerList.cc:273 #26 0x10ccfd0a4 in BESRequestHandlerList::execute_each(BESDataHandlerInterface&) BESRequestHandlerList.cc:167 #27 0x11092a5dc in BESDDXResponseHandler::execute(BESDataHandlerInterface&) BESDDXResponseHandler.cc:122 #28 0x10d115d5a in BESXMLInterface::execute_data_request_plan() BESXMLInterface.cc:285 #29 0x10cb72b8d in BESInterface::execute_request(std::__1::basic_string, std::__1::allocator > const&) BESInterface.cc:513 #30 0x10cad98d8 in StandAloneClient::executeCommand(std::__1::basic_string, std::__1::allocator > const&, int) StandAloneClient.cc:237 #31 0x10cad73aa in StandAloneClient::executeCommands(std::__1::basic_ifstream >&, int) StandAloneClient.cc:349 #32 0x10cabce6d in StandAloneApp::run() StandAloneApp.cc:251 #33 0x10cde2c24 in BESApp::main(int, char**) BESApp.cc:58 #34 0x10cac012e in main StandAloneApp.cc:345 #35 0x7fff59ad3014 in start (libdyld.dylib:x86_64+0x1014) 0x60200000be3c is located 0 bytes to the right of 12-byte region [0x60200000be30,0x60200000be3c) allocated by thread T0 here: #0 0x10d270cb2 in wrap__Znam (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x62cb2) #1 0x110e7eb3c in libdap::Vector::m_create_cardinal_data_buffer_for_type(unsigned int) Vector.cc:203 #2 0x110e93c15 in libdap::Vector::val2buf(void*, bool) Vector.cc:1206 #3 0x110e7d5e7 in libdap::Vector::m_duplicate(libdap::Vector const&) Vector.cc:116 #4 0x110e81733 in libdap::Vector::Vector(libdap::Vector const&) Vector.cc:297 #5 0x110ecf385 in libdap::Array::Array(libdap::Array const&) Array.cc:164 #6 0x117f01116 in agg_util::ArrayAggregationBase::ArrayAggregationBase(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&) ArrayAggregationBase.cc:50 #7 0x117ef07d2 in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&, agg_util::Dimension const&) ArrayAggregateOnOuterDimension.cc:59 #8 0x117ef0e34 in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&, agg_util::Dimension const&) ArrayAggregateOnOuterDimension.cc:61 #9 0x117e517ae in ncml_module::AggregationElement::processAggVarJoinNewForArray(libdap::DDS&, libdap::Array const&, agg_util::Dimension const&, std::__1::vector, std::__1::allocator > > const&) AggregationElement.cc:855 #10 0x117e1edb0 in ncml_module::AggregationElement::processJoinNewOnAggVar(libdap::DDS*, std::__1::basic_string, std::__1::allocator > const&, libdap::DDS const&) AggregationElement.cc:801 #11 0x117de44d7 in ncml_module::AggregationElement::processJoinNew() AggregationElement.cc:420 #12 0x117dda320 in ncml_module::AggregationElement::handleEnd() AggregationElement.cc:217 #13 0x118228b9f in ncml_module::NCMLParser::processEndNCMLElement(std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:1186 #14 0x11823035b in ncml_module::NCMLParser::onEndElementWithNamespace(std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:324 #15 0x1183948c9 in ncmlSax2EndElementNs(void*, unsigned char const*, unsigned char const*, unsigned char const*) SaxParserWrapper.cc:242 #16 0x7fff597e1d8e in xmlParseEndTag2 (libxml2.2.dylib:x86_64+0x37d8e) #17 0x7fff597e0440 in xmlParseElement (libxml2.2.dylib:x86_64+0x36440) #18 0x7fff597e005a in xmlParseContent (libxml2.2.dylib:x86_64+0x3605a) #19 0x7fff597e03f1 in xmlParseElement (libxml2.2.dylib:x86_64+0x363f1) #20 0x7fff597e2b7a in xmlParseDocument (libxml2.2.dylib:x86_64+0x38b7a) #21 0x1183859ae in ncml_module::SaxParserWrapper::parse(std::__1::basic_string, std::__1::allocator > const&) SaxParserWrapper.cc:338 #22 0x11821ad0b in ncml_module::NCMLParser::parseInto(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType, BESDapResponse*) NCMLParser.cc:185 #23 0x118296aae in ncml_module::NCMLRequestHandler::ncml_build_dds(BESDataHandlerInterface&) NCMLRequestHandler.cc:260 #24 0x10ccfec8f in BESRequestHandlerList::execute_current(BESDataHandlerInterface&) BESRequestHandlerList.cc:273 #25 0x10ccfd0a4 in BESRequestHandlerList::execute_each(BESDataHandlerInterface&) BESRequestHandlerList.cc:167 #26 0x11092a5dc in BESDDXResponseHandler::execute(BESDataHandlerInterface&) BESDDXResponseHandler.cc:122 #27 0x10d115d5a in BESXMLInterface::execute_data_request_plan() BESXMLInterface.cc:285 #28 0x10cb72b8d in BESInterface::execute_request(std::__1::basic_string, std::__1::allocator > const&) BESInterface.cc:513 #29 0x10cad98d8 in StandAloneClient::executeCommand(std::__1::basic_string, std::__1::allocator > const&, int) StandAloneClient.cc:237 SUMMARY: AddressSanitizer: heap-buffer-overflow (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x4f3fd) in __asan_memcpy Shadow bytes around the buggy address: 0x1c0400001770: fa fa 00 02 fa fa fd fa fa fa fd fd fa fa fd fa 0x1c0400001780: fa fa 00 fa fa fa 00 fa fa fa 00 fa fa fa fd fd 0x1c0400001790: fa fa 00 04 fa fa 00 04 fa fa 00 00 fa fa 00 fa 0x1c04000017a0: fa fa 00 fa fa fa 00 fa fa fa fd fd fa fa 00 04 0x1c04000017b0: fa fa 00 04 fa fa fd fa fa fa 00 00 fa fa 00 00 =>0x1c04000017c0: fa fa 00 fa fa fa 00[04]fa fa 00 04 fa fa 00 04 0x1c04000017d0: fa fa 00 00 fa fa fa fa fa fa fa fa fa fa fa fa 0x1c04000017e0: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c04000017f0: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c0400001800: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c0400001810: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa Shadow byte legend (one shadow byte represents 8 application bytes): Addressable: 00 Partially addressable: 01 02 03 04 05 06 07 Heap left redzone: fa Freed heap region: fd Stack left redzone: f1 Stack mid redzone: f2 Stack right redzone: f3 Stack after return: f5 Stack use after scope: f8 Global redzone: f9 Global init order: f6 Poisoned by user: f7 Container overflow: fc Array cookie: ac Intra object redzone: bb ASan internal: fe Left alloca redzone: ca Right alloca redzone: cb ==77331==ABORTING /Users/jimg/src/opendap/hyrax_git/bes/modules/ncml_module/tests/testsuite.dir/at-groups/436/test-source: line 44: 77331 Abort trap: 6 besstandalone -c $abs_builddir/bes.conf -i ./test.bescmd stdout: ./aggregations.at:105: exit code was 134, expected 0 436. aggregations.at:105: 436. Comparing ddx response for agg/joinNew_explicit_autogen.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_explicit_autogen.ncml (aggregations.at:105): FAILED (aggregations.at:105) # -*- compilation -*- 437. aggregations.at:105: testing Comparing dods response for agg/joinNew_explicit_autogen.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_explicit_autogen.ncml ... ./aggregations.at:105: besstandalone -c $abs_builddir/bes.conf -i ./test.bescmd stderr: Width: 12 Name: V Width: 12 Name: V Width: 24 Name: V ================================================================= ==77414==ERROR: AddressSanitizer: heap-buffer-overflow on address 0x60200000be5c at pc 0x000106cf83fe bp 0x7ffee96999b0 sp 0x7ffee9699160 READ of size 24 at 0x60200000be5c thread T0 #0 0x106cf83fd in __asan_memcpy (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x4f3fd) Provided dSYM: [/Users/jimg/src/opendap/hyrax_git/build/lib/libdap.25.dylib.dSYM/Contents/Resources/DWARF/libdap.25.dylib] does not match symbol owner 0x7fa46dc15370 #1 0x10a8dbf39 in libdap::Vector::val2buf(void*, bool) Vector.cc:1212 #2 0x10a8c55e7 in libdap::Vector::m_duplicate(libdap::Vector const&) Vector.cc:116 #3 0x10a8c9733 in libdap::Vector::Vector(libdap::Vector const&) Vector.cc:297 #4 0x10a917385 in libdap::Array::Array(libdap::Array const&) Array.cc:164 #5 0x1121b38da in agg_util::ArrayAggregationBase::ArrayAggregationBase(agg_util::ArrayAggregationBase const&) ArrayAggregationBase.cc:56 #6 0x1121a2f84 in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(agg_util::ArrayAggregateOnOuterDimension const&) ArrayAggregateOnOuterDimension.cc:70 #7 0x1121a335c in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(agg_util::ArrayAggregateOnOuterDimension const&) ArrayAggregateOnOuterDimension.cc:71 #8 0x1121a389c in agg_util::ArrayAggregateOnOuterDimension::ptr_duplicate() ArrayAggregateOnOuterDimension.cc:85 #9 0x10a7c80fd in libdap::DDS::add_var(libdap::BaseType*) DDS.cc:607 #10 0x112105de8 in ncml_module::AggregationElement::processAggVarJoinNewForArray(libdap::DDS&, libdap::Array const&, agg_util::Dimension const&, std::__1::vector, std::__1::allocator > > const&) AggregationElement.cc:867 #11 0x1120d0db0 in ncml_module::AggregationElement::processJoinNewOnAggVar(libdap::DDS*, std::__1::basic_string, std::__1::allocator > const&, libdap::DDS const&) AggregationElement.cc:801 #12 0x1120964d7 in ncml_module::AggregationElement::processJoinNew() AggregationElement.cc:420 #13 0x11208c320 in ncml_module::AggregationElement::handleEnd() AggregationElement.cc:217 #14 0x1124dab9f in ncml_module::NCMLParser::processEndNCMLElement(std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:1186 #15 0x1124e235b in ncml_module::NCMLParser::onEndElementWithNamespace(std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:324 #16 0x1126468c9 in ncmlSax2EndElementNs(void*, unsigned char const*, unsigned char const*, unsigned char const*) SaxParserWrapper.cc:242 #17 0x7fff597e1d8e in xmlParseEndTag2 (libxml2.2.dylib:x86_64+0x37d8e) #18 0x7fff597e0440 in xmlParseElement (libxml2.2.dylib:x86_64+0x36440) #19 0x7fff597e005a in xmlParseContent (libxml2.2.dylib:x86_64+0x3605a) #20 0x7fff597e03f1 in xmlParseElement (libxml2.2.dylib:x86_64+0x363f1) #21 0x7fff597e2b7a in xmlParseDocument (libxml2.2.dylib:x86_64+0x38b7a) #22 0x1126379ae in ncml_module::SaxParserWrapper::parse(std::__1::basic_string, std::__1::allocator > const&) SaxParserWrapper.cc:338 #23 0x1124ccd0b in ncml_module::NCMLParser::parseInto(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType, BESDapResponse*) NCMLParser.cc:185 #24 0x11254e346 in ncml_module::NCMLRequestHandler::ncml_build_data(BESDataHandlerInterface&) NCMLRequestHandler.cc:297 #25 0x10679ac8f in BESRequestHandlerList::execute_current(BESDataHandlerInterface&) BESRequestHandlerList.cc:273 #26 0x1067990a4 in BESRequestHandlerList::execute_each(BESDataHandlerInterface&) BESRequestHandlerList.cc:167 #27 0x10a33288c in BESDataResponseHandler::execute(BESDataHandlerInterface&) BESDataResponseHandler.cc:148 #28 0x106bb1d5a in BESXMLInterface::execute_data_request_plan() BESXMLInterface.cc:285 #29 0x10660eb8d in BESInterface::execute_request(std::__1::basic_string, std::__1::allocator > const&) BESInterface.cc:513 #30 0x1065768d8 in StandAloneClient::executeCommand(std::__1::basic_string, std::__1::allocator > const&, int) StandAloneClient.cc:237 #31 0x1065743aa in StandAloneClient::executeCommands(std::__1::basic_ifstream >&, int) StandAloneClient.cc:349 #32 0x106559e6d in StandAloneApp::run() StandAloneApp.cc:251 #33 0x10687ec24 in BESApp::main(int, char**) BESApp.cc:58 #34 0x10655d12e in main StandAloneApp.cc:345 #35 0x7fff59ad3014 in start (libdyld.dylib:x86_64+0x1014) 0x60200000be5c is located 0 bytes to the right of 12-byte region [0x60200000be50,0x60200000be5c) allocated by thread T0 here: #0 0x106d0bcb2 in wrap__Znam (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x62cb2) #1 0x10a8c6b3c in libdap::Vector::m_create_cardinal_data_buffer_for_type(unsigned int) Vector.cc:203 #2 0x10a8dbc15 in libdap::Vector::val2buf(void*, bool) Vector.cc:1206 #3 0x10a8c55e7 in libdap::Vector::m_duplicate(libdap::Vector const&) Vector.cc:116 #4 0x10a8c9733 in libdap::Vector::Vector(libdap::Vector const&) Vector.cc:297 #5 0x10a917385 in libdap::Array::Array(libdap::Array const&) Array.cc:164 #6 0x1121b3116 in agg_util::ArrayAggregationBase::ArrayAggregationBase(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&) ArrayAggregationBase.cc:50 #7 0x1121a27d2 in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&, agg_util::Dimension const&) ArrayAggregateOnOuterDimension.cc:59 #8 0x1121a2e34 in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&, agg_util::Dimension const&) ArrayAggregateOnOuterDimension.cc:61 #9 0x1121037ae in ncml_module::AggregationElement::processAggVarJoinNewForArray(libdap::DDS&, libdap::Array const&, agg_util::Dimension const&, std::__1::vector, std::__1::allocator > > const&) AggregationElement.cc:855 #10 0x1120d0db0 in ncml_module::AggregationElement::processJoinNewOnAggVar(libdap::DDS*, std::__1::basic_string, std::__1::allocator > const&, libdap::DDS const&) AggregationElement.cc:801 #11 0x1120964d7 in ncml_module::AggregationElement::processJoinNew() AggregationElement.cc:420 #12 0x11208c320 in ncml_module::AggregationElement::handleEnd() AggregationElement.cc:217 #13 0x1124dab9f in ncml_module::NCMLParser::processEndNCMLElement(std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:1186 #14 0x1124e235b in ncml_module::NCMLParser::onEndElementWithNamespace(std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:324 #15 0x1126468c9 in ncmlSax2EndElementNs(void*, unsigned char const*, unsigned char const*, unsigned char const*) SaxParserWrapper.cc:242 #16 0x7fff597e1d8e in xmlParseEndTag2 (libxml2.2.dylib:x86_64+0x37d8e) #17 0x7fff597e0440 in xmlParseElement (libxml2.2.dylib:x86_64+0x36440) #18 0x7fff597e005a in xmlParseContent (libxml2.2.dylib:x86_64+0x3605a) #19 0x7fff597e03f1 in xmlParseElement (libxml2.2.dylib:x86_64+0x363f1) #20 0x7fff597e2b7a in xmlParseDocument (libxml2.2.dylib:x86_64+0x38b7a) #21 0x1126379ae in ncml_module::SaxParserWrapper::parse(std::__1::basic_string, std::__1::allocator > const&) SaxParserWrapper.cc:338 #22 0x1124ccd0b in ncml_module::NCMLParser::parseInto(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType, BESDapResponse*) NCMLParser.cc:185 #23 0x11254e346 in ncml_module::NCMLRequestHandler::ncml_build_data(BESDataHandlerInterface&) NCMLRequestHandler.cc:297 #24 0x10679ac8f in BESRequestHandlerList::execute_current(BESDataHandlerInterface&) BESRequestHandlerList.cc:273 #25 0x1067990a4 in BESRequestHandlerList::execute_each(BESDataHandlerInterface&) BESRequestHandlerList.cc:167 #26 0x10a33288c in BESDataResponseHandler::execute(BESDataHandlerInterface&) BESDataResponseHandler.cc:148 #27 0x106bb1d5a in BESXMLInterface::execute_data_request_plan() BESXMLInterface.cc:285 #28 0x10660eb8d in BESInterface::execute_request(std::__1::basic_string, std::__1::allocator > const&) BESInterface.cc:513 #29 0x1065768d8 in StandAloneClient::executeCommand(std::__1::basic_string, std::__1::allocator > const&, int) StandAloneClient.cc:237 SUMMARY: AddressSanitizer: heap-buffer-overflow (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x4f3fd) in __asan_memcpy Shadow bytes around the buggy address: 0x1c0400001770: fa fa 00 02 fa fa 00 02 fa fa fd fa fa fa fd fd 0x1c0400001780: fa fa fd fa fa fa 00 fa fa fa 00 fa fa fa 00 fa 0x1c0400001790: fa fa fd fd fa fa 00 04 fa fa 00 04 fa fa 00 00 0x1c04000017a0: fa fa 00 fa fa fa 00 fa fa fa 00 fa fa fa fd fd 0x1c04000017b0: fa fa 00 04 fa fa 00 04 fa fa fd fa fa fa 00 00 =>0x1c04000017c0: fa fa 00 00 fa fa 00 fa fa fa 00[04]fa fa 00 04 0x1c04000017d0: fa fa 00 04 fa fa 00 00 fa fa fa fa fa fa fa fa 0x1c04000017e0: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c04000017f0: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c0400001800: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c0400001810: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa Shadow byte legend (one shadow byte represents 8 application bytes): Addressable: 00 Partially addressable: 01 02 03 04 05 06 07 Heap left redzone: fa Freed heap region: fd Stack left redzone: f1 Stack mid redzone: f2 Stack right redzone: f3 Stack after return: f5 Stack use after scope: f8 Global redzone: f9 Global init order: f6 Poisoned by user: f7 Container overflow: fc Array cookie: ac Intra object redzone: bb ASan internal: fe Left alloca redzone: ca Right alloca redzone: cb ==77414==ABORTING /Users/jimg/src/opendap/hyrax_git/bes/modules/ncml_module/tests/testsuite.dir/at-groups/437/test-source: line 44: 77414 Abort trap: 6 besstandalone -c $abs_builddir/bes.conf -i ./test.bescmd stdout: ./aggregations.at:105: exit code was 134, expected 0 437. aggregations.at:105: 437. Comparing dods response for agg/joinNew_explicit_autogen.ncml to baseline ${abs_srcdir}/baselines/agg/joinNew_explicit_autogen.ncml (aggregations.at:105): FAILED (aggregations.at:105) # -*- compilation -*- 438. aggregations.at:106: testing Comparing dods response for agg/joinNew_explicit_autogen.ncml to getdap (ascii) baseline ${abs_srcdir}/baselines/agg/joinNew_explicit_autogen.ncml ... ./aggregations.at:106: besstandalone -c $abs_builddir/bes.conf -i ./test.bescmd stderr: Width: 12 Name: V Width: 12 Name: V Width: 24 Name: V ================================================================= ==77517==ERROR: AddressSanitizer: heap-buffer-overflow on address 0x60200000be5c at pc 0x0001093f03fe bp 0x7ffee6fa29b0 sp 0x7ffee6fa2160 READ of size 24 at 0x60200000be5c thread T0 #0 0x1093f03fd in __asan_memcpy (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x4f3fd) Provided dSYM: [/Users/jimg/src/opendap/hyrax_git/build/lib/libdap.25.dylib.dSYM/Contents/Resources/DWARF/libdap.25.dylib] does not match symbol owner 0x7f8253412780 #1 0x10cfdbf39 in libdap::Vector::val2buf(void*, bool) Vector.cc:1212 #2 0x10cfc55e7 in libdap::Vector::m_duplicate(libdap::Vector const&) Vector.cc:116 #3 0x10cfc9733 in libdap::Vector::Vector(libdap::Vector const&) Vector.cc:297 #4 0x10d017385 in libdap::Array::Array(libdap::Array const&) Array.cc:164 #5 0x113fef8da in agg_util::ArrayAggregationBase::ArrayAggregationBase(agg_util::ArrayAggregationBase const&) ArrayAggregationBase.cc:56 #6 0x113fdef84 in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(agg_util::ArrayAggregateOnOuterDimension const&) ArrayAggregateOnOuterDimension.cc:70 #7 0x113fdf35c in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(agg_util::ArrayAggregateOnOuterDimension const&) ArrayAggregateOnOuterDimension.cc:71 #8 0x113fdf89c in agg_util::ArrayAggregateOnOuterDimension::ptr_duplicate() ArrayAggregateOnOuterDimension.cc:85 #9 0x10cec80fd in libdap::DDS::add_var(libdap::BaseType*) DDS.cc:607 #10 0x113f41de8 in ncml_module::AggregationElement::processAggVarJoinNewForArray(libdap::DDS&, libdap::Array const&, agg_util::Dimension const&, std::__1::vector, std::__1::allocator > > const&) AggregationElement.cc:867 #11 0x113f0cdb0 in ncml_module::AggregationElement::processJoinNewOnAggVar(libdap::DDS*, std::__1::basic_string, std::__1::allocator > const&, libdap::DDS const&) AggregationElement.cc:801 #12 0x113ed24d7 in ncml_module::AggregationElement::processJoinNew() AggregationElement.cc:420 #13 0x113ec8320 in ncml_module::AggregationElement::handleEnd() AggregationElement.cc:217 #14 0x114316b9f in ncml_module::NCMLParser::processEndNCMLElement(std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:1186 #15 0x11431e35b in ncml_module::NCMLParser::onEndElementWithNamespace(std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:324 #16 0x1144828c9 in ncmlSax2EndElementNs(void*, unsigned char const*, unsigned char const*, unsigned char const*) SaxParserWrapper.cc:242 #17 0x7fff597e1d8e in xmlParseEndTag2 (libxml2.2.dylib:x86_64+0x37d8e) #18 0x7fff597e0440 in xmlParseElement (libxml2.2.dylib:x86_64+0x36440) #19 0x7fff597e005a in xmlParseContent (libxml2.2.dylib:x86_64+0x3605a) #20 0x7fff597e03f1 in xmlParseElement (libxml2.2.dylib:x86_64+0x363f1) #21 0x7fff597e2b7a in xmlParseDocument (libxml2.2.dylib:x86_64+0x38b7a) #22 0x1144739ae in ncml_module::SaxParserWrapper::parse(std::__1::basic_string, std::__1::allocator > const&) SaxParserWrapper.cc:338 #23 0x114308d0b in ncml_module::NCMLParser::parseInto(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType, BESDapResponse*) NCMLParser.cc:185 #24 0x11438a346 in ncml_module::NCMLRequestHandler::ncml_build_data(BESDataHandlerInterface&) NCMLRequestHandler.cc:297 #25 0x108e95c8f in BESRequestHandlerList::execute_current(BESDataHandlerInterface&) BESRequestHandlerList.cc:273 #26 0x108e940a4 in BESRequestHandlerList::execute_each(BESDataHandlerInterface&) BESRequestHandlerList.cc:167 #27 0x10ca3288c in BESDataResponseHandler::execute(BESDataHandlerInterface&) BESDataResponseHandler.cc:148 #28 0x1092abd5a in BESXMLInterface::execute_data_request_plan() BESXMLInterface.cc:285 #29 0x108d09b8d in BESInterface::execute_request(std::__1::basic_string, std::__1::allocator > const&) BESInterface.cc:513 #30 0x108c6d8d8 in StandAloneClient::executeCommand(std::__1::basic_string, std::__1::allocator > const&, int) StandAloneClient.cc:237 #31 0x108c6b3aa in StandAloneClient::executeCommands(std::__1::basic_ifstream >&, int) StandAloneClient.cc:349 #32 0x108c50e6d in StandAloneApp::run() StandAloneApp.cc:251 #33 0x108f79c24 in BESApp::main(int, char**) BESApp.cc:58 #34 0x108c5412e in main StandAloneApp.cc:345 #35 0x7fff59ad3014 in start (libdyld.dylib:x86_64+0x1014) 0x60200000be5c is located 0 bytes to the right of 12-byte region [0x60200000be50,0x60200000be5c) allocated by thread T0 here: #0 0x109403cb2 in wrap__Znam (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x62cb2) #1 0x10cfc6b3c in libdap::Vector::m_create_cardinal_data_buffer_for_type(unsigned int) Vector.cc:203 #2 0x10cfdbc15 in libdap::Vector::val2buf(void*, bool) Vector.cc:1206 #3 0x10cfc55e7 in libdap::Vector::m_duplicate(libdap::Vector const&) Vector.cc:116 #4 0x10cfc9733 in libdap::Vector::Vector(libdap::Vector const&) Vector.cc:297 #5 0x10d017385 in libdap::Array::Array(libdap::Array const&) Array.cc:164 #6 0x113fef116 in agg_util::ArrayAggregationBase::ArrayAggregationBase(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&) ArrayAggregationBase.cc:50 #7 0x113fde7d2 in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&, agg_util::Dimension const&) ArrayAggregateOnOuterDimension.cc:59 #8 0x113fdee34 in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&, agg_util::Dimension const&) ArrayAggregateOnOuterDimension.cc:61 #9 0x113f3f7ae in ncml_module::AggregationElement::processAggVarJoinNewForArray(libdap::DDS&, libdap::Array const&, agg_util::Dimension const&, std::__1::vector, std::__1::allocator > > const&) AggregationElement.cc:855 #10 0x113f0cdb0 in ncml_module::AggregationElement::processJoinNewOnAggVar(libdap::DDS*, std::__1::basic_string, std::__1::allocator > const&, libdap::DDS const&) AggregationElement.cc:801 #11 0x113ed24d7 in ncml_module::AggregationElement::processJoinNew() AggregationElement.cc:420 #12 0x113ec8320 in ncml_module::AggregationElement::handleEnd() AggregationElement.cc:217 #13 0x114316b9f in ncml_module::NCMLParser::processEndNCMLElement(std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:1186 #14 0x11431e35b in ncml_module::NCMLParser::onEndElementWithNamespace(std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:324 #15 0x1144828c9 in ncmlSax2EndElementNs(void*, unsigned char const*, unsigned char const*, unsigned char const*) SaxParserWrapper.cc:242 #16 0x7fff597e1d8e in xmlParseEndTag2 (libxml2.2.dylib:x86_64+0x37d8e) #17 0x7fff597e0440 in xmlParseElement (libxml2.2.dylib:x86_64+0x36440) #18 0x7fff597e005a in xmlParseContent (libxml2.2.dylib:x86_64+0x3605a) #19 0x7fff597e03f1 in xmlParseElement (libxml2.2.dylib:x86_64+0x363f1) #20 0x7fff597e2b7a in xmlParseDocument (libxml2.2.dylib:x86_64+0x38b7a) #21 0x1144739ae in ncml_module::SaxParserWrapper::parse(std::__1::basic_string, std::__1::allocator > const&) SaxParserWrapper.cc:338 #22 0x114308d0b in ncml_module::NCMLParser::parseInto(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType, BESDapResponse*) NCMLParser.cc:185 #23 0x11438a346 in ncml_module::NCMLRequestHandler::ncml_build_data(BESDataHandlerInterface&) NCMLRequestHandler.cc:297 #24 0x108e95c8f in BESRequestHandlerList::execute_current(BESDataHandlerInterface&) BESRequestHandlerList.cc:273 #25 0x108e940a4 in BESRequestHandlerList::execute_each(BESDataHandlerInterface&) BESRequestHandlerList.cc:167 #26 0x10ca3288c in BESDataResponseHandler::execute(BESDataHandlerInterface&) BESDataResponseHandler.cc:148 #27 0x1092abd5a in BESXMLInterface::execute_data_request_plan() BESXMLInterface.cc:285 #28 0x108d09b8d in BESInterface::execute_request(std::__1::basic_string, std::__1::allocator > const&) BESInterface.cc:513 #29 0x108c6d8d8 in StandAloneClient::executeCommand(std::__1::basic_string, std::__1::allocator > const&, int) StandAloneClient.cc:237 SUMMARY: AddressSanitizer: heap-buffer-overflow (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x4f3fd) in __asan_memcpy Shadow bytes around the buggy address: 0x1c0400001770: fa fa 00 02 fa fa 00 02 fa fa fd fa fa fa fd fd 0x1c0400001780: fa fa fd fa fa fa 00 fa fa fa 00 fa fa fa 00 fa 0x1c0400001790: fa fa fd fd fa fa 00 04 fa fa 00 04 fa fa 00 00 0x1c04000017a0: fa fa 00 fa fa fa 00 fa fa fa 00 fa fa fa fd fd 0x1c04000017b0: fa fa 00 04 fa fa 00 04 fa fa fd fa fa fa 00 00 =>0x1c04000017c0: fa fa 00 00 fa fa 00 fa fa fa 00[04]fa fa 00 04 0x1c04000017d0: fa fa 00 04 fa fa 00 00 fa fa fa fa fa fa fa fa 0x1c04000017e0: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c04000017f0: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c0400001800: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c0400001810: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa Shadow byte legend (one shadow byte represents 8 application bytes): Addressable: 00 Partially addressable: 01 02 03 04 05 06 07 Heap left redzone: fa Freed heap region: fd Stack left redzone: f1 Stack mid redzone: f2 Stack right redzone: f3 Stack after return: f5 Stack use after scope: f8 Global redzone: f9 Global init order: f6 Poisoned by user: f7 Container overflow: fc Array cookie: ac Intra object redzone: bb ASan internal: fe Left alloca redzone: ca Right alloca redzone: cb ==77517==ABORTING /Users/jimg/src/opendap/hyrax_git/bes/modules/ncml_module/tests/testsuite.dir/at-groups/438/test-source: line 55: 77517 Abort trap: 6 besstandalone -c $abs_builddir/bes.conf -i ./test.bescmd stdout: ./aggregations.at:106: exit code was 134, expected 0 438. aggregations.at:106: 438. Comparing dods response for agg/joinNew_explicit_autogen.ncml to getdap (ascii) baseline ${abs_srcdir}/baselines/agg/joinNew_explicit_autogen.ncml (aggregations.at:106): FAILED (aggregations.at:106) # -*- compilation -*- 440. aggregations.at:115: testing "ddx" response for agg/joinNew_explicit_map_err_2.ncml: seeking match to ".*ParseError.*" ... ./aggregations.at:115: besstandalone -c $abs_builddir/bes.conf -i ./test.bescmd stderr: Width: 12 Name: V Width: 12 Name: V Width: 24 Name: V ================================================================= ==77519==ERROR: AddressSanitizer: heap-buffer-overflow on address 0x60200000bedc at pc 0x0001019613fe bp 0x7ffeeea346d0 sp 0x7ffeeea33e80 READ of size 24 at 0x60200000bedc thread T0 #0 0x1019613fd in __asan_memcpy (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x4f3fd) Provided dSYM: [/Users/jimg/src/opendap/hyrax_git/build/lib/libdap.25.dylib.dSYM/Contents/Resources/DWARF/libdap.25.dylib] does not match symbol owner 0x7fc2a05134a0 #1 0x105593f39 in libdap::Vector::val2buf(void*, bool) Vector.cc:1212 #2 0x10557d5e7 in libdap::Vector::m_duplicate(libdap::Vector const&) Vector.cc:116 #3 0x105581733 in libdap::Vector::Vector(libdap::Vector const&) Vector.cc:297 #4 0x1055cf385 in libdap::Array::Array(libdap::Array const&) Array.cc:164 #5 0x10c6ca8da in agg_util::ArrayAggregationBase::ArrayAggregationBase(agg_util::ArrayAggregationBase const&) ArrayAggregationBase.cc:56 #6 0x10c6b9f84 in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(agg_util::ArrayAggregateOnOuterDimension const&) ArrayAggregateOnOuterDimension.cc:70 #7 0x10c6ba35c in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(agg_util::ArrayAggregateOnOuterDimension const&) ArrayAggregateOnOuterDimension.cc:71 #8 0x10c6ba89c in agg_util::ArrayAggregateOnOuterDimension::ptr_duplicate() ArrayAggregateOnOuterDimension.cc:85 #9 0x1054800fd in libdap::DDS::add_var(libdap::BaseType*) DDS.cc:607 #10 0x10c61cde8 in ncml_module::AggregationElement::processAggVarJoinNewForArray(libdap::DDS&, libdap::Array const&, agg_util::Dimension const&, std::__1::vector, std::__1::allocator > > const&) AggregationElement.cc:867 #11 0x10c5e7db0 in ncml_module::AggregationElement::processJoinNewOnAggVar(libdap::DDS*, std::__1::basic_string, std::__1::allocator > const&, libdap::DDS const&) AggregationElement.cc:801 #12 0x10c5ad4d7 in ncml_module::AggregationElement::processJoinNew() AggregationElement.cc:420 #13 0x10c5a3320 in ncml_module::AggregationElement::handleEnd() AggregationElement.cc:217 #14 0x10c9f1b9f in ncml_module::NCMLParser::processEndNCMLElement(std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:1186 #15 0x10c9f935b in ncml_module::NCMLParser::onEndElementWithNamespace(std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:324 #16 0x10cb5d8c9 in ncmlSax2EndElementNs(void*, unsigned char const*, unsigned char const*, unsigned char const*) SaxParserWrapper.cc:242 #17 0x7fff597e1d8e in xmlParseEndTag2 (libxml2.2.dylib:x86_64+0x37d8e) #18 0x7fff597e0440 in xmlParseElement (libxml2.2.dylib:x86_64+0x36440) #19 0x7fff597e005a in xmlParseContent (libxml2.2.dylib:x86_64+0x3605a) #20 0x7fff597e03f1 in xmlParseElement (libxml2.2.dylib:x86_64+0x363f1) #21 0x7fff597e2b7a in xmlParseDocument (libxml2.2.dylib:x86_64+0x38b7a) #22 0x10cb4e9ae in ncml_module::SaxParserWrapper::parse(std::__1::basic_string, std::__1::allocator > const&) SaxParserWrapper.cc:338 #23 0x10c9e3d0b in ncml_module::NCMLParser::parseInto(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType, BESDapResponse*) NCMLParser.cc:185 #24 0x10ca5faae in ncml_module::NCMLRequestHandler::ncml_build_dds(BESDataHandlerInterface&) NCMLRequestHandler.cc:260 #25 0x101403c8f in BESRequestHandlerList::execute_current(BESDataHandlerInterface&) BESRequestHandlerList.cc:273 #26 0x1014020a4 in BESRequestHandlerList::execute_each(BESDataHandlerInterface&) BESRequestHandlerList.cc:167 #27 0x10502a5dc in BESDDXResponseHandler::execute(BESDataHandlerInterface&) BESDDXResponseHandler.cc:122 #28 0x10181bd5a in BESXMLInterface::execute_data_request_plan() BESXMLInterface.cc:285 #29 0x101277b8d in BESInterface::execute_request(std::__1::basic_string, std::__1::allocator > const&) BESInterface.cc:513 #30 0x1011db8d8 in StandAloneClient::executeCommand(std::__1::basic_string, std::__1::allocator > const&, int) StandAloneClient.cc:237 #31 0x1011d93aa in StandAloneClient::executeCommands(std::__1::basic_ifstream >&, int) StandAloneClient.cc:349 #32 0x1011bee6d in StandAloneApp::run() StandAloneApp.cc:251 #33 0x1014e7c24 in BESApp::main(int, char**) BESApp.cc:58 #34 0x1011c212e in main StandAloneApp.cc:345 #35 0x7fff59ad3014 in start (libdyld.dylib:x86_64+0x1014) 0x60200000bedc is located 0 bytes to the right of 12-byte region [0x60200000bed0,0x60200000bedc) allocated by thread T0 here: #0 0x101974cb2 in wrap__Znam (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x62cb2) #1 0x10557eb3c in libdap::Vector::m_create_cardinal_data_buffer_for_type(unsigned int) Vector.cc:203 #2 0x105593c15 in libdap::Vector::val2buf(void*, bool) Vector.cc:1206 #3 0x10557d5e7 in libdap::Vector::m_duplicate(libdap::Vector const&) Vector.cc:116 #4 0x105581733 in libdap::Vector::Vector(libdap::Vector const&) Vector.cc:297 #5 0x1055cf385 in libdap::Array::Array(libdap::Array const&) Array.cc:164 #6 0x10c6ca116 in agg_util::ArrayAggregationBase::ArrayAggregationBase(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&) ArrayAggregationBase.cc:50 #7 0x10c6b97d2 in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&, agg_util::Dimension const&) ArrayAggregateOnOuterDimension.cc:59 #8 0x10c6b9e34 in agg_util::ArrayAggregateOnOuterDimension::ArrayAggregateOnOuterDimension(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&, agg_util::Dimension const&) ArrayAggregateOnOuterDimension.cc:61 #9 0x10c61a7ae in ncml_module::AggregationElement::processAggVarJoinNewForArray(libdap::DDS&, libdap::Array const&, agg_util::Dimension const&, std::__1::vector, std::__1::allocator > > const&) AggregationElement.cc:855 #10 0x10c5e7db0 in ncml_module::AggregationElement::processJoinNewOnAggVar(libdap::DDS*, std::__1::basic_string, std::__1::allocator > const&, libdap::DDS const&) AggregationElement.cc:801 #11 0x10c5ad4d7 in ncml_module::AggregationElement::processJoinNew() AggregationElement.cc:420 #12 0x10c5a3320 in ncml_module::AggregationElement::handleEnd() AggregationElement.cc:217 #13 0x10c9f1b9f in ncml_module::NCMLParser::processEndNCMLElement(std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:1186 #14 0x10c9f935b in ncml_module::NCMLParser::onEndElementWithNamespace(std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:324 #15 0x10cb5d8c9 in ncmlSax2EndElementNs(void*, unsigned char const*, unsigned char const*, unsigned char const*) SaxParserWrapper.cc:242 #16 0x7fff597e1d8e in xmlParseEndTag2 (libxml2.2.dylib:x86_64+0x37d8e) #17 0x7fff597e0440 in xmlParseElement (libxml2.2.dylib:x86_64+0x36440) #18 0x7fff597e005a in xmlParseContent (libxml2.2.dylib:x86_64+0x3605a) #19 0x7fff597e03f1 in xmlParseElement (libxml2.2.dylib:x86_64+0x363f1) #20 0x7fff597e2b7a in xmlParseDocument (libxml2.2.dylib:x86_64+0x38b7a) #21 0x10cb4e9ae in ncml_module::SaxParserWrapper::parse(std::__1::basic_string, std::__1::allocator > const&) SaxParserWrapper.cc:338 #22 0x10c9e3d0b in ncml_module::NCMLParser::parseInto(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType, BESDapResponse*) NCMLParser.cc:185 #23 0x10ca5faae in ncml_module::NCMLRequestHandler::ncml_build_dds(BESDataHandlerInterface&) NCMLRequestHandler.cc:260 #24 0x101403c8f in BESRequestHandlerList::execute_current(BESDataHandlerInterface&) BESRequestHandlerList.cc:273 #25 0x1014020a4 in BESRequestHandlerList::execute_each(BESDataHandlerInterface&) BESRequestHandlerList.cc:167 #26 0x10502a5dc in BESDDXResponseHandler::execute(BESDataHandlerInterface&) BESDDXResponseHandler.cc:122 #27 0x10181bd5a in BESXMLInterface::execute_data_request_plan() BESXMLInterface.cc:285 #28 0x101277b8d in BESInterface::execute_request(std::__1::basic_string, std::__1::allocator > const&) BESInterface.cc:513 #29 0x1011db8d8 in StandAloneClient::executeCommand(std::__1::basic_string, std::__1::allocator > const&, int) StandAloneClient.cc:237 SUMMARY: AddressSanitizer: heap-buffer-overflow (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x4f3fd) in __asan_memcpy Shadow bytes around the buggy address: 0x1c0400001780: fa fa 00 fa fa fa 00 fa fa fa fd fa fa fa 00 fa 0x1c0400001790: fa fa 00 fa fa fa fd fa fa fa 00 fa fa fa 00 fa 0x1c04000017a0: fa fa 00 fa fa fa fd fd fa fa 00 04 fa fa 00 04 0x1c04000017b0: fa fa 00 00 fa fa 00 fa fa fa 00 fa fa fa 00 fa 0x1c04000017c0: fa fa fd fd fa fa 00 04 fa fa 00 04 fa fa fd fd =>0x1c04000017d0: fa fa 00 00 fa fa 00 fa fa fa 00[04]fa fa 00 04 0x1c04000017e0: fa fa 00 04 fa fa 00 00 fa fa fa fa fa fa fa fa 0x1c04000017f0: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c0400001800: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c0400001810: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c0400001820: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa Shadow byte legend (one shadow byte represents 8 application bytes): Addressable: 00 Partially addressable: 01 02 03 04 05 06 07 Heap left redzone: fa Freed heap region: fd Stack left redzone: f1 Stack mid redzone: f2 Stack right redzone: f3 Stack after return: f5 Stack use after scope: f8 Global redzone: f9 Global init order: f6 Poisoned by user: f7 Container overflow: fc Array cookie: ac Intra object redzone: bb ASan internal: fe Left alloca redzone: ca Right alloca redzone: cb ==77519==ABORTING /Users/jimg/src/opendap/hyrax_git/bes/modules/ncml_module/tests/testsuite.dir/at-groups/440/test-source: line 42: 77519 Abort trap: 6 besstandalone -c $abs_builddir/bes.conf -i ./test.bescmd stdout: ./aggregations.at:115: exit code was 134, expected 0 440. aggregations.at:115: 440. "ddx" response for agg/joinNew_explicit_map_err_2.ncml: seeking match to ".*ParseError.*" (aggregations.at:115): FAILED (aggregations.at:115) # -*- compilation -*- 529. aggregations.at:297: testing Comparing das response for agg/joinExisting_virtual.ncml to baseline ${abs_srcdir}/baselines/agg/joinExisting_virtual.ncml ... ./aggregations.at:297: besstandalone -c $abs_builddir/bes.conf -i ./test.bescmd stderr: Width: 12 Name: V Width: 12 Name: V Width: 40 Name: V ================================================================= ==80367==ERROR: AddressSanitizer: heap-buffer-overflow on address 0x60200000c03c at pc 0x00010e2563fe bp 0x7ffee2141c50 sp 0x7ffee2141400 READ of size 40 at 0x60200000c03c thread T0 #0 0x10e2563fd in __asan_memcpy (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x4f3fd) Provided dSYM: [/Users/jimg/src/opendap/hyrax_git/build/lib/libdap.25.dylib.dSYM/Contents/Resources/DWARF/libdap.25.dylib] does not match symbol owner 0x7ff382706140 #1 0x111dfff39 in libdap::Vector::val2buf(void*, bool) Vector.cc:1212 #2 0x111de95e7 in libdap::Vector::m_duplicate(libdap::Vector const&) Vector.cc:116 #3 0x111ded733 in libdap::Vector::Vector(libdap::Vector const&) Vector.cc:297 #4 0x111e3b385 in libdap::Array::Array(libdap::Array const&) Array.cc:164 #5 0x118e508da in agg_util::ArrayAggregationBase::ArrayAggregationBase(agg_util::ArrayAggregationBase const&) ArrayAggregationBase.cc:56 #6 0x118e67476 in agg_util::ArrayJoinExistingAggregation::ArrayJoinExistingAggregation(agg_util::ArrayJoinExistingAggregation const&) ArrayJoinExistingAggregation.cc:79 #7 0x118e675bc in agg_util::ArrayJoinExistingAggregation::ArrayJoinExistingAggregation(agg_util::ArrayJoinExistingAggregation const&) ArrayJoinExistingAggregation.cc:80 #8 0x118e677ac in agg_util::ArrayJoinExistingAggregation::ptr_duplicate() ArrayJoinExistingAggregation.cc:105 #9 0x111cec0fd in libdap::DDS::add_var(libdap::BaseType*) DDS.cc:607 #10 0x118da7678 in ncml_module::AggregationElement::processAggVarJoinExistingForArray(libdap::DDS&, libdap::Array const&, agg_util::Dimension const&, std::__1::vector, std::__1::allocator > > const&) AggregationElement.cc:912 #11 0x118d85ae0 in ncml_module::AggregationElement::processJoinExistingOnAggVar(libdap::DDS*, std::__1::basic_string, std::__1::allocator > const&, libdap::DDS const&) AggregationElement.cc:830 #12 0x118d39028 in ncml_module::AggregationElement::processJoinExisting() AggregationElement.cc:510 #13 0x118d296c7 in ncml_module::AggregationElement::handleEnd() AggregationElement.cc:221 #14 0x119177b9f in ncml_module::NCMLParser::processEndNCMLElement(std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:1186 #15 0x11917f35b in ncml_module::NCMLParser::onEndElementWithNamespace(std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:324 #16 0x1192e38c9 in ncmlSax2EndElementNs(void*, unsigned char const*, unsigned char const*, unsigned char const*) SaxParserWrapper.cc:242 #17 0x7fff597e1d8e in xmlParseEndTag2 (libxml2.2.dylib:x86_64+0x37d8e) #18 0x7fff597e0440 in xmlParseElement (libxml2.2.dylib:x86_64+0x36440) #19 0x7fff597e005a in xmlParseContent (libxml2.2.dylib:x86_64+0x3605a) #20 0x7fff597e03f1 in xmlParseElement (libxml2.2.dylib:x86_64+0x363f1) #21 0x7fff597e2b7a in xmlParseDocument (libxml2.2.dylib:x86_64+0x38b7a) #22 0x1192d49ae in ncml_module::SaxParserWrapper::parse(std::__1::basic_string, std::__1::allocator > const&) SaxParserWrapper.cc:338 #23 0x119169d0b in ncml_module::NCMLParser::parseInto(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType, BESDapResponse*) NCMLParser.cc:185 #24 0x1191631e7 in ncml_module::NCMLParser::parse(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType) NCMLParser.cc:155 #25 0x1191dd841 in ncml_module::NCMLRequestHandler::ncml_build_das(BESDataHandlerInterface&) NCMLRequestHandler.cc:172 #26 0x10dcf7c8f in BESRequestHandlerList::execute_current(BESDataHandlerInterface&) BESRequestHandlerList.cc:273 #27 0x10dcf60a4 in BESRequestHandlerList::execute_each(BESDataHandlerInterface&) BESRequestHandlerList.cc:167 #28 0x111845ff0 in BESDASResponseHandler::execute(BESDataHandlerInterface&) BESDASResponseHandler.cc:95 #29 0x10e112d5a in BESXMLInterface::execute_data_request_plan() BESXMLInterface.cc:285 #30 0x10db6bb8d in BESInterface::execute_request(std::__1::basic_string, std::__1::allocator > const&) BESInterface.cc:513 #31 0x10dace8d8 in StandAloneClient::executeCommand(std::__1::basic_string, std::__1::allocator > const&, int) StandAloneClient.cc:237 #32 0x10dacc3aa in StandAloneClient::executeCommands(std::__1::basic_ifstream >&, int) StandAloneClient.cc:349 #33 0x10dab1e6d in StandAloneApp::run() StandAloneApp.cc:251 #34 0x10dddbc24 in BESApp::main(int, char**) BESApp.cc:58 #35 0x10dab512e in main StandAloneApp.cc:345 #36 0x7fff59ad3014 in start (libdyld.dylib:x86_64+0x1014) 0x60200000c03c is located 0 bytes to the right of 12-byte region [0x60200000c030,0x60200000c03c) allocated by thread T0 here: #0 0x10e269cb2 in wrap__Znam (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x62cb2) #1 0x111deab3c in libdap::Vector::m_create_cardinal_data_buffer_for_type(unsigned int) Vector.cc:203 #2 0x111dffc15 in libdap::Vector::val2buf(void*, bool) Vector.cc:1206 #3 0x111de95e7 in libdap::Vector::m_duplicate(libdap::Vector const&) Vector.cc:116 #4 0x111ded733 in libdap::Vector::Vector(libdap::Vector const&) Vector.cc:297 #5 0x111e3b385 in libdap::Array::Array(libdap::Array const&) Array.cc:164 #6 0x118e50116 in agg_util::ArrayAggregationBase::ArrayAggregationBase(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&) ArrayAggregationBase.cc:50 #7 0x118e6307b in agg_util::ArrayJoinExistingAggregation::ArrayJoinExistingAggregation(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&, agg_util::Dimension const&) ArrayJoinExistingAggregation.cc:54 #8 0x118e67444 in agg_util::ArrayJoinExistingAggregation::ArrayJoinExistingAggregation(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&, agg_util::Dimension const&) ArrayJoinExistingAggregation.cc:55 #9 0x118da503e in ncml_module::AggregationElement::processAggVarJoinExistingForArray(libdap::DDS&, libdap::Array const&, agg_util::Dimension const&, std::__1::vector, std::__1::allocator > > const&) AggregationElement.cc:900 #10 0x118d85ae0 in ncml_module::AggregationElement::processJoinExistingOnAggVar(libdap::DDS*, std::__1::basic_string, std::__1::allocator > const&, libdap::DDS const&) AggregationElement.cc:830 #11 0x118d39028 in ncml_module::AggregationElement::processJoinExisting() AggregationElement.cc:510 #12 0x118d296c7 in ncml_module::AggregationElement::handleEnd() AggregationElement.cc:221 #13 0x119177b9f in ncml_module::NCMLParser::processEndNCMLElement(std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:1186 #14 0x11917f35b in ncml_module::NCMLParser::onEndElementWithNamespace(std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:324 #15 0x1192e38c9 in ncmlSax2EndElementNs(void*, unsigned char const*, unsigned char const*, unsigned char const*) SaxParserWrapper.cc:242 #16 0x7fff597e1d8e in xmlParseEndTag2 (libxml2.2.dylib:x86_64+0x37d8e) #17 0x7fff597e0440 in xmlParseElement (libxml2.2.dylib:x86_64+0x36440) #18 0x7fff597e005a in xmlParseContent (libxml2.2.dylib:x86_64+0x3605a) #19 0x7fff597e03f1 in xmlParseElement (libxml2.2.dylib:x86_64+0x363f1) #20 0x7fff597e2b7a in xmlParseDocument (libxml2.2.dylib:x86_64+0x38b7a) #21 0x1192d49ae in ncml_module::SaxParserWrapper::parse(std::__1::basic_string, std::__1::allocator > const&) SaxParserWrapper.cc:338 #22 0x119169d0b in ncml_module::NCMLParser::parseInto(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType, BESDapResponse*) NCMLParser.cc:185 #23 0x1191631e7 in ncml_module::NCMLParser::parse(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType) NCMLParser.cc:155 #24 0x1191dd841 in ncml_module::NCMLRequestHandler::ncml_build_das(BESDataHandlerInterface&) NCMLRequestHandler.cc:172 #25 0x10dcf7c8f in BESRequestHandlerList::execute_current(BESDataHandlerInterface&) BESRequestHandlerList.cc:273 #26 0x10dcf60a4 in BESRequestHandlerList::execute_each(BESDataHandlerInterface&) BESRequestHandlerList.cc:167 #27 0x111845ff0 in BESDASResponseHandler::execute(BESDataHandlerInterface&) BESDASResponseHandler.cc:95 #28 0x10e112d5a in BESXMLInterface::execute_data_request_plan() BESXMLInterface.cc:285 #29 0x10db6bb8d in BESInterface::execute_request(std::__1::basic_string, std::__1::allocator > const&) BESInterface.cc:513 SUMMARY: AddressSanitizer: heap-buffer-overflow (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x4f3fd) in __asan_memcpy Shadow bytes around the buggy address: 0x1c04000017b0: fa fa 00 fa fa fa fd fd fa fa 00 00 fa fa 00 00 0x1c04000017c0: fa fa 00 fa fa fa 00 fa fa fa 00 fa fa fa 00 fa 0x1c04000017d0: fa fa fd fa fa fa 00 fa fa fa 00 fa fa fa 00 fa 0x1c04000017e0: fa fa 00 fa fa fa 00 fa fa fa 00 fa fa fa fd fa 0x1c04000017f0: fa fa 04 fa fa fa 04 fa fa fa 00 fa fa fa 00 fa =>0x1c0400001800: fa fa 00 fa fa fa 00[04]fa fa 00 fa fa fa 00 04 0x1c0400001810: fa fa 00 04 fa fa 00 fa fa fa fa fa fa fa fa fa 0x1c0400001820: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c0400001830: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c0400001840: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c0400001850: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa Shadow byte legend (one shadow byte represents 8 application bytes): Addressable: 00 Partially addressable: 01 02 03 04 05 06 07 Heap left redzone: fa Freed heap region: fd Stack left redzone: f1 Stack mid redzone: f2 Stack right redzone: f3 Stack after return: f5 Stack use after scope: f8 Global redzone: f9 Global init order: f6 Poisoned by user: f7 Container overflow: fc Array cookie: ac Intra object redzone: bb ASan internal: fe Left alloca redzone: ca Right alloca redzone: cb ==80367==ABORTING /Users/jimg/src/opendap/hyrax_git/bes/modules/ncml_module/tests/testsuite.dir/at-groups/529/test-source: line 44: 80367 Abort trap: 6 besstandalone -c $abs_builddir/bes.conf -i ./test.bescmd stdout: ./aggregations.at:297: exit code was 134, expected 0 529. aggregations.at:297: 529. Comparing das response for agg/joinExisting_virtual.ncml to baseline ${abs_srcdir}/baselines/agg/joinExisting_virtual.ncml (aggregations.at:297): FAILED (aggregations.at:297) # -*- compilation -*- 530. aggregations.at:297: testing Comparing dds response for agg/joinExisting_virtual.ncml to baseline ${abs_srcdir}/baselines/agg/joinExisting_virtual.ncml ... ./aggregations.at:297: besstandalone -c $abs_builddir/bes.conf -i ./test.bescmd stderr: Width: 12 Name: V Width: 12 Name: V Width: 40 Name: V ================================================================= ==80368==ERROR: AddressSanitizer: heap-buffer-overflow on address 0x60200000c01c at pc 0x000106e6b3fe bp 0x7ffee9529f70 sp 0x7ffee9529720 READ of size 40 at 0x60200000c01c thread T0 #0 0x106e6b3fd in __asan_memcpy (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x4f3fd) Provided dSYM: [/Users/jimg/src/opendap/hyrax_git/build/lib/libdap.25.dylib.dSYM/Contents/Resources/DWARF/libdap.25.dylib] does not match symbol owner 0x7fd572206200 #1 0x10aa93f39 in libdap::Vector::val2buf(void*, bool) Vector.cc:1212 #2 0x10aa7d5e7 in libdap::Vector::m_duplicate(libdap::Vector const&) Vector.cc:116 #3 0x10aa81733 in libdap::Vector::Vector(libdap::Vector const&) Vector.cc:297 #4 0x10aacf385 in libdap::Array::Array(libdap::Array const&) Array.cc:164 #5 0x1122f28da in agg_util::ArrayAggregationBase::ArrayAggregationBase(agg_util::ArrayAggregationBase const&) ArrayAggregationBase.cc:56 #6 0x112309476 in agg_util::ArrayJoinExistingAggregation::ArrayJoinExistingAggregation(agg_util::ArrayJoinExistingAggregation const&) ArrayJoinExistingAggregation.cc:79 #7 0x1123095bc in agg_util::ArrayJoinExistingAggregation::ArrayJoinExistingAggregation(agg_util::ArrayJoinExistingAggregation const&) ArrayJoinExistingAggregation.cc:80 #8 0x1123097ac in agg_util::ArrayJoinExistingAggregation::ptr_duplicate() ArrayJoinExistingAggregation.cc:105 #9 0x10a9800fd in libdap::DDS::add_var(libdap::BaseType*) DDS.cc:607 #10 0x112249678 in ncml_module::AggregationElement::processAggVarJoinExistingForArray(libdap::DDS&, libdap::Array const&, agg_util::Dimension const&, std::__1::vector, std::__1::allocator > > const&) AggregationElement.cc:912 #11 0x112227ae0 in ncml_module::AggregationElement::processJoinExistingOnAggVar(libdap::DDS*, std::__1::basic_string, std::__1::allocator > const&, libdap::DDS const&) AggregationElement.cc:830 #12 0x1121db028 in ncml_module::AggregationElement::processJoinExisting() AggregationElement.cc:510 #13 0x1121cb6c7 in ncml_module::AggregationElement::handleEnd() AggregationElement.cc:221 #14 0x112619b9f in ncml_module::NCMLParser::processEndNCMLElement(std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:1186 #15 0x11262135b in ncml_module::NCMLParser::onEndElementWithNamespace(std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:324 #16 0x1127858c9 in ncmlSax2EndElementNs(void*, unsigned char const*, unsigned char const*, unsigned char const*) SaxParserWrapper.cc:242 #17 0x7fff597e1d8e in xmlParseEndTag2 (libxml2.2.dylib:x86_64+0x37d8e) #18 0x7fff597e0440 in xmlParseElement (libxml2.2.dylib:x86_64+0x36440) #19 0x7fff597e005a in xmlParseContent (libxml2.2.dylib:x86_64+0x3605a) #20 0x7fff597e03f1 in xmlParseElement (libxml2.2.dylib:x86_64+0x363f1) #21 0x7fff597e2b7a in xmlParseDocument (libxml2.2.dylib:x86_64+0x38b7a) #22 0x1127769ae in ncml_module::SaxParserWrapper::parse(std::__1::basic_string, std::__1::allocator > const&) SaxParserWrapper.cc:338 #23 0x11260bd0b in ncml_module::NCMLParser::parseInto(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType, BESDapResponse*) NCMLParser.cc:185 #24 0x112687aae in ncml_module::NCMLRequestHandler::ncml_build_dds(BESDataHandlerInterface&) NCMLRequestHandler.cc:260 #25 0x10690bc8f in BESRequestHandlerList::execute_current(BESDataHandlerInterface&) BESRequestHandlerList.cc:273 #26 0x10690a0a4 in BESRequestHandlerList::execute_each(BESDataHandlerInterface&) BESRequestHandlerList.cc:167 #27 0x10a528048 in BESDDSResponseHandler::execute(BESDataHandlerInterface&) BESDDSResponseHandler.cc:107 #28 0x106d20d5a in BESXMLInterface::execute_data_request_plan() BESXMLInterface.cc:285 #29 0x10677fb8d in BESInterface::execute_request(std::__1::basic_string, std::__1::allocator > const&) BESInterface.cc:513 #30 0x1066e68d8 in StandAloneClient::executeCommand(std::__1::basic_string, std::__1::allocator > const&, int) StandAloneClient.cc:237 #31 0x1066e43aa in StandAloneClient::executeCommands(std::__1::basic_ifstream >&, int) StandAloneClient.cc:349 #32 0x1066c9e6d in StandAloneApp::run() StandAloneApp.cc:251 #33 0x1069efc24 in BESApp::main(int, char**) BESApp.cc:58 #34 0x1066cd12e in main StandAloneApp.cc:345 #35 0x7fff59ad3014 in start (libdyld.dylib:x86_64+0x1014) 0x60200000c01c is located 0 bytes to the right of 12-byte region [0x60200000c010,0x60200000c01c) allocated by thread T0 here: #0 0x106e7ecb2 in wrap__Znam (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x62cb2) #1 0x10aa7eb3c in libdap::Vector::m_create_cardinal_data_buffer_for_type(unsigned int) Vector.cc:203 #2 0x10aa93c15 in libdap::Vector::val2buf(void*, bool) Vector.cc:1206 #3 0x10aa7d5e7 in libdap::Vector::m_duplicate(libdap::Vector const&) Vector.cc:116 #4 0x10aa81733 in libdap::Vector::Vector(libdap::Vector const&) Vector.cc:297 #5 0x10aacf385 in libdap::Array::Array(libdap::Array const&) Array.cc:164 #6 0x1122f2116 in agg_util::ArrayAggregationBase::ArrayAggregationBase(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&) ArrayAggregationBase.cc:50 #7 0x11230507b in agg_util::ArrayJoinExistingAggregation::ArrayJoinExistingAggregation(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&, agg_util::Dimension const&) ArrayJoinExistingAggregation.cc:54 #8 0x112309444 in agg_util::ArrayJoinExistingAggregation::ArrayJoinExistingAggregation(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&, agg_util::Dimension const&) ArrayJoinExistingAggregation.cc:55 #9 0x11224703e in ncml_module::AggregationElement::processAggVarJoinExistingForArray(libdap::DDS&, libdap::Array const&, agg_util::Dimension const&, std::__1::vector, std::__1::allocator > > const&) AggregationElement.cc:900 #10 0x112227ae0 in ncml_module::AggregationElement::processJoinExistingOnAggVar(libdap::DDS*, std::__1::basic_string, std::__1::allocator > const&, libdap::DDS const&) AggregationElement.cc:830 #11 0x1121db028 in ncml_module::AggregationElement::processJoinExisting() AggregationElement.cc:510 #12 0x1121cb6c7 in ncml_module::AggregationElement::handleEnd() AggregationElement.cc:221 #13 0x112619b9f in ncml_module::NCMLParser::processEndNCMLElement(std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:1186 #14 0x11262135b in ncml_module::NCMLParser::onEndElementWithNamespace(std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:324 #15 0x1127858c9 in ncmlSax2EndElementNs(void*, unsigned char const*, unsigned char const*, unsigned char const*) SaxParserWrapper.cc:242 #16 0x7fff597e1d8e in xmlParseEndTag2 (libxml2.2.dylib:x86_64+0x37d8e) #17 0x7fff597e0440 in xmlParseElement (libxml2.2.dylib:x86_64+0x36440) #18 0x7fff597e005a in xmlParseContent (libxml2.2.dylib:x86_64+0x3605a) #19 0x7fff597e03f1 in xmlParseElement (libxml2.2.dylib:x86_64+0x363f1) #20 0x7fff597e2b7a in xmlParseDocument (libxml2.2.dylib:x86_64+0x38b7a) #21 0x1127769ae in ncml_module::SaxParserWrapper::parse(std::__1::basic_string, std::__1::allocator > const&) SaxParserWrapper.cc:338 #22 0x11260bd0b in ncml_module::NCMLParser::parseInto(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType, BESDapResponse*) NCMLParser.cc:185 #23 0x112687aae in ncml_module::NCMLRequestHandler::ncml_build_dds(BESDataHandlerInterface&) NCMLRequestHandler.cc:260 #24 0x10690bc8f in BESRequestHandlerList::execute_current(BESDataHandlerInterface&) BESRequestHandlerList.cc:273 #25 0x10690a0a4 in BESRequestHandlerList::execute_each(BESDataHandlerInterface&) BESRequestHandlerList.cc:167 #26 0x10a528048 in BESDDSResponseHandler::execute(BESDataHandlerInterface&) BESDDSResponseHandler.cc:107 #27 0x106d20d5a in BESXMLInterface::execute_data_request_plan() BESXMLInterface.cc:285 #28 0x10677fb8d in BESInterface::execute_request(std::__1::basic_string, std::__1::allocator > const&) BESInterface.cc:513 #29 0x1066e68d8 in StandAloneClient::executeCommand(std::__1::basic_string, std::__1::allocator > const&, int) StandAloneClient.cc:237 SUMMARY: AddressSanitizer: heap-buffer-overflow (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x4f3fd) in __asan_memcpy Shadow bytes around the buggy address: 0x1c04000017b0: fa fa fd fd fa fa 00 00 fa fa 00 00 fa fa 00 fa 0x1c04000017c0: fa fa 00 fa fa fa 00 fa fa fa 00 fa fa fa fd fa 0x1c04000017d0: fa fa 00 fa fa fa 00 fa fa fa 00 fa fa fa 00 fa 0x1c04000017e0: fa fa 00 fa fa fa 00 fa fa fa fd fa fa fa 04 fa 0x1c04000017f0: fa fa 04 fa fa fa 00 fa fa fa 00 fa fa fa 00 fa =>0x1c0400001800: fa fa 00[04]fa fa 00 fa fa fa 00 04 fa fa 00 04 0x1c0400001810: fa fa 00 fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c0400001820: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c0400001830: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c0400001840: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c0400001850: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa Shadow byte legend (one shadow byte represents 8 application bytes): Addressable: 00 Partially addressable: 01 02 03 04 05 06 07 Heap left redzone: fa Freed heap region: fd Stack left redzone: f1 Stack mid redzone: f2 Stack right redzone: f3 Stack after return: f5 Stack use after scope: f8 Global redzone: f9 Global init order: f6 Poisoned by user: f7 Container overflow: fc Array cookie: ac Intra object redzone: bb ASan internal: fe Left alloca redzone: ca Right alloca redzone: cb ==80368==ABORTING /Users/jimg/src/opendap/hyrax_git/bes/modules/ncml_module/tests/testsuite.dir/at-groups/530/test-source: line 44: 80368 Abort trap: 6 besstandalone -c $abs_builddir/bes.conf -i ./test.bescmd stdout: ./aggregations.at:297: exit code was 134, expected 0 530. aggregations.at:297: 530. Comparing dds response for agg/joinExisting_virtual.ncml to baseline ${abs_srcdir}/baselines/agg/joinExisting_virtual.ncml (aggregations.at:297): FAILED (aggregations.at:297) # -*- compilation -*- 531. aggregations.at:297: testing Comparing ddx response for agg/joinExisting_virtual.ncml to baseline ${abs_srcdir}/baselines/agg/joinExisting_virtual.ncml ... ./aggregations.at:297: besstandalone -c $abs_builddir/bes.conf -i ./test.bescmd stderr: Width: 12 Name: V Width: 12 Name: V Width: 40 Name: V ================================================================= ==80416==ERROR: AddressSanitizer: heap-buffer-overflow on address 0x60200000c01c at pc 0x0001101d83fe bp 0x7ffee01c0b10 sp 0x7ffee01c02c0 READ of size 40 at 0x60200000c01c thread T0 #0 0x1101d83fd in __asan_memcpy (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x4f3fd) Provided dSYM: [/Users/jimg/src/opendap/hyrax_git/build/lib/libdap.25.dylib.dSYM/Contents/Resources/DWARF/libdap.25.dylib] does not match symbol owner 0x7ffa697060e0 #1 0x113d93f39 in libdap::Vector::val2buf(void*, bool) Vector.cc:1212 #2 0x113d7d5e7 in libdap::Vector::m_duplicate(libdap::Vector const&) Vector.cc:116 #3 0x113d81733 in libdap::Vector::Vector(libdap::Vector const&) Vector.cc:297 #4 0x113dcf385 in libdap::Array::Array(libdap::Array const&) Array.cc:164 #5 0x11add18da in agg_util::ArrayAggregationBase::ArrayAggregationBase(agg_util::ArrayAggregationBase const&) ArrayAggregationBase.cc:56 #6 0x11ade8476 in agg_util::ArrayJoinExistingAggregation::ArrayJoinExistingAggregation(agg_util::ArrayJoinExistingAggregation const&) ArrayJoinExistingAggregation.cc:79 #7 0x11ade85bc in agg_util::ArrayJoinExistingAggregation::ArrayJoinExistingAggregation(agg_util::ArrayJoinExistingAggregation const&) ArrayJoinExistingAggregation.cc:80 #8 0x11ade87ac in agg_util::ArrayJoinExistingAggregation::ptr_duplicate() ArrayJoinExistingAggregation.cc:105 #9 0x113c800fd in libdap::DDS::add_var(libdap::BaseType*) DDS.cc:607 #10 0x11ad28678 in ncml_module::AggregationElement::processAggVarJoinExistingForArray(libdap::DDS&, libdap::Array const&, agg_util::Dimension const&, std::__1::vector, std::__1::allocator > > const&) AggregationElement.cc:912 #11 0x11ad06ae0 in ncml_module::AggregationElement::processJoinExistingOnAggVar(libdap::DDS*, std::__1::basic_string, std::__1::allocator > const&, libdap::DDS const&) AggregationElement.cc:830 #12 0x11acba028 in ncml_module::AggregationElement::processJoinExisting() AggregationElement.cc:510 #13 0x11acaa6c7 in ncml_module::AggregationElement::handleEnd() AggregationElement.cc:221 #14 0x11b0f8b9f in ncml_module::NCMLParser::processEndNCMLElement(std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:1186 #15 0x11b10035b in ncml_module::NCMLParser::onEndElementWithNamespace(std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:324 #16 0x11b2648c9 in ncmlSax2EndElementNs(void*, unsigned char const*, unsigned char const*, unsigned char const*) SaxParserWrapper.cc:242 #17 0x7fff597e1d8e in xmlParseEndTag2 (libxml2.2.dylib:x86_64+0x37d8e) #18 0x7fff597e0440 in xmlParseElement (libxml2.2.dylib:x86_64+0x36440) #19 0x7fff597e005a in xmlParseContent (libxml2.2.dylib:x86_64+0x3605a) #20 0x7fff597e03f1 in xmlParseElement (libxml2.2.dylib:x86_64+0x363f1) #21 0x7fff597e2b7a in xmlParseDocument (libxml2.2.dylib:x86_64+0x38b7a) #22 0x11b2559ae in ncml_module::SaxParserWrapper::parse(std::__1::basic_string, std::__1::allocator > const&) SaxParserWrapper.cc:338 #23 0x11b0ead0b in ncml_module::NCMLParser::parseInto(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType, BESDapResponse*) NCMLParser.cc:185 #24 0x11b166aae in ncml_module::NCMLRequestHandler::ncml_build_dds(BESDataHandlerInterface&) NCMLRequestHandler.cc:260 #25 0x10fc76c8f in BESRequestHandlerList::execute_current(BESDataHandlerInterface&) BESRequestHandlerList.cc:273 #26 0x10fc750a4 in BESRequestHandlerList::execute_each(BESDataHandlerInterface&) BESRequestHandlerList.cc:167 #27 0x11382a5dc in BESDDXResponseHandler::execute(BESDataHandlerInterface&) BESDDXResponseHandler.cc:122 #28 0x11008ed5a in BESXMLInterface::execute_data_request_plan() BESXMLInterface.cc:285 #29 0x10faeab8d in BESInterface::execute_request(std::__1::basic_string, std::__1::allocator > const&) BESInterface.cc:513 #30 0x10fa4f8d8 in StandAloneClient::executeCommand(std::__1::basic_string, std::__1::allocator > const&, int) StandAloneClient.cc:237 #31 0x10fa4d3aa in StandAloneClient::executeCommands(std::__1::basic_ifstream >&, int) StandAloneClient.cc:349 #32 0x10fa32e6d in StandAloneApp::run() StandAloneApp.cc:251 #33 0x10fd5ac24 in BESApp::main(int, char**) BESApp.cc:58 #34 0x10fa3612e in main StandAloneApp.cc:345 #35 0x7fff59ad3014 in start (libdyld.dylib:x86_64+0x1014) 0x60200000c01c is located 0 bytes to the right of 12-byte region [0x60200000c010,0x60200000c01c) allocated by thread T0 here: #0 0x1101ebcb2 in wrap__Znam (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x62cb2) #1 0x113d7eb3c in libdap::Vector::m_create_cardinal_data_buffer_for_type(unsigned int) Vector.cc:203 #2 0x113d93c15 in libdap::Vector::val2buf(void*, bool) Vector.cc:1206 #3 0x113d7d5e7 in libdap::Vector::m_duplicate(libdap::Vector const&) Vector.cc:116 #4 0x113d81733 in libdap::Vector::Vector(libdap::Vector const&) Vector.cc:297 #5 0x113dcf385 in libdap::Array::Array(libdap::Array const&) Array.cc:164 #6 0x11add1116 in agg_util::ArrayAggregationBase::ArrayAggregationBase(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&) ArrayAggregationBase.cc:50 #7 0x11ade407b in agg_util::ArrayJoinExistingAggregation::ArrayJoinExistingAggregation(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&, agg_util::Dimension const&) ArrayJoinExistingAggregation.cc:54 #8 0x11ade8444 in agg_util::ArrayJoinExistingAggregation::ArrayJoinExistingAggregation(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&, agg_util::Dimension const&) ArrayJoinExistingAggregation.cc:55 #9 0x11ad2603e in ncml_module::AggregationElement::processAggVarJoinExistingForArray(libdap::DDS&, libdap::Array const&, agg_util::Dimension const&, std::__1::vector, std::__1::allocator > > const&) AggregationElement.cc:900 #10 0x11ad06ae0 in ncml_module::AggregationElement::processJoinExistingOnAggVar(libdap::DDS*, std::__1::basic_string, std::__1::allocator > const&, libdap::DDS const&) AggregationElement.cc:830 #11 0x11acba028 in ncml_module::AggregationElement::processJoinExisting() AggregationElement.cc:510 #12 0x11acaa6c7 in ncml_module::AggregationElement::handleEnd() AggregationElement.cc:221 #13 0x11b0f8b9f in ncml_module::NCMLParser::processEndNCMLElement(std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:1186 #14 0x11b10035b in ncml_module::NCMLParser::onEndElementWithNamespace(std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:324 #15 0x11b2648c9 in ncmlSax2EndElementNs(void*, unsigned char const*, unsigned char const*, unsigned char const*) SaxParserWrapper.cc:242 #16 0x7fff597e1d8e in xmlParseEndTag2 (libxml2.2.dylib:x86_64+0x37d8e) #17 0x7fff597e0440 in xmlParseElement (libxml2.2.dylib:x86_64+0x36440) #18 0x7fff597e005a in xmlParseContent (libxml2.2.dylib:x86_64+0x3605a) #19 0x7fff597e03f1 in xmlParseElement (libxml2.2.dylib:x86_64+0x363f1) #20 0x7fff597e2b7a in xmlParseDocument (libxml2.2.dylib:x86_64+0x38b7a) #21 0x11b2559ae in ncml_module::SaxParserWrapper::parse(std::__1::basic_string, std::__1::allocator > const&) SaxParserWrapper.cc:338 #22 0x11b0ead0b in ncml_module::NCMLParser::parseInto(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType, BESDapResponse*) NCMLParser.cc:185 #23 0x11b166aae in ncml_module::NCMLRequestHandler::ncml_build_dds(BESDataHandlerInterface&) NCMLRequestHandler.cc:260 #24 0x10fc76c8f in BESRequestHandlerList::execute_current(BESDataHandlerInterface&) BESRequestHandlerList.cc:273 #25 0x10fc750a4 in BESRequestHandlerList::execute_each(BESDataHandlerInterface&) BESRequestHandlerList.cc:167 #26 0x11382a5dc in BESDDXResponseHandler::execute(BESDataHandlerInterface&) BESDDXResponseHandler.cc:122 #27 0x11008ed5a in BESXMLInterface::execute_data_request_plan() BESXMLInterface.cc:285 #28 0x10faeab8d in BESInterface::execute_request(std::__1::basic_string, std::__1::allocator > const&) BESInterface.cc:513 #29 0x10fa4f8d8 in StandAloneClient::executeCommand(std::__1::basic_string, std::__1::allocator > const&, int) StandAloneClient.cc:237 SUMMARY: AddressSanitizer: heap-buffer-overflow (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x4f3fd) in __asan_memcpy Shadow bytes around the buggy address: 0x1c04000017b0: fa fa fd fd fa fa 00 00 fa fa 00 00 fa fa 00 fa 0x1c04000017c0: fa fa 00 fa fa fa 00 fa fa fa 00 fa fa fa fd fa 0x1c04000017d0: fa fa 00 fa fa fa 00 fa fa fa 00 fa fa fa 00 fa 0x1c04000017e0: fa fa 00 fa fa fa 00 fa fa fa fd fa fa fa 04 fa 0x1c04000017f0: fa fa 04 fa fa fa 00 fa fa fa 00 fa fa fa 00 fa =>0x1c0400001800: fa fa 00[04]fa fa 00 fa fa fa 00 04 fa fa 00 04 0x1c0400001810: fa fa 00 fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c0400001820: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c0400001830: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c0400001840: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c0400001850: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa Shadow byte legend (one shadow byte represents 8 application bytes): Addressable: 00 Partially addressable: 01 02 03 04 05 06 07 Heap left redzone: fa Freed heap region: fd Stack left redzone: f1 Stack mid redzone: f2 Stack right redzone: f3 Stack after return: f5 Stack use after scope: f8 Global redzone: f9 Global init order: f6 Poisoned by user: f7 Container overflow: fc Array cookie: ac Intra object redzone: bb ASan internal: fe Left alloca redzone: ca Right alloca redzone: cb ==80416==ABORTING /Users/jimg/src/opendap/hyrax_git/bes/modules/ncml_module/tests/testsuite.dir/at-groups/531/test-source: line 44: 80416 Abort trap: 6 besstandalone -c $abs_builddir/bes.conf -i ./test.bescmd stdout: ./aggregations.at:297: exit code was 134, expected 0 531. aggregations.at:297: 531. Comparing ddx response for agg/joinExisting_virtual.ncml to baseline ${abs_srcdir}/baselines/agg/joinExisting_virtual.ncml (aggregations.at:297): FAILED (aggregations.at:297) # -*- compilation -*- 532. aggregations.at:297: testing Comparing dods response for agg/joinExisting_virtual.ncml to baseline ${abs_srcdir}/baselines/agg/joinExisting_virtual.ncml ... ./aggregations.at:297: besstandalone -c $abs_builddir/bes.conf -i ./test.bescmd stderr: Width: 12 Name: V Width: 12 Name: V Width: 40 Name: V ================================================================= ==80422==ERROR: AddressSanitizer: heap-buffer-overflow on address 0x60200000c03c at pc 0x0001074553fe bp 0x7ffee8f3edf0 sp 0x7ffee8f3e5a0 READ of size 40 at 0x60200000c03c thread T0 #0 0x1074553fd in __asan_memcpy (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x4f3fd) Provided dSYM: [/Users/jimg/src/opendap/hyrax_git/build/lib/libdap.25.dylib.dSYM/Contents/Resources/DWARF/libdap.25.dylib] does not match symbol owner 0x7fd4e5c07f10 #1 0x10b002f39 in libdap::Vector::val2buf(void*, bool) Vector.cc:1212 #2 0x10afec5e7 in libdap::Vector::m_duplicate(libdap::Vector const&) Vector.cc:116 #3 0x10aff0733 in libdap::Vector::Vector(libdap::Vector const&) Vector.cc:297 #4 0x10b03e385 in libdap::Array::Array(libdap::Array const&) Array.cc:164 #5 0x1120538da in agg_util::ArrayAggregationBase::ArrayAggregationBase(agg_util::ArrayAggregationBase const&) ArrayAggregationBase.cc:56 #6 0x11206a476 in agg_util::ArrayJoinExistingAggregation::ArrayJoinExistingAggregation(agg_util::ArrayJoinExistingAggregation const&) ArrayJoinExistingAggregation.cc:79 #7 0x11206a5bc in agg_util::ArrayJoinExistingAggregation::ArrayJoinExistingAggregation(agg_util::ArrayJoinExistingAggregation const&) ArrayJoinExistingAggregation.cc:80 #8 0x11206a7ac in agg_util::ArrayJoinExistingAggregation::ptr_duplicate() ArrayJoinExistingAggregation.cc:105 #9 0x10aeef0fd in libdap::DDS::add_var(libdap::BaseType*) DDS.cc:607 #10 0x111faa678 in ncml_module::AggregationElement::processAggVarJoinExistingForArray(libdap::DDS&, libdap::Array const&, agg_util::Dimension const&, std::__1::vector, std::__1::allocator > > const&) AggregationElement.cc:912 #11 0x111f88ae0 in ncml_module::AggregationElement::processJoinExistingOnAggVar(libdap::DDS*, std::__1::basic_string, std::__1::allocator > const&, libdap::DDS const&) AggregationElement.cc:830 #12 0x111f3c028 in ncml_module::AggregationElement::processJoinExisting() AggregationElement.cc:510 #13 0x111f2c6c7 in ncml_module::AggregationElement::handleEnd() AggregationElement.cc:221 #14 0x11237ab9f in ncml_module::NCMLParser::processEndNCMLElement(std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:1186 #15 0x11238235b in ncml_module::NCMLParser::onEndElementWithNamespace(std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:324 #16 0x1124e68c9 in ncmlSax2EndElementNs(void*, unsigned char const*, unsigned char const*, unsigned char const*) SaxParserWrapper.cc:242 #17 0x7fff597e1d8e in xmlParseEndTag2 (libxml2.2.dylib:x86_64+0x37d8e) #18 0x7fff597e0440 in xmlParseElement (libxml2.2.dylib:x86_64+0x36440) #19 0x7fff597e005a in xmlParseContent (libxml2.2.dylib:x86_64+0x3605a) #20 0x7fff597e03f1 in xmlParseElement (libxml2.2.dylib:x86_64+0x363f1) #21 0x7fff597e2b7a in xmlParseDocument (libxml2.2.dylib:x86_64+0x38b7a) #22 0x1124d79ae in ncml_module::SaxParserWrapper::parse(std::__1::basic_string, std::__1::allocator > const&) SaxParserWrapper.cc:338 #23 0x11236cd0b in ncml_module::NCMLParser::parseInto(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType, BESDapResponse*) NCMLParser.cc:185 #24 0x1123ee346 in ncml_module::NCMLRequestHandler::ncml_build_data(BESDataHandlerInterface&) NCMLRequestHandler.cc:297 #25 0x106ef7c8f in BESRequestHandlerList::execute_current(BESDataHandlerInterface&) BESRequestHandlerList.cc:273 #26 0x106ef60a4 in BESRequestHandlerList::execute_each(BESDataHandlerInterface&) BESRequestHandlerList.cc:167 #27 0x10aa5988c in BESDataResponseHandler::execute(BESDataHandlerInterface&) BESDataResponseHandler.cc:148 #28 0x10730dd5a in BESXMLInterface::execute_data_request_plan() BESXMLInterface.cc:285 #29 0x106d6bb8d in BESInterface::execute_request(std::__1::basic_string, std::__1::allocator > const&) BESInterface.cc:513 #30 0x106cd18d8 in StandAloneClient::executeCommand(std::__1::basic_string, std::__1::allocator > const&, int) StandAloneClient.cc:237 #31 0x106ccf3aa in StandAloneClient::executeCommands(std::__1::basic_ifstream >&, int) StandAloneClient.cc:349 #32 0x106cb4e6d in StandAloneApp::run() StandAloneApp.cc:251 #33 0x106fdbc24 in BESApp::main(int, char**) BESApp.cc:58 #34 0x106cb812e in main StandAloneApp.cc:345 #35 0x7fff59ad3014 in start (libdyld.dylib:x86_64+0x1014) 0x60200000c03c is located 0 bytes to the right of 12-byte region [0x60200000c030,0x60200000c03c) allocated by thread T0 here: #0 0x107468cb2 in wrap__Znam (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x62cb2) #1 0x10afedb3c in libdap::Vector::m_create_cardinal_data_buffer_for_type(unsigned int) Vector.cc:203 #2 0x10b002c15 in libdap::Vector::val2buf(void*, bool) Vector.cc:1206 #3 0x10afec5e7 in libdap::Vector::m_duplicate(libdap::Vector const&) Vector.cc:116 #4 0x10aff0733 in libdap::Vector::Vector(libdap::Vector const&) Vector.cc:297 #5 0x10b03e385 in libdap::Array::Array(libdap::Array const&) Array.cc:164 #6 0x112053116 in agg_util::ArrayAggregationBase::ArrayAggregationBase(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&) ArrayAggregationBase.cc:50 #7 0x11206607b in agg_util::ArrayJoinExistingAggregation::ArrayJoinExistingAggregation(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&, agg_util::Dimension const&) ArrayJoinExistingAggregation.cc:54 #8 0x11206a444 in agg_util::ArrayJoinExistingAggregation::ArrayJoinExistingAggregation(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&, agg_util::Dimension const&) ArrayJoinExistingAggregation.cc:55 #9 0x111fa803e in ncml_module::AggregationElement::processAggVarJoinExistingForArray(libdap::DDS&, libdap::Array const&, agg_util::Dimension const&, std::__1::vector, std::__1::allocator > > const&) AggregationElement.cc:900 #10 0x111f88ae0 in ncml_module::AggregationElement::processJoinExistingOnAggVar(libdap::DDS*, std::__1::basic_string, std::__1::allocator > const&, libdap::DDS const&) AggregationElement.cc:830 #11 0x111f3c028 in ncml_module::AggregationElement::processJoinExisting() AggregationElement.cc:510 #12 0x111f2c6c7 in ncml_module::AggregationElement::handleEnd() AggregationElement.cc:221 #13 0x11237ab9f in ncml_module::NCMLParser::processEndNCMLElement(std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:1186 #14 0x11238235b in ncml_module::NCMLParser::onEndElementWithNamespace(std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:324 #15 0x1124e68c9 in ncmlSax2EndElementNs(void*, unsigned char const*, unsigned char const*, unsigned char const*) SaxParserWrapper.cc:242 #16 0x7fff597e1d8e in xmlParseEndTag2 (libxml2.2.dylib:x86_64+0x37d8e) #17 0x7fff597e0440 in xmlParseElement (libxml2.2.dylib:x86_64+0x36440) #18 0x7fff597e005a in xmlParseContent (libxml2.2.dylib:x86_64+0x3605a) #19 0x7fff597e03f1 in xmlParseElement (libxml2.2.dylib:x86_64+0x363f1) #20 0x7fff597e2b7a in xmlParseDocument (libxml2.2.dylib:x86_64+0x38b7a) #21 0x1124d79ae in ncml_module::SaxParserWrapper::parse(std::__1::basic_string, std::__1::allocator > const&) SaxParserWrapper.cc:338 #22 0x11236cd0b in ncml_module::NCMLParser::parseInto(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType, BESDapResponse*) NCMLParser.cc:185 #23 0x1123ee346 in ncml_module::NCMLRequestHandler::ncml_build_data(BESDataHandlerInterface&) NCMLRequestHandler.cc:297 #24 0x106ef7c8f in BESRequestHandlerList::execute_current(BESDataHandlerInterface&) BESRequestHandlerList.cc:273 #25 0x106ef60a4 in BESRequestHandlerList::execute_each(BESDataHandlerInterface&) BESRequestHandlerList.cc:167 #26 0x10aa5988c in BESDataResponseHandler::execute(BESDataHandlerInterface&) BESDataResponseHandler.cc:148 #27 0x10730dd5a in BESXMLInterface::execute_data_request_plan() BESXMLInterface.cc:285 #28 0x106d6bb8d in BESInterface::execute_request(std::__1::basic_string, std::__1::allocator > const&) BESInterface.cc:513 #29 0x106cd18d8 in StandAloneClient::executeCommand(std::__1::basic_string, std::__1::allocator > const&, int) StandAloneClient.cc:237 SUMMARY: AddressSanitizer: heap-buffer-overflow (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x4f3fd) in __asan_memcpy Shadow bytes around the buggy address: 0x1c04000017b0: fa fa 00 fa fa fa fd fd fa fa 00 00 fa fa 00 00 0x1c04000017c0: fa fa 00 fa fa fa 00 fa fa fa 00 fa fa fa 00 fa 0x1c04000017d0: fa fa fd fa fa fa 00 fa fa fa 00 fa fa fa 00 fa 0x1c04000017e0: fa fa 00 fa fa fa 00 fa fa fa 00 fa fa fa fd fa 0x1c04000017f0: fa fa 04 fa fa fa 04 fa fa fa 00 fa fa fa 00 fa =>0x1c0400001800: fa fa 00 fa fa fa 00[04]fa fa 00 fa fa fa 00 04 0x1c0400001810: fa fa 00 04 fa fa 00 fa fa fa fa fa fa fa fa fa 0x1c0400001820: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c0400001830: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c0400001840: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c0400001850: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa Shadow byte legend (one shadow byte represents 8 application bytes): Addressable: 00 Partially addressable: 01 02 03 04 05 06 07 Heap left redzone: fa Freed heap region: fd Stack left redzone: f1 Stack mid redzone: f2 Stack right redzone: f3 Stack after return: f5 Stack use after scope: f8 Global redzone: f9 Global init order: f6 Poisoned by user: f7 Container overflow: fc Array cookie: ac Intra object redzone: bb ASan internal: fe Left alloca redzone: ca Right alloca redzone: cb ==80422==ABORTING /Users/jimg/src/opendap/hyrax_git/bes/modules/ncml_module/tests/testsuite.dir/at-groups/532/test-source: line 44: 80422 Abort trap: 6 besstandalone -c $abs_builddir/bes.conf -i ./test.bescmd stdout: ./aggregations.at:297: exit code was 134, expected 0 532. aggregations.at:297: 532. Comparing dods response for agg/joinExisting_virtual.ncml to baseline ${abs_srcdir}/baselines/agg/joinExisting_virtual.ncml (aggregations.at:297): FAILED (aggregations.at:297) # -*- compilation -*- 533. aggregations.at:304: testing Comparing dods response for agg/joinExisting_virtual.ncml to baseline ${abs_srcdir}/baselines/agg/joinExisting_virtual_cons_1 ... ./aggregations.at:304: besstandalone -c $abs_builddir/bes.conf -i ./test.bescmd stderr: Width: 12 Name: V Width: 12 Name: V Width: 40 Name: V ================================================================= ==80468==ERROR: AddressSanitizer: heap-buffer-overflow on address 0x60200000c05c at pc 0x0001043ae3fe bp 0x7ffeebfeadf0 sp 0x7ffeebfea5a0 READ of size 40 at 0x60200000c05c thread T0 #0 0x1043ae3fd in __asan_memcpy (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x4f3fd) Provided dSYM: [/Users/jimg/src/opendap/hyrax_git/build/lib/libdap.25.dylib.dSYM/Contents/Resources/DWARF/libdap.25.dylib] does not match symbol owner 0x7f9fbf4083c0 #1 0x107f93f39 in libdap::Vector::val2buf(void*, bool) Vector.cc:1212 #2 0x107f7d5e7 in libdap::Vector::m_duplicate(libdap::Vector const&) Vector.cc:116 #3 0x107f81733 in libdap::Vector::Vector(libdap::Vector const&) Vector.cc:297 #4 0x107fcf385 in libdap::Array::Array(libdap::Array const&) Array.cc:164 #5 0x10f0458da in agg_util::ArrayAggregationBase::ArrayAggregationBase(agg_util::ArrayAggregationBase const&) ArrayAggregationBase.cc:56 #6 0x10f05c476 in agg_util::ArrayJoinExistingAggregation::ArrayJoinExistingAggregation(agg_util::ArrayJoinExistingAggregation const&) ArrayJoinExistingAggregation.cc:79 #7 0x10f05c5bc in agg_util::ArrayJoinExistingAggregation::ArrayJoinExistingAggregation(agg_util::ArrayJoinExistingAggregation const&) ArrayJoinExistingAggregation.cc:80 #8 0x10f05c7ac in agg_util::ArrayJoinExistingAggregation::ptr_duplicate() ArrayJoinExistingAggregation.cc:105 #9 0x107e800fd in libdap::DDS::add_var(libdap::BaseType*) DDS.cc:607 #10 0x10ef9c678 in ncml_module::AggregationElement::processAggVarJoinExistingForArray(libdap::DDS&, libdap::Array const&, agg_util::Dimension const&, std::__1::vector, std::__1::allocator > > const&) AggregationElement.cc:912 #11 0x10ef7aae0 in ncml_module::AggregationElement::processJoinExistingOnAggVar(libdap::DDS*, std::__1::basic_string, std::__1::allocator > const&, libdap::DDS const&) AggregationElement.cc:830 #12 0x10ef2e028 in ncml_module::AggregationElement::processJoinExisting() AggregationElement.cc:510 #13 0x10ef1e6c7 in ncml_module::AggregationElement::handleEnd() AggregationElement.cc:221 #14 0x10f36cb9f in ncml_module::NCMLParser::processEndNCMLElement(std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:1186 #15 0x10f37435b in ncml_module::NCMLParser::onEndElementWithNamespace(std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:324 #16 0x10f4d88c9 in ncmlSax2EndElementNs(void*, unsigned char const*, unsigned char const*, unsigned char const*) SaxParserWrapper.cc:242 #17 0x7fff597e1d8e in xmlParseEndTag2 (libxml2.2.dylib:x86_64+0x37d8e) #18 0x7fff597e0440 in xmlParseElement (libxml2.2.dylib:x86_64+0x36440) #19 0x7fff597e005a in xmlParseContent (libxml2.2.dylib:x86_64+0x3605a) #20 0x7fff597e03f1 in xmlParseElement (libxml2.2.dylib:x86_64+0x363f1) #21 0x7fff597e2b7a in xmlParseDocument (libxml2.2.dylib:x86_64+0x38b7a) #22 0x10f4c99ae in ncml_module::SaxParserWrapper::parse(std::__1::basic_string, std::__1::allocator > const&) SaxParserWrapper.cc:338 #23 0x10f35ed0b in ncml_module::NCMLParser::parseInto(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType, BESDapResponse*) NCMLParser.cc:185 #24 0x10f3e0346 in ncml_module::NCMLRequestHandler::ncml_build_data(BESDataHandlerInterface&) NCMLRequestHandler.cc:297 #25 0x103e4bc8f in BESRequestHandlerList::execute_current(BESDataHandlerInterface&) BESRequestHandlerList.cc:273 #26 0x103e4a0a4 in BESRequestHandlerList::execute_each(BESDataHandlerInterface&) BESRequestHandlerList.cc:167 #27 0x107a3288c in BESDataResponseHandler::execute(BESDataHandlerInterface&) BESDataResponseHandler.cc:148 #28 0x104267d5a in BESXMLInterface::execute_data_request_plan() BESXMLInterface.cc:285 #29 0x103cbfb8d in BESInterface::execute_request(std::__1::basic_string, std::__1::allocator > const&) BESInterface.cc:513 #30 0x103c258d8 in StandAloneClient::executeCommand(std::__1::basic_string, std::__1::allocator > const&, int) StandAloneClient.cc:237 #31 0x103c233aa in StandAloneClient::executeCommands(std::__1::basic_ifstream >&, int) StandAloneClient.cc:349 #32 0x103c08e6d in StandAloneApp::run() StandAloneApp.cc:251 #33 0x103f2fc24 in BESApp::main(int, char**) BESApp.cc:58 #34 0x103c0c12e in main StandAloneApp.cc:345 #35 0x7fff59ad3014 in start (libdyld.dylib:x86_64+0x1014) 0x60200000c05c is located 0 bytes to the right of 12-byte region [0x60200000c050,0x60200000c05c) allocated by thread T0 here: #0 0x1043c1cb2 in wrap__Znam (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x62cb2) #1 0x107f7eb3c in libdap::Vector::m_create_cardinal_data_buffer_for_type(unsigned int) Vector.cc:203 #2 0x107f93c15 in libdap::Vector::val2buf(void*, bool) Vector.cc:1206 #3 0x107f7d5e7 in libdap::Vector::m_duplicate(libdap::Vector const&) Vector.cc:116 #4 0x107f81733 in libdap::Vector::Vector(libdap::Vector const&) Vector.cc:297 #5 0x107fcf385 in libdap::Array::Array(libdap::Array const&) Array.cc:164 #6 0x10f045116 in agg_util::ArrayAggregationBase::ArrayAggregationBase(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&) ArrayAggregationBase.cc:50 #7 0x10f05807b in agg_util::ArrayJoinExistingAggregation::ArrayJoinExistingAggregation(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&, agg_util::Dimension const&) ArrayJoinExistingAggregation.cc:54 #8 0x10f05c444 in agg_util::ArrayJoinExistingAggregation::ArrayJoinExistingAggregation(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&, agg_util::Dimension const&) ArrayJoinExistingAggregation.cc:55 #9 0x10ef9a03e in ncml_module::AggregationElement::processAggVarJoinExistingForArray(libdap::DDS&, libdap::Array const&, agg_util::Dimension const&, std::__1::vector, std::__1::allocator > > const&) AggregationElement.cc:900 #10 0x10ef7aae0 in ncml_module::AggregationElement::processJoinExistingOnAggVar(libdap::DDS*, std::__1::basic_string, std::__1::allocator > const&, libdap::DDS const&) AggregationElement.cc:830 #11 0x10ef2e028 in ncml_module::AggregationElement::processJoinExisting() AggregationElement.cc:510 #12 0x10ef1e6c7 in ncml_module::AggregationElement::handleEnd() AggregationElement.cc:221 #13 0x10f36cb9f in ncml_module::NCMLParser::processEndNCMLElement(std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:1186 #14 0x10f37435b in ncml_module::NCMLParser::onEndElementWithNamespace(std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:324 #15 0x10f4d88c9 in ncmlSax2EndElementNs(void*, unsigned char const*, unsigned char const*, unsigned char const*) SaxParserWrapper.cc:242 #16 0x7fff597e1d8e in xmlParseEndTag2 (libxml2.2.dylib:x86_64+0x37d8e) #17 0x7fff597e0440 in xmlParseElement (libxml2.2.dylib:x86_64+0x36440) #18 0x7fff597e005a in xmlParseContent (libxml2.2.dylib:x86_64+0x3605a) #19 0x7fff597e03f1 in xmlParseElement (libxml2.2.dylib:x86_64+0x363f1) #20 0x7fff597e2b7a in xmlParseDocument (libxml2.2.dylib:x86_64+0x38b7a) #21 0x10f4c99ae in ncml_module::SaxParserWrapper::parse(std::__1::basic_string, std::__1::allocator > const&) SaxParserWrapper.cc:338 #22 0x10f35ed0b in ncml_module::NCMLParser::parseInto(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType, BESDapResponse*) NCMLParser.cc:185 #23 0x10f3e0346 in ncml_module::NCMLRequestHandler::ncml_build_data(BESDataHandlerInterface&) NCMLRequestHandler.cc:297 #24 0x103e4bc8f in BESRequestHandlerList::execute_current(BESDataHandlerInterface&) BESRequestHandlerList.cc:273 #25 0x103e4a0a4 in BESRequestHandlerList::execute_each(BESDataHandlerInterface&) BESRequestHandlerList.cc:167 #26 0x107a3288c in BESDataResponseHandler::execute(BESDataHandlerInterface&) BESDataResponseHandler.cc:148 #27 0x104267d5a in BESXMLInterface::execute_data_request_plan() BESXMLInterface.cc:285 #28 0x103cbfb8d in BESInterface::execute_request(std::__1::basic_string, std::__1::allocator > const&) BESInterface.cc:513 #29 0x103c258d8 in StandAloneClient::executeCommand(std::__1::basic_string, std::__1::allocator > const&, int) StandAloneClient.cc:237 SUMMARY: AddressSanitizer: heap-buffer-overflow (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x4f3fd) in __asan_memcpy Shadow bytes around the buggy address: 0x1c04000017b0: fa fa 00 fa fa fa 00 fa fa fa fd fd fa fa 00 00 0x1c04000017c0: fa fa 00 00 fa fa 00 fa fa fa 00 fa fa fa 00 fa 0x1c04000017d0: fa fa 00 fa fa fa fd fa fa fa 00 fa fa fa 00 fa 0x1c04000017e0: fa fa 00 fa fa fa 00 fa fa fa 00 fa fa fa 00 fa 0x1c04000017f0: fa fa fd fa fa fa 04 fa fa fa 04 fa fa fa 00 fa =>0x1c0400001800: fa fa 00 fa fa fa 00 fa fa fa 00[04]fa fa 00 fa 0x1c0400001810: fa fa 00 04 fa fa 00 04 fa fa 00 fa fa fa fa fa 0x1c0400001820: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c0400001830: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c0400001840: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c0400001850: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa Shadow byte legend (one shadow byte represents 8 application bytes): Addressable: 00 Partially addressable: 01 02 03 04 05 06 07 Heap left redzone: fa Freed heap region: fd Stack left redzone: f1 Stack mid redzone: f2 Stack right redzone: f3 Stack after return: f5 Stack use after scope: f8 Global redzone: f9 Global init order: f6 Poisoned by user: f7 Container overflow: fc Array cookie: ac Intra object redzone: bb ASan internal: fe Left alloca redzone: ca Right alloca redzone: cb ==80468==ABORTING /Users/jimg/src/opendap/hyrax_git/bes/modules/ncml_module/tests/testsuite.dir/at-groups/533/test-source: line 44: 80468 Abort trap: 6 besstandalone -c $abs_builddir/bes.conf -i ./test.bescmd stdout: ./aggregations.at:304: exit code was 134, expected 0 533. aggregations.at:304: 533. Comparing dods response for agg/joinExisting_virtual.ncml to baseline ${abs_srcdir}/baselines/agg/joinExisting_virtual_cons_1 (aggregations.at:304): FAILED (aggregations.at:304) # -*- compilation -*- 534. aggregations.at:307: testing Comparing dods response for agg/joinExisting_virtual.ncml to baseline ${abs_srcdir}/baselines/agg/joinExisting_virtual_cons_2 ... ./aggregations.at:307: besstandalone -c $abs_builddir/bes.conf -i ./test.bescmd stderr: Width: 12 Name: V Width: 12 Name: V Width: 40 Name: V ================================================================= ==80539==ERROR: AddressSanitizer: heap-buffer-overflow on address 0x60200000c05c at pc 0x0001057913fe bp 0x7ffeeabfcdf0 sp 0x7ffeeabfc5a0 READ of size 40 at 0x60200000c05c thread T0 #0 0x1057913fd in __asan_memcpy (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x4f3fd) Provided dSYM: [/Users/jimg/src/opendap/hyrax_git/build/lib/libdap.25.dylib.dSYM/Contents/Resources/DWARF/libdap.25.dylib] does not match symbol owner 0x7fefd4705f00 #1 0x109393f39 in libdap::Vector::val2buf(void*, bool) Vector.cc:1212 #2 0x10937d5e7 in libdap::Vector::m_duplicate(libdap::Vector const&) Vector.cc:116 #3 0x109381733 in libdap::Vector::Vector(libdap::Vector const&) Vector.cc:297 #4 0x1093cf385 in libdap::Array::Array(libdap::Array const&) Array.cc:164 #5 0x1103958da in agg_util::ArrayAggregationBase::ArrayAggregationBase(agg_util::ArrayAggregationBase const&) ArrayAggregationBase.cc:56 #6 0x1103ac476 in agg_util::ArrayJoinExistingAggregation::ArrayJoinExistingAggregation(agg_util::ArrayJoinExistingAggregation const&) ArrayJoinExistingAggregation.cc:79 #7 0x1103ac5bc in agg_util::ArrayJoinExistingAggregation::ArrayJoinExistingAggregation(agg_util::ArrayJoinExistingAggregation const&) ArrayJoinExistingAggregation.cc:80 #8 0x1103ac7ac in agg_util::ArrayJoinExistingAggregation::ptr_duplicate() ArrayJoinExistingAggregation.cc:105 #9 0x1092800fd in libdap::DDS::add_var(libdap::BaseType*) DDS.cc:607 #10 0x1102ec678 in ncml_module::AggregationElement::processAggVarJoinExistingForArray(libdap::DDS&, libdap::Array const&, agg_util::Dimension const&, std::__1::vector, std::__1::allocator > > const&) AggregationElement.cc:912 #11 0x1102caae0 in ncml_module::AggregationElement::processJoinExistingOnAggVar(libdap::DDS*, std::__1::basic_string, std::__1::allocator > const&, libdap::DDS const&) AggregationElement.cc:830 #12 0x11027e028 in ncml_module::AggregationElement::processJoinExisting() AggregationElement.cc:510 #13 0x11026e6c7 in ncml_module::AggregationElement::handleEnd() AggregationElement.cc:221 #14 0x1106bcb9f in ncml_module::NCMLParser::processEndNCMLElement(std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:1186 #15 0x1106c435b in ncml_module::NCMLParser::onEndElementWithNamespace(std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:324 #16 0x1108288c9 in ncmlSax2EndElementNs(void*, unsigned char const*, unsigned char const*, unsigned char const*) SaxParserWrapper.cc:242 #17 0x7fff597e1d8e in xmlParseEndTag2 (libxml2.2.dylib:x86_64+0x37d8e) #18 0x7fff597e0440 in xmlParseElement (libxml2.2.dylib:x86_64+0x36440) #19 0x7fff597e005a in xmlParseContent (libxml2.2.dylib:x86_64+0x3605a) #20 0x7fff597e03f1 in xmlParseElement (libxml2.2.dylib:x86_64+0x363f1) #21 0x7fff597e2b7a in xmlParseDocument (libxml2.2.dylib:x86_64+0x38b7a) #22 0x1108199ae in ncml_module::SaxParserWrapper::parse(std::__1::basic_string, std::__1::allocator > const&) SaxParserWrapper.cc:338 #23 0x1106aed0b in ncml_module::NCMLParser::parseInto(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType, BESDapResponse*) NCMLParser.cc:185 #24 0x110730346 in ncml_module::NCMLRequestHandler::ncml_build_data(BESDataHandlerInterface&) NCMLRequestHandler.cc:297 #25 0x105235c8f in BESRequestHandlerList::execute_current(BESDataHandlerInterface&) BESRequestHandlerList.cc:273 #26 0x1052340a4 in BESRequestHandlerList::execute_each(BESDataHandlerInterface&) BESRequestHandlerList.cc:167 #27 0x108e3288c in BESDataResponseHandler::execute(BESDataHandlerInterface&) BESDataResponseHandler.cc:148 #28 0x10564bd5a in BESXMLInterface::execute_data_request_plan() BESXMLInterface.cc:285 #29 0x1050a9b8d in BESInterface::execute_request(std::__1::basic_string, std::__1::allocator > const&) BESInterface.cc:513 #30 0x1050138d8 in StandAloneClient::executeCommand(std::__1::basic_string, std::__1::allocator > const&, int) StandAloneClient.cc:237 #31 0x1050113aa in StandAloneClient::executeCommands(std::__1::basic_ifstream >&, int) StandAloneClient.cc:349 #32 0x104ff6e6d in StandAloneApp::run() StandAloneApp.cc:251 #33 0x105319c24 in BESApp::main(int, char**) BESApp.cc:58 #34 0x104ffa12e in main StandAloneApp.cc:345 #35 0x7fff59ad3014 in start (libdyld.dylib:x86_64+0x1014) 0x60200000c05c is located 0 bytes to the right of 12-byte region [0x60200000c050,0x60200000c05c) allocated by thread T0 here: #0 0x1057a4cb2 in wrap__Znam (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x62cb2) #1 0x10937eb3c in libdap::Vector::m_create_cardinal_data_buffer_for_type(unsigned int) Vector.cc:203 #2 0x109393c15 in libdap::Vector::val2buf(void*, bool) Vector.cc:1206 #3 0x10937d5e7 in libdap::Vector::m_duplicate(libdap::Vector const&) Vector.cc:116 #4 0x109381733 in libdap::Vector::Vector(libdap::Vector const&) Vector.cc:297 #5 0x1093cf385 in libdap::Array::Array(libdap::Array const&) Array.cc:164 #6 0x110395116 in agg_util::ArrayAggregationBase::ArrayAggregationBase(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&) ArrayAggregationBase.cc:50 #7 0x1103a807b in agg_util::ArrayJoinExistingAggregation::ArrayJoinExistingAggregation(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&, agg_util::Dimension const&) ArrayJoinExistingAggregation.cc:54 #8 0x1103ac444 in agg_util::ArrayJoinExistingAggregation::ArrayJoinExistingAggregation(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&, agg_util::Dimension const&) ArrayJoinExistingAggregation.cc:55 #9 0x1102ea03e in ncml_module::AggregationElement::processAggVarJoinExistingForArray(libdap::DDS&, libdap::Array const&, agg_util::Dimension const&, std::__1::vector, std::__1::allocator > > const&) AggregationElement.cc:900 #10 0x1102caae0 in ncml_module::AggregationElement::processJoinExistingOnAggVar(libdap::DDS*, std::__1::basic_string, std::__1::allocator > const&, libdap::DDS const&) AggregationElement.cc:830 #11 0x11027e028 in ncml_module::AggregationElement::processJoinExisting() AggregationElement.cc:510 #12 0x11026e6c7 in ncml_module::AggregationElement::handleEnd() AggregationElement.cc:221 #13 0x1106bcb9f in ncml_module::NCMLParser::processEndNCMLElement(std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:1186 #14 0x1106c435b in ncml_module::NCMLParser::onEndElementWithNamespace(std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:324 #15 0x1108288c9 in ncmlSax2EndElementNs(void*, unsigned char const*, unsigned char const*, unsigned char const*) SaxParserWrapper.cc:242 #16 0x7fff597e1d8e in xmlParseEndTag2 (libxml2.2.dylib:x86_64+0x37d8e) #17 0x7fff597e0440 in xmlParseElement (libxml2.2.dylib:x86_64+0x36440) #18 0x7fff597e005a in xmlParseContent (libxml2.2.dylib:x86_64+0x3605a) #19 0x7fff597e03f1 in xmlParseElement (libxml2.2.dylib:x86_64+0x363f1) #20 0x7fff597e2b7a in xmlParseDocument (libxml2.2.dylib:x86_64+0x38b7a) #21 0x1108199ae in ncml_module::SaxParserWrapper::parse(std::__1::basic_string, std::__1::allocator > const&) SaxParserWrapper.cc:338 #22 0x1106aed0b in ncml_module::NCMLParser::parseInto(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType, BESDapResponse*) NCMLParser.cc:185 #23 0x110730346 in ncml_module::NCMLRequestHandler::ncml_build_data(BESDataHandlerInterface&) NCMLRequestHandler.cc:297 #24 0x105235c8f in BESRequestHandlerList::execute_current(BESDataHandlerInterface&) BESRequestHandlerList.cc:273 #25 0x1052340a4 in BESRequestHandlerList::execute_each(BESDataHandlerInterface&) BESRequestHandlerList.cc:167 #26 0x108e3288c in BESDataResponseHandler::execute(BESDataHandlerInterface&) BESDataResponseHandler.cc:148 #27 0x10564bd5a in BESXMLInterface::execute_data_request_plan() BESXMLInterface.cc:285 #28 0x1050a9b8d in BESInterface::execute_request(std::__1::basic_string, std::__1::allocator > const&) BESInterface.cc:513 #29 0x1050138d8 in StandAloneClient::executeCommand(std::__1::basic_string, std::__1::allocator > const&, int) StandAloneClient.cc:237 SUMMARY: AddressSanitizer: heap-buffer-overflow (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x4f3fd) in __asan_memcpy Shadow bytes around the buggy address: 0x1c04000017b0: fa fa 00 fa fa fa 00 fa fa fa fd fd fa fa 00 00 0x1c04000017c0: fa fa 00 00 fa fa 00 fa fa fa 00 fa fa fa 00 fa 0x1c04000017d0: fa fa 00 fa fa fa fd fa fa fa 00 fa fa fa 00 fa 0x1c04000017e0: fa fa 00 fa fa fa 00 fa fa fa 00 fa fa fa 00 fa 0x1c04000017f0: fa fa fd fa fa fa 04 fa fa fa 04 fa fa fa 00 fa =>0x1c0400001800: fa fa 00 fa fa fa 00 fa fa fa 00[04]fa fa 00 fa 0x1c0400001810: fa fa 00 04 fa fa 00 04 fa fa 00 fa fa fa fa fa 0x1c0400001820: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c0400001830: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c0400001840: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c0400001850: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa Shadow byte legend (one shadow byte represents 8 application bytes): Addressable: 00 Partially addressable: 01 02 03 04 05 06 07 Heap left redzone: fa Freed heap region: fd Stack left redzone: f1 Stack mid redzone: f2 Stack right redzone: f3 Stack after return: f5 Stack use after scope: f8 Global redzone: f9 Global init order: f6 Poisoned by user: f7 Container overflow: fc Array cookie: ac Intra object redzone: bb ASan internal: fe Left alloca redzone: ca Right alloca redzone: cb ==80539==ABORTING /Users/jimg/src/opendap/hyrax_git/bes/modules/ncml_module/tests/testsuite.dir/at-groups/534/test-source: line 44: 80539 Abort trap: 6 besstandalone -c $abs_builddir/bes.conf -i ./test.bescmd stdout: ./aggregations.at:307: exit code was 134, expected 0 534. aggregations.at:307: 534. Comparing dods response for agg/joinExisting_virtual.ncml to baseline ${abs_srcdir}/baselines/agg/joinExisting_virtual_cons_2 (aggregations.at:307): FAILED (aggregations.at:307) # -*- compilation -*- 535. aggregations.at:310: testing Comparing dods response for agg/joinExisting_virtual.ncml to baseline ${abs_srcdir}/baselines/agg/joinExisting_virtual_cons_3 ... ./aggregations.at:310: besstandalone -c $abs_builddir/bes.conf -i ./test.bescmd stderr: Width: 12 Name: V Width: 12 Name: V Width: 40 Name: V ================================================================= ==80540==ERROR: AddressSanitizer: heap-buffer-overflow on address 0x60200000c05c at pc 0x000104a1a3fe bp 0x7ffeeb97bdf0 sp 0x7ffeeb97b5a0 READ of size 40 at 0x60200000c05c thread T0 #0 0x104a1a3fd in __asan_memcpy (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x4f3fd) Provided dSYM: [/Users/jimg/src/opendap/hyrax_git/build/lib/libdap.25.dylib.dSYM/Contents/Resources/DWARF/libdap.25.dylib] does not match symbol owner 0x7fe61d4059b0 #1 0x1085dbf39 in libdap::Vector::val2buf(void*, bool) Vector.cc:1212 #2 0x1085c55e7 in libdap::Vector::m_duplicate(libdap::Vector const&) Vector.cc:116 #3 0x1085c9733 in libdap::Vector::Vector(libdap::Vector const&) Vector.cc:297 #4 0x108617385 in libdap::Array::Array(libdap::Array const&) Array.cc:164 #5 0x10fde18da in agg_util::ArrayAggregationBase::ArrayAggregationBase(agg_util::ArrayAggregationBase const&) ArrayAggregationBase.cc:56 #6 0x10fdf8476 in agg_util::ArrayJoinExistingAggregation::ArrayJoinExistingAggregation(agg_util::ArrayJoinExistingAggregation const&) ArrayJoinExistingAggregation.cc:79 #7 0x10fdf85bc in agg_util::ArrayJoinExistingAggregation::ArrayJoinExistingAggregation(agg_util::ArrayJoinExistingAggregation const&) ArrayJoinExistingAggregation.cc:80 #8 0x10fdf87ac in agg_util::ArrayJoinExistingAggregation::ptr_duplicate() ArrayJoinExistingAggregation.cc:105 #9 0x1084c80fd in libdap::DDS::add_var(libdap::BaseType*) DDS.cc:607 #10 0x10fd38678 in ncml_module::AggregationElement::processAggVarJoinExistingForArray(libdap::DDS&, libdap::Array const&, agg_util::Dimension const&, std::__1::vector, std::__1::allocator > > const&) AggregationElement.cc:912 #11 0x10fd16ae0 in ncml_module::AggregationElement::processJoinExistingOnAggVar(libdap::DDS*, std::__1::basic_string, std::__1::allocator > const&, libdap::DDS const&) AggregationElement.cc:830 #12 0x10fcca028 in ncml_module::AggregationElement::processJoinExisting() AggregationElement.cc:510 #13 0x10fcba6c7 in ncml_module::AggregationElement::handleEnd() AggregationElement.cc:221 #14 0x110108b9f in ncml_module::NCMLParser::processEndNCMLElement(std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:1186 #15 0x11011035b in ncml_module::NCMLParser::onEndElementWithNamespace(std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:324 #16 0x1102748c9 in ncmlSax2EndElementNs(void*, unsigned char const*, unsigned char const*, unsigned char const*) SaxParserWrapper.cc:242 #17 0x7fff597e1d8e in xmlParseEndTag2 (libxml2.2.dylib:x86_64+0x37d8e) #18 0x7fff597e0440 in xmlParseElement (libxml2.2.dylib:x86_64+0x36440) #19 0x7fff597e005a in xmlParseContent (libxml2.2.dylib:x86_64+0x3605a) #20 0x7fff597e03f1 in xmlParseElement (libxml2.2.dylib:x86_64+0x363f1) #21 0x7fff597e2b7a in xmlParseDocument (libxml2.2.dylib:x86_64+0x38b7a) #22 0x1102659ae in ncml_module::SaxParserWrapper::parse(std::__1::basic_string, std::__1::allocator > const&) SaxParserWrapper.cc:338 #23 0x1100fad0b in ncml_module::NCMLParser::parseInto(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType, BESDapResponse*) NCMLParser.cc:185 #24 0x11017c346 in ncml_module::NCMLRequestHandler::ncml_build_data(BESDataHandlerInterface&) NCMLRequestHandler.cc:297 #25 0x1044b6c8f in BESRequestHandlerList::execute_current(BESDataHandlerInterface&) BESRequestHandlerList.cc:273 #26 0x1044b50a4 in BESRequestHandlerList::execute_each(BESDataHandlerInterface&) BESRequestHandlerList.cc:167 #27 0x10803288c in BESDataResponseHandler::execute(BESDataHandlerInterface&) BESDataResponseHandler.cc:148 #28 0x1048cfd5a in BESXMLInterface::execute_data_request_plan() BESXMLInterface.cc:285 #29 0x10432ab8d in BESInterface::execute_request(std::__1::basic_string, std::__1::allocator > const&) BESInterface.cc:513 #30 0x1042948d8 in StandAloneClient::executeCommand(std::__1::basic_string, std::__1::allocator > const&, int) StandAloneClient.cc:237 #31 0x1042923aa in StandAloneClient::executeCommands(std::__1::basic_ifstream >&, int) StandAloneClient.cc:349 #32 0x104277e6d in StandAloneApp::run() StandAloneApp.cc:251 #33 0x10459ac24 in BESApp::main(int, char**) BESApp.cc:58 #34 0x10427b12e in main StandAloneApp.cc:345 #35 0x7fff59ad3014 in start (libdyld.dylib:x86_64+0x1014) 0x60200000c05c is located 0 bytes to the right of 12-byte region [0x60200000c050,0x60200000c05c) allocated by thread T0 here: #0 0x104a2dcb2 in wrap__Znam (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x62cb2) #1 0x1085c6b3c in libdap::Vector::m_create_cardinal_data_buffer_for_type(unsigned int) Vector.cc:203 #2 0x1085dbc15 in libdap::Vector::val2buf(void*, bool) Vector.cc:1206 #3 0x1085c55e7 in libdap::Vector::m_duplicate(libdap::Vector const&) Vector.cc:116 #4 0x1085c9733 in libdap::Vector::Vector(libdap::Vector const&) Vector.cc:297 #5 0x108617385 in libdap::Array::Array(libdap::Array const&) Array.cc:164 #6 0x10fde1116 in agg_util::ArrayAggregationBase::ArrayAggregationBase(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&) ArrayAggregationBase.cc:50 #7 0x10fdf407b in agg_util::ArrayJoinExistingAggregation::ArrayJoinExistingAggregation(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&, agg_util::Dimension const&) ArrayJoinExistingAggregation.cc:54 #8 0x10fdf8444 in agg_util::ArrayJoinExistingAggregation::ArrayJoinExistingAggregation(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&, agg_util::Dimension const&) ArrayJoinExistingAggregation.cc:55 #9 0x10fd3603e in ncml_module::AggregationElement::processAggVarJoinExistingForArray(libdap::DDS&, libdap::Array const&, agg_util::Dimension const&, std::__1::vector, std::__1::allocator > > const&) AggregationElement.cc:900 #10 0x10fd16ae0 in ncml_module::AggregationElement::processJoinExistingOnAggVar(libdap::DDS*, std::__1::basic_string, std::__1::allocator > const&, libdap::DDS const&) AggregationElement.cc:830 #11 0x10fcca028 in ncml_module::AggregationElement::processJoinExisting() AggregationElement.cc:510 #12 0x10fcba6c7 in ncml_module::AggregationElement::handleEnd() AggregationElement.cc:221 #13 0x110108b9f in ncml_module::NCMLParser::processEndNCMLElement(std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:1186 #14 0x11011035b in ncml_module::NCMLParser::onEndElementWithNamespace(std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:324 #15 0x1102748c9 in ncmlSax2EndElementNs(void*, unsigned char const*, unsigned char const*, unsigned char const*) SaxParserWrapper.cc:242 #16 0x7fff597e1d8e in xmlParseEndTag2 (libxml2.2.dylib:x86_64+0x37d8e) #17 0x7fff597e0440 in xmlParseElement (libxml2.2.dylib:x86_64+0x36440) #18 0x7fff597e005a in xmlParseContent (libxml2.2.dylib:x86_64+0x3605a) #19 0x7fff597e03f1 in xmlParseElement (libxml2.2.dylib:x86_64+0x363f1) #20 0x7fff597e2b7a in xmlParseDocument (libxml2.2.dylib:x86_64+0x38b7a) #21 0x1102659ae in ncml_module::SaxParserWrapper::parse(std::__1::basic_string, std::__1::allocator > const&) SaxParserWrapper.cc:338 #22 0x1100fad0b in ncml_module::NCMLParser::parseInto(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType, BESDapResponse*) NCMLParser.cc:185 #23 0x11017c346 in ncml_module::NCMLRequestHandler::ncml_build_data(BESDataHandlerInterface&) NCMLRequestHandler.cc:297 #24 0x1044b6c8f in BESRequestHandlerList::execute_current(BESDataHandlerInterface&) BESRequestHandlerList.cc:273 #25 0x1044b50a4 in BESRequestHandlerList::execute_each(BESDataHandlerInterface&) BESRequestHandlerList.cc:167 #26 0x10803288c in BESDataResponseHandler::execute(BESDataHandlerInterface&) BESDataResponseHandler.cc:148 #27 0x1048cfd5a in BESXMLInterface::execute_data_request_plan() BESXMLInterface.cc:285 #28 0x10432ab8d in BESInterface::execute_request(std::__1::basic_string, std::__1::allocator > const&) BESInterface.cc:513 #29 0x1042948d8 in StandAloneClient::executeCommand(std::__1::basic_string, std::__1::allocator > const&, int) StandAloneClient.cc:237 SUMMARY: AddressSanitizer: heap-buffer-overflow (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x4f3fd) in __asan_memcpy Shadow bytes around the buggy address: 0x1c04000017b0: fa fa 00 fa fa fa 00 fa fa fa fd fd fa fa 00 00 0x1c04000017c0: fa fa 00 00 fa fa 00 fa fa fa 00 fa fa fa 00 fa 0x1c04000017d0: fa fa 00 fa fa fa fd fa fa fa 00 fa fa fa 00 fa 0x1c04000017e0: fa fa 00 fa fa fa 00 fa fa fa 00 fa fa fa 00 fa 0x1c04000017f0: fa fa fd fa fa fa 04 fa fa fa 04 fa fa fa 00 fa =>0x1c0400001800: fa fa 00 fa fa fa 00 fa fa fa 00[04]fa fa 00 fa 0x1c0400001810: fa fa 00 04 fa fa 00 04 fa fa 00 fa fa fa fa fa 0x1c0400001820: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c0400001830: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c0400001840: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c0400001850: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa Shadow byte legend (one shadow byte represents 8 application bytes): Addressable: 00 Partially addressable: 01 02 03 04 05 06 07 Heap left redzone: fa Freed heap region: fd Stack left redzone: f1 Stack mid redzone: f2 Stack right redzone: f3 Stack after return: f5 Stack use after scope: f8 Global redzone: f9 Global init order: f6 Poisoned by user: f7 Container overflow: fc Array cookie: ac Intra object redzone: bb ASan internal: fe Left alloca redzone: ca Right alloca redzone: cb ==80540==ABORTING /Users/jimg/src/opendap/hyrax_git/bes/modules/ncml_module/tests/testsuite.dir/at-groups/535/test-source: line 44: 80540 Abort trap: 6 besstandalone -c $abs_builddir/bes.conf -i ./test.bescmd stdout: ./aggregations.at:310: exit code was 134, expected 0 535. aggregations.at:310: 535. Comparing dods response for agg/joinExisting_virtual.ncml to baseline ${abs_srcdir}/baselines/agg/joinExisting_virtual_cons_3 (aggregations.at:310): FAILED (aggregations.at:310) # -*- compilation -*- 536. aggregations.at:313: testing Comparing dods response for agg/joinExisting_virtual.ncml to baseline ${abs_srcdir}/baselines/agg/joinExisting_virtual_cons_4 ... ./aggregations.at:313: besstandalone -c $abs_builddir/bes.conf -i ./test.bescmd stderr: Width: 12 Name: V Width: 12 Name: V Width: 40 Name: V ================================================================= ==80552==ERROR: AddressSanitizer: heap-buffer-overflow on address 0x60200000c05c at pc 0x000107f043fe bp 0x7ffee8496df0 sp 0x7ffee84965a0 READ of size 40 at 0x60200000c05c thread T0 #0 0x107f043fd in __asan_memcpy (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x4f3fd) Provided dSYM: [/Users/jimg/src/opendap/hyrax_git/build/lib/libdap.25.dylib.dSYM/Contents/Resources/DWARF/libdap.25.dylib] does not match symbol owner 0x7fc71e515060 #1 0x10c17bf39 in libdap::Vector::val2buf(void*, bool) Vector.cc:1212 #2 0x10c1655e7 in libdap::Vector::m_duplicate(libdap::Vector const&) Vector.cc:116 #3 0x10c169733 in libdap::Vector::Vector(libdap::Vector const&) Vector.cc:297 #4 0x10c1b7385 in libdap::Array::Array(libdap::Array const&) Array.cc:164 #5 0x112bba8da in agg_util::ArrayAggregationBase::ArrayAggregationBase(agg_util::ArrayAggregationBase const&) ArrayAggregationBase.cc:56 #6 0x112bd1476 in agg_util::ArrayJoinExistingAggregation::ArrayJoinExistingAggregation(agg_util::ArrayJoinExistingAggregation const&) ArrayJoinExistingAggregation.cc:79 #7 0x112bd15bc in agg_util::ArrayJoinExistingAggregation::ArrayJoinExistingAggregation(agg_util::ArrayJoinExistingAggregation const&) ArrayJoinExistingAggregation.cc:80 #8 0x112bd17ac in agg_util::ArrayJoinExistingAggregation::ptr_duplicate() ArrayJoinExistingAggregation.cc:105 #9 0x10c0680fd in libdap::DDS::add_var(libdap::BaseType*) DDS.cc:607 #10 0x112b11678 in ncml_module::AggregationElement::processAggVarJoinExistingForArray(libdap::DDS&, libdap::Array const&, agg_util::Dimension const&, std::__1::vector, std::__1::allocator > > const&) AggregationElement.cc:912 #11 0x112aefae0 in ncml_module::AggregationElement::processJoinExistingOnAggVar(libdap::DDS*, std::__1::basic_string, std::__1::allocator > const&, libdap::DDS const&) AggregationElement.cc:830 #12 0x112aa3028 in ncml_module::AggregationElement::processJoinExisting() AggregationElement.cc:510 #13 0x112a936c7 in ncml_module::AggregationElement::handleEnd() AggregationElement.cc:221 #14 0x112ee1b9f in ncml_module::NCMLParser::processEndNCMLElement(std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:1186 #15 0x112ee935b in ncml_module::NCMLParser::onEndElementWithNamespace(std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:324 #16 0x11304d8c9 in ncmlSax2EndElementNs(void*, unsigned char const*, unsigned char const*, unsigned char const*) SaxParserWrapper.cc:242 #17 0x7fff597e1d8e in xmlParseEndTag2 (libxml2.2.dylib:x86_64+0x37d8e) #18 0x7fff597e0440 in xmlParseElement (libxml2.2.dylib:x86_64+0x36440) #19 0x7fff597e005a in xmlParseContent (libxml2.2.dylib:x86_64+0x3605a) #20 0x7fff597e03f1 in xmlParseElement (libxml2.2.dylib:x86_64+0x363f1) #21 0x7fff597e2b7a in xmlParseDocument (libxml2.2.dylib:x86_64+0x38b7a) #22 0x11303e9ae in ncml_module::SaxParserWrapper::parse(std::__1::basic_string, std::__1::allocator > const&) SaxParserWrapper.cc:338 #23 0x112ed3d0b in ncml_module::NCMLParser::parseInto(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType, BESDapResponse*) NCMLParser.cc:185 #24 0x112f55346 in ncml_module::NCMLRequestHandler::ncml_build_data(BESDataHandlerInterface&) NCMLRequestHandler.cc:297 #25 0x10799fc8f in BESRequestHandlerList::execute_current(BESDataHandlerInterface&) BESRequestHandlerList.cc:273 #26 0x10799e0a4 in BESRequestHandlerList::execute_each(BESDataHandlerInterface&) BESRequestHandlerList.cc:167 #27 0x10953288c in BESDataResponseHandler::execute(BESDataHandlerInterface&) BESDataResponseHandler.cc:148 #28 0x107db9d5a in BESXMLInterface::execute_data_request_plan() BESXMLInterface.cc:285 #29 0x107813b8d in BESInterface::execute_request(std::__1::basic_string, std::__1::allocator > const&) BESInterface.cc:513 #30 0x1077798d8 in StandAloneClient::executeCommand(std::__1::basic_string, std::__1::allocator > const&, int) StandAloneClient.cc:237 #31 0x1077773aa in StandAloneClient::executeCommands(std::__1::basic_ifstream >&, int) StandAloneClient.cc:349 #32 0x10775ce6d in StandAloneApp::run() StandAloneApp.cc:251 #33 0x107a83c24 in BESApp::main(int, char**) BESApp.cc:58 #34 0x10776012e in main StandAloneApp.cc:345 #35 0x7fff59ad3014 in start (libdyld.dylib:x86_64+0x1014) 0x60200000c05c is located 0 bytes to the right of 12-byte region [0x60200000c050,0x60200000c05c) allocated by thread T0 here: #0 0x107f17cb2 in wrap__Znam (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x62cb2) #1 0x10c166b3c in libdap::Vector::m_create_cardinal_data_buffer_for_type(unsigned int) Vector.cc:203 #2 0x10c17bc15 in libdap::Vector::val2buf(void*, bool) Vector.cc:1206 #3 0x10c1655e7 in libdap::Vector::m_duplicate(libdap::Vector const&) Vector.cc:116 #4 0x10c169733 in libdap::Vector::Vector(libdap::Vector const&) Vector.cc:297 #5 0x10c1b7385 in libdap::Array::Array(libdap::Array const&) Array.cc:164 #6 0x112bba116 in agg_util::ArrayAggregationBase::ArrayAggregationBase(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&) ArrayAggregationBase.cc:50 #7 0x112bcd07b in agg_util::ArrayJoinExistingAggregation::ArrayJoinExistingAggregation(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&, agg_util::Dimension const&) ArrayJoinExistingAggregation.cc:54 #8 0x112bd1444 in agg_util::ArrayJoinExistingAggregation::ArrayJoinExistingAggregation(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&, agg_util::Dimension const&) ArrayJoinExistingAggregation.cc:55 #9 0x112b0f03e in ncml_module::AggregationElement::processAggVarJoinExistingForArray(libdap::DDS&, libdap::Array const&, agg_util::Dimension const&, std::__1::vector, std::__1::allocator > > const&) AggregationElement.cc:900 #10 0x112aefae0 in ncml_module::AggregationElement::processJoinExistingOnAggVar(libdap::DDS*, std::__1::basic_string, std::__1::allocator > const&, libdap::DDS const&) AggregationElement.cc:830 #11 0x112aa3028 in ncml_module::AggregationElement::processJoinExisting() AggregationElement.cc:510 #12 0x112a936c7 in ncml_module::AggregationElement::handleEnd() AggregationElement.cc:221 #13 0x112ee1b9f in ncml_module::NCMLParser::processEndNCMLElement(std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:1186 #14 0x112ee935b in ncml_module::NCMLParser::onEndElementWithNamespace(std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:324 #15 0x11304d8c9 in ncmlSax2EndElementNs(void*, unsigned char const*, unsigned char const*, unsigned char const*) SaxParserWrapper.cc:242 #16 0x7fff597e1d8e in xmlParseEndTag2 (libxml2.2.dylib:x86_64+0x37d8e) #17 0x7fff597e0440 in xmlParseElement (libxml2.2.dylib:x86_64+0x36440) #18 0x7fff597e005a in xmlParseContent (libxml2.2.dylib:x86_64+0x3605a) #19 0x7fff597e03f1 in xmlParseElement (libxml2.2.dylib:x86_64+0x363f1) #20 0x7fff597e2b7a in xmlParseDocument (libxml2.2.dylib:x86_64+0x38b7a) #21 0x11303e9ae in ncml_module::SaxParserWrapper::parse(std::__1::basic_string, std::__1::allocator > const&) SaxParserWrapper.cc:338 #22 0x112ed3d0b in ncml_module::NCMLParser::parseInto(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType, BESDapResponse*) NCMLParser.cc:185 #23 0x112f55346 in ncml_module::NCMLRequestHandler::ncml_build_data(BESDataHandlerInterface&) NCMLRequestHandler.cc:297 #24 0x10799fc8f in BESRequestHandlerList::execute_current(BESDataHandlerInterface&) BESRequestHandlerList.cc:273 #25 0x10799e0a4 in BESRequestHandlerList::execute_each(BESDataHandlerInterface&) BESRequestHandlerList.cc:167 #26 0x10953288c in BESDataResponseHandler::execute(BESDataHandlerInterface&) BESDataResponseHandler.cc:148 #27 0x107db9d5a in BESXMLInterface::execute_data_request_plan() BESXMLInterface.cc:285 #28 0x107813b8d in BESInterface::execute_request(std::__1::basic_string, std::__1::allocator > const&) BESInterface.cc:513 #29 0x1077798d8 in StandAloneClient::executeCommand(std::__1::basic_string, std::__1::allocator > const&, int) StandAloneClient.cc:237 SUMMARY: AddressSanitizer: heap-buffer-overflow (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x4f3fd) in __asan_memcpy Shadow bytes around the buggy address: 0x1c04000017b0: fa fa 00 fa fa fa 00 fa fa fa fd fd fa fa 00 00 0x1c04000017c0: fa fa 00 00 fa fa 00 fa fa fa 00 fa fa fa 00 fa 0x1c04000017d0: fa fa 00 fa fa fa fd fa fa fa 00 fa fa fa 00 fa 0x1c04000017e0: fa fa 00 fa fa fa 00 fa fa fa 00 fa fa fa 00 fa 0x1c04000017f0: fa fa fd fa fa fa 04 fa fa fa 04 fa fa fa 00 fa =>0x1c0400001800: fa fa 00 fa fa fa 00 fa fa fa 00[04]fa fa 00 fa 0x1c0400001810: fa fa 00 04 fa fa 00 04 fa fa 00 fa fa fa fa fa 0x1c0400001820: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c0400001830: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c0400001840: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c0400001850: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa Shadow byte legend (one shadow byte represents 8 application bytes): Addressable: 00 Partially addressable: 01 02 03 04 05 06 07 Heap left redzone: fa Freed heap region: fd Stack left redzone: f1 Stack mid redzone: f2 Stack right redzone: f3 Stack after return: f5 Stack use after scope: f8 Global redzone: f9 Global init order: f6 Poisoned by user: f7 Container overflow: fc Array cookie: ac Intra object redzone: bb ASan internal: fe Left alloca redzone: ca Right alloca redzone: cb ==80552==ABORTING /Users/jimg/src/opendap/hyrax_git/bes/modules/ncml_module/tests/testsuite.dir/at-groups/536/test-source: line 44: 80552 Abort trap: 6 besstandalone -c $abs_builddir/bes.conf -i ./test.bescmd stdout: ./aggregations.at:313: exit code was 134, expected 0 536. aggregations.at:313: 536. Comparing dods response for agg/joinExisting_virtual.ncml to baseline ${abs_srcdir}/baselines/agg/joinExisting_virtual_cons_4 (aggregations.at:313): FAILED (aggregations.at:313) # -*- compilation -*- 537. aggregations.at:316: testing Comparing dods response for agg/joinExisting_virtual.ncml to baseline ${abs_srcdir}/baselines/agg/joinExisting_virtual_cons_5 ... ./aggregations.at:316: besstandalone -c $abs_builddir/bes.conf -i ./test.bescmd stderr: Width: 12 Name: V Width: 12 Name: V Width: 40 Name: V ================================================================= ==80616==ERROR: AddressSanitizer: heap-buffer-overflow on address 0x60200000c05c at pc 0x000101ab03fe bp 0x7ffeee8e3df0 sp 0x7ffeee8e35a0 READ of size 40 at 0x60200000c05c thread T0 #0 0x101ab03fd in __asan_memcpy (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x4f3fd) Provided dSYM: [/Users/jimg/src/opendap/hyrax_git/build/lib/libdap.25.dylib.dSYM/Contents/Resources/DWARF/libdap.25.dylib] does not match symbol owner 0x7fafbea00780 #1 0x105693f39 in libdap::Vector::val2buf(void*, bool) Vector.cc:1212 #2 0x10567d5e7 in libdap::Vector::m_duplicate(libdap::Vector const&) Vector.cc:116 #3 0x105681733 in libdap::Vector::Vector(libdap::Vector const&) Vector.cc:297 #4 0x1056cf385 in libdap::Array::Array(libdap::Array const&) Array.cc:164 #5 0x10c6ae8da in agg_util::ArrayAggregationBase::ArrayAggregationBase(agg_util::ArrayAggregationBase const&) ArrayAggregationBase.cc:56 #6 0x10c6c5476 in agg_util::ArrayJoinExistingAggregation::ArrayJoinExistingAggregation(agg_util::ArrayJoinExistingAggregation const&) ArrayJoinExistingAggregation.cc:79 #7 0x10c6c55bc in agg_util::ArrayJoinExistingAggregation::ArrayJoinExistingAggregation(agg_util::ArrayJoinExistingAggregation const&) ArrayJoinExistingAggregation.cc:80 #8 0x10c6c57ac in agg_util::ArrayJoinExistingAggregation::ptr_duplicate() ArrayJoinExistingAggregation.cc:105 #9 0x1055800fd in libdap::DDS::add_var(libdap::BaseType*) DDS.cc:607 #10 0x10c605678 in ncml_module::AggregationElement::processAggVarJoinExistingForArray(libdap::DDS&, libdap::Array const&, agg_util::Dimension const&, std::__1::vector, std::__1::allocator > > const&) AggregationElement.cc:912 #11 0x10c5e3ae0 in ncml_module::AggregationElement::processJoinExistingOnAggVar(libdap::DDS*, std::__1::basic_string, std::__1::allocator > const&, libdap::DDS const&) AggregationElement.cc:830 #12 0x10c597028 in ncml_module::AggregationElement::processJoinExisting() AggregationElement.cc:510 #13 0x10c5876c7 in ncml_module::AggregationElement::handleEnd() AggregationElement.cc:221 #14 0x10c9d5b9f in ncml_module::NCMLParser::processEndNCMLElement(std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:1186 #15 0x10c9dd35b in ncml_module::NCMLParser::onEndElementWithNamespace(std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:324 #16 0x10cb418c9 in ncmlSax2EndElementNs(void*, unsigned char const*, unsigned char const*, unsigned char const*) SaxParserWrapper.cc:242 #17 0x7fff597e1d8e in xmlParseEndTag2 (libxml2.2.dylib:x86_64+0x37d8e) #18 0x7fff597e0440 in xmlParseElement (libxml2.2.dylib:x86_64+0x36440) #19 0x7fff597e005a in xmlParseContent (libxml2.2.dylib:x86_64+0x3605a) #20 0x7fff597e03f1 in xmlParseElement (libxml2.2.dylib:x86_64+0x363f1) #21 0x7fff597e2b7a in xmlParseDocument (libxml2.2.dylib:x86_64+0x38b7a) #22 0x10cb329ae in ncml_module::SaxParserWrapper::parse(std::__1::basic_string, std::__1::allocator > const&) SaxParserWrapper.cc:338 #23 0x10c9c7d0b in ncml_module::NCMLParser::parseInto(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType, BESDapResponse*) NCMLParser.cc:185 #24 0x10ca49346 in ncml_module::NCMLRequestHandler::ncml_build_data(BESDataHandlerInterface&) NCMLRequestHandler.cc:297 #25 0x101553c8f in BESRequestHandlerList::execute_current(BESDataHandlerInterface&) BESRequestHandlerList.cc:273 #26 0x1015520a4 in BESRequestHandlerList::execute_each(BESDataHandlerInterface&) BESRequestHandlerList.cc:167 #27 0x10513288c in BESDataResponseHandler::execute(BESDataHandlerInterface&) BESDataResponseHandler.cc:148 #28 0x101969d5a in BESXMLInterface::execute_data_request_plan() BESXMLInterface.cc:285 #29 0x1013c7b8d in BESInterface::execute_request(std::__1::basic_string, std::__1::allocator > const&) BESInterface.cc:513 #30 0x10132c8d8 in StandAloneClient::executeCommand(std::__1::basic_string, std::__1::allocator > const&, int) StandAloneClient.cc:237 #31 0x10132a3aa in StandAloneClient::executeCommands(std::__1::basic_ifstream >&, int) StandAloneClient.cc:349 #32 0x10130fe6d in StandAloneApp::run() StandAloneApp.cc:251 #33 0x101637c24 in BESApp::main(int, char**) BESApp.cc:58 #34 0x10131312e in main StandAloneApp.cc:345 #35 0x7fff59ad3014 in start (libdyld.dylib:x86_64+0x1014) 0x60200000c05c is located 0 bytes to the right of 12-byte region [0x60200000c050,0x60200000c05c) allocated by thread T0 here: #0 0x101ac3cb2 in wrap__Znam (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x62cb2) #1 0x10567eb3c in libdap::Vector::m_create_cardinal_data_buffer_for_type(unsigned int) Vector.cc:203 #2 0x105693c15 in libdap::Vector::val2buf(void*, bool) Vector.cc:1206 #3 0x10567d5e7 in libdap::Vector::m_duplicate(libdap::Vector const&) Vector.cc:116 #4 0x105681733 in libdap::Vector::Vector(libdap::Vector const&) Vector.cc:297 #5 0x1056cf385 in libdap::Array::Array(libdap::Array const&) Array.cc:164 #6 0x10c6ae116 in agg_util::ArrayAggregationBase::ArrayAggregationBase(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&) ArrayAggregationBase.cc:50 #7 0x10c6c107b in agg_util::ArrayJoinExistingAggregation::ArrayJoinExistingAggregation(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&, agg_util::Dimension const&) ArrayJoinExistingAggregation.cc:54 #8 0x10c6c5444 in agg_util::ArrayJoinExistingAggregation::ArrayJoinExistingAggregation(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&, agg_util::Dimension const&) ArrayJoinExistingAggregation.cc:55 #9 0x10c60303e in ncml_module::AggregationElement::processAggVarJoinExistingForArray(libdap::DDS&, libdap::Array const&, agg_util::Dimension const&, std::__1::vector, std::__1::allocator > > const&) AggregationElement.cc:900 #10 0x10c5e3ae0 in ncml_module::AggregationElement::processJoinExistingOnAggVar(libdap::DDS*, std::__1::basic_string, std::__1::allocator > const&, libdap::DDS const&) AggregationElement.cc:830 #11 0x10c597028 in ncml_module::AggregationElement::processJoinExisting() AggregationElement.cc:510 #12 0x10c5876c7 in ncml_module::AggregationElement::handleEnd() AggregationElement.cc:221 #13 0x10c9d5b9f in ncml_module::NCMLParser::processEndNCMLElement(std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:1186 #14 0x10c9dd35b in ncml_module::NCMLParser::onEndElementWithNamespace(std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:324 #15 0x10cb418c9 in ncmlSax2EndElementNs(void*, unsigned char const*, unsigned char const*, unsigned char const*) SaxParserWrapper.cc:242 #16 0x7fff597e1d8e in xmlParseEndTag2 (libxml2.2.dylib:x86_64+0x37d8e) #17 0x7fff597e0440 in xmlParseElement (libxml2.2.dylib:x86_64+0x36440) #18 0x7fff597e005a in xmlParseContent (libxml2.2.dylib:x86_64+0x3605a) #19 0x7fff597e03f1 in xmlParseElement (libxml2.2.dylib:x86_64+0x363f1) #20 0x7fff597e2b7a in xmlParseDocument (libxml2.2.dylib:x86_64+0x38b7a) #21 0x10cb329ae in ncml_module::SaxParserWrapper::parse(std::__1::basic_string, std::__1::allocator > const&) SaxParserWrapper.cc:338 #22 0x10c9c7d0b in ncml_module::NCMLParser::parseInto(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType, BESDapResponse*) NCMLParser.cc:185 #23 0x10ca49346 in ncml_module::NCMLRequestHandler::ncml_build_data(BESDataHandlerInterface&) NCMLRequestHandler.cc:297 #24 0x101553c8f in BESRequestHandlerList::execute_current(BESDataHandlerInterface&) BESRequestHandlerList.cc:273 #25 0x1015520a4 in BESRequestHandlerList::execute_each(BESDataHandlerInterface&) BESRequestHandlerList.cc:167 #26 0x10513288c in BESDataResponseHandler::execute(BESDataHandlerInterface&) BESDataResponseHandler.cc:148 #27 0x101969d5a in BESXMLInterface::execute_data_request_plan() BESXMLInterface.cc:285 #28 0x1013c7b8d in BESInterface::execute_request(std::__1::basic_string, std::__1::allocator > const&) BESInterface.cc:513 #29 0x10132c8d8 in StandAloneClient::executeCommand(std::__1::basic_string, std::__1::allocator > const&, int) StandAloneClient.cc:237 SUMMARY: AddressSanitizer: heap-buffer-overflow (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x4f3fd) in __asan_memcpy Shadow bytes around the buggy address: 0x1c04000017b0: fa fa 00 fa fa fa 00 fa fa fa fd fd fa fa 00 00 0x1c04000017c0: fa fa 00 00 fa fa 00 fa fa fa 00 fa fa fa 00 fa 0x1c04000017d0: fa fa 00 fa fa fa fd fa fa fa 00 fa fa fa 00 fa 0x1c04000017e0: fa fa 00 fa fa fa 00 fa fa fa 00 fa fa fa 00 fa 0x1c04000017f0: fa fa fd fa fa fa 04 fa fa fa 04 fa fa fa 00 fa =>0x1c0400001800: fa fa 00 fa fa fa 00 fa fa fa 00[04]fa fa 00 fa 0x1c0400001810: fa fa 00 04 fa fa 00 04 fa fa 00 fa fa fa fa fa 0x1c0400001820: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c0400001830: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c0400001840: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c0400001850: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa Shadow byte legend (one shadow byte represents 8 application bytes): Addressable: 00 Partially addressable: 01 02 03 04 05 06 07 Heap left redzone: fa Freed heap region: fd Stack left redzone: f1 Stack mid redzone: f2 Stack right redzone: f3 Stack after return: f5 Stack use after scope: f8 Global redzone: f9 Global init order: f6 Poisoned by user: f7 Container overflow: fc Array cookie: ac Intra object redzone: bb ASan internal: fe Left alloca redzone: ca Right alloca redzone: cb ==80616==ABORTING /Users/jimg/src/opendap/hyrax_git/bes/modules/ncml_module/tests/testsuite.dir/at-groups/537/test-source: line 44: 80616 Abort trap: 6 besstandalone -c $abs_builddir/bes.conf -i ./test.bescmd stdout: ./aggregations.at:316: exit code was 134, expected 0 537. aggregations.at:316: 537. Comparing dods response for agg/joinExisting_virtual.ncml to baseline ${abs_srcdir}/baselines/agg/joinExisting_virtual_cons_5 (aggregations.at:316): FAILED (aggregations.at:316) # -*- compilation -*- 538. aggregations.at:322: testing Comparing das response for agg/joinExisting_virtual_fine.ncml to baseline ${abs_srcdir}/baselines/agg/joinExisting_virtual_fine.ncml ... ./aggregations.at:322: besstandalone -c $abs_builddir/bes.conf -i ./test.bescmd stderr: Width: 4 Name: V Width: 4 Name: V Width: 20 Name: V ================================================================= ==80674==ERROR: AddressSanitizer: heap-buffer-overflow on address 0x60200000c074 at pc 0x00010c00b3fe bp 0x7ffee438cc50 sp 0x7ffee438c400 READ of size 20 at 0x60200000c074 thread T0 #0 0x10c00b3fd in __asan_memcpy (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x4f3fd) Provided dSYM: [/Users/jimg/src/opendap/hyrax_git/build/lib/libdap.25.dylib.dSYM/Contents/Resources/DWARF/libdap.25.dylib] does not match symbol owner 0x7f92d3b001e0 #1 0x10fbdbf39 in libdap::Vector::val2buf(void*, bool) Vector.cc:1212 #2 0x10fbc55e7 in libdap::Vector::m_duplicate(libdap::Vector const&) Vector.cc:116 #3 0x10fbc9733 in libdap::Vector::Vector(libdap::Vector const&) Vector.cc:297 #4 0x10fc17385 in libdap::Array::Array(libdap::Array const&) Array.cc:164 #5 0x1175198da in agg_util::ArrayAggregationBase::ArrayAggregationBase(agg_util::ArrayAggregationBase const&) ArrayAggregationBase.cc:56 #6 0x117530476 in agg_util::ArrayJoinExistingAggregation::ArrayJoinExistingAggregation(agg_util::ArrayJoinExistingAggregation const&) ArrayJoinExistingAggregation.cc:79 #7 0x1175305bc in agg_util::ArrayJoinExistingAggregation::ArrayJoinExistingAggregation(agg_util::ArrayJoinExistingAggregation const&) ArrayJoinExistingAggregation.cc:80 #8 0x1175307ac in agg_util::ArrayJoinExistingAggregation::ptr_duplicate() ArrayJoinExistingAggregation.cc:105 #9 0x10fac80fd in libdap::DDS::add_var(libdap::BaseType*) DDS.cc:607 #10 0x117470678 in ncml_module::AggregationElement::processAggVarJoinExistingForArray(libdap::DDS&, libdap::Array const&, agg_util::Dimension const&, std::__1::vector, std::__1::allocator > > const&) AggregationElement.cc:912 #11 0x11744eae0 in ncml_module::AggregationElement::processJoinExistingOnAggVar(libdap::DDS*, std::__1::basic_string, std::__1::allocator > const&, libdap::DDS const&) AggregationElement.cc:830 #12 0x117402028 in ncml_module::AggregationElement::processJoinExisting() AggregationElement.cc:510 #13 0x1173f26c7 in ncml_module::AggregationElement::handleEnd() AggregationElement.cc:221 #14 0x117840b9f in ncml_module::NCMLParser::processEndNCMLElement(std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:1186 #15 0x11784835b in ncml_module::NCMLParser::onEndElementWithNamespace(std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:324 #16 0x1179ac8c9 in ncmlSax2EndElementNs(void*, unsigned char const*, unsigned char const*, unsigned char const*) SaxParserWrapper.cc:242 #17 0x7fff597e1d8e in xmlParseEndTag2 (libxml2.2.dylib:x86_64+0x37d8e) #18 0x7fff597e0440 in xmlParseElement (libxml2.2.dylib:x86_64+0x36440) #19 0x7fff597e005a in xmlParseContent (libxml2.2.dylib:x86_64+0x3605a) #20 0x7fff597e03f1 in xmlParseElement (libxml2.2.dylib:x86_64+0x363f1) #21 0x7fff597e2b7a in xmlParseDocument (libxml2.2.dylib:x86_64+0x38b7a) #22 0x11799d9ae in ncml_module::SaxParserWrapper::parse(std::__1::basic_string, std::__1::allocator > const&) SaxParserWrapper.cc:338 #23 0x117832d0b in ncml_module::NCMLParser::parseInto(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType, BESDapResponse*) NCMLParser.cc:185 #24 0x11782c1e7 in ncml_module::NCMLParser::parse(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType) NCMLParser.cc:155 #25 0x1178a6841 in ncml_module::NCMLRequestHandler::ncml_build_das(BESDataHandlerInterface&) NCMLRequestHandler.cc:172 #26 0x10baacc8f in BESRequestHandlerList::execute_current(BESDataHandlerInterface&) BESRequestHandlerList.cc:273 #27 0x10baab0a4 in BESRequestHandlerList::execute_each(BESDataHandlerInterface&) BESRequestHandlerList.cc:167 #28 0x10f621ff0 in BESDASResponseHandler::execute(BESDataHandlerInterface&) BESDASResponseHandler.cc:95 #29 0x10bec2d5a in BESXMLInterface::execute_data_request_plan() BESXMLInterface.cc:285 #30 0x10b920b8d in BESInterface::execute_request(std::__1::basic_string, std::__1::allocator > const&) BESInterface.cc:513 #31 0x10b8838d8 in StandAloneClient::executeCommand(std::__1::basic_string, std::__1::allocator > const&, int) StandAloneClient.cc:237 #32 0x10b8813aa in StandAloneClient::executeCommands(std::__1::basic_ifstream >&, int) StandAloneClient.cc:349 #33 0x10b866e6d in StandAloneApp::run() StandAloneApp.cc:251 #34 0x10bb90c24 in BESApp::main(int, char**) BESApp.cc:58 #35 0x10b86a12e in main StandAloneApp.cc:345 #36 0x7fff59ad3014 in start (libdyld.dylib:x86_64+0x1014) 0x60200000c074 is located 0 bytes to the right of 4-byte region [0x60200000c070,0x60200000c074) allocated by thread T0 here: #0 0x10c01ecb2 in wrap__Znam (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x62cb2) #1 0x10fbc6b3c in libdap::Vector::m_create_cardinal_data_buffer_for_type(unsigned int) Vector.cc:203 #2 0x10fbdbc15 in libdap::Vector::val2buf(void*, bool) Vector.cc:1206 #3 0x10fbc55e7 in libdap::Vector::m_duplicate(libdap::Vector const&) Vector.cc:116 #4 0x10fbc9733 in libdap::Vector::Vector(libdap::Vector const&) Vector.cc:297 #5 0x10fc17385 in libdap::Array::Array(libdap::Array const&) Array.cc:164 #6 0x117519116 in agg_util::ArrayAggregationBase::ArrayAggregationBase(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&) ArrayAggregationBase.cc:50 #7 0x11752c07b in agg_util::ArrayJoinExistingAggregation::ArrayJoinExistingAggregation(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&, agg_util::Dimension const&) ArrayJoinExistingAggregation.cc:54 #8 0x117530444 in agg_util::ArrayJoinExistingAggregation::ArrayJoinExistingAggregation(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&, agg_util::Dimension const&) ArrayJoinExistingAggregation.cc:55 #9 0x11746e03e in ncml_module::AggregationElement::processAggVarJoinExistingForArray(libdap::DDS&, libdap::Array const&, agg_util::Dimension const&, std::__1::vector, std::__1::allocator > > const&) AggregationElement.cc:900 #10 0x11744eae0 in ncml_module::AggregationElement::processJoinExistingOnAggVar(libdap::DDS*, std::__1::basic_string, std::__1::allocator > const&, libdap::DDS const&) AggregationElement.cc:830 #11 0x117402028 in ncml_module::AggregationElement::processJoinExisting() AggregationElement.cc:510 #12 0x1173f26c7 in ncml_module::AggregationElement::handleEnd() AggregationElement.cc:221 #13 0x117840b9f in ncml_module::NCMLParser::processEndNCMLElement(std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:1186 #14 0x11784835b in ncml_module::NCMLParser::onEndElementWithNamespace(std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:324 #15 0x1179ac8c9 in ncmlSax2EndElementNs(void*, unsigned char const*, unsigned char const*, unsigned char const*) SaxParserWrapper.cc:242 #16 0x7fff597e1d8e in xmlParseEndTag2 (libxml2.2.dylib:x86_64+0x37d8e) #17 0x7fff597e0440 in xmlParseElement (libxml2.2.dylib:x86_64+0x36440) #18 0x7fff597e005a in xmlParseContent (libxml2.2.dylib:x86_64+0x3605a) #19 0x7fff597e03f1 in xmlParseElement (libxml2.2.dylib:x86_64+0x363f1) #20 0x7fff597e2b7a in xmlParseDocument (libxml2.2.dylib:x86_64+0x38b7a) #21 0x11799d9ae in ncml_module::SaxParserWrapper::parse(std::__1::basic_string, std::__1::allocator > const&) SaxParserWrapper.cc:338 #22 0x117832d0b in ncml_module::NCMLParser::parseInto(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType, BESDapResponse*) NCMLParser.cc:185 #23 0x11782c1e7 in ncml_module::NCMLParser::parse(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType) NCMLParser.cc:155 #24 0x1178a6841 in ncml_module::NCMLRequestHandler::ncml_build_das(BESDataHandlerInterface&) NCMLRequestHandler.cc:172 #25 0x10baacc8f in BESRequestHandlerList::execute_current(BESDataHandlerInterface&) BESRequestHandlerList.cc:273 #26 0x10baab0a4 in BESRequestHandlerList::execute_each(BESDataHandlerInterface&) BESRequestHandlerList.cc:167 #27 0x10f621ff0 in BESDASResponseHandler::execute(BESDataHandlerInterface&) BESDASResponseHandler.cc:95 #28 0x10bec2d5a in BESXMLInterface::execute_data_request_plan() BESXMLInterface.cc:285 #29 0x10b920b8d in BESInterface::execute_request(std::__1::basic_string, std::__1::allocator > const&) BESInterface.cc:513 SUMMARY: AddressSanitizer: heap-buffer-overflow (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x4f3fd) in __asan_memcpy Shadow bytes around the buggy address: 0x1c04000017b0: fa fa fd fa fa fa 04 fa fa fa 04 fa fa fa 00 fa 0x1c04000017c0: fa fa 00 fa fa fa 00 fa fa fa fd fa fa fa 04 fa 0x1c04000017d0: fa fa 04 fa fa fa 00 fa fa fa 00 fa fa fa 00 fa 0x1c04000017e0: fa fa fd fa fa fa 04 fa fa fa 04 fa fa fa 00 fa 0x1c04000017f0: fa fa 00 fa fa fa 00 fa fa fa fd fa fa fa 04 fa =>0x1c0400001800: fa fa 04 fa fa fa 00 fa fa fa 00 fa fa fa[04]fa 0x1c0400001810: fa fa 04 fa fa fa 04 fa fa fa fa fa fa fa fa fa 0x1c0400001820: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c0400001830: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c0400001840: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c0400001850: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa Shadow byte legend (one shadow byte represents 8 application bytes): Addressable: 00 Partially addressable: 01 02 03 04 05 06 07 Heap left redzone: fa Freed heap region: fd Stack left redzone: f1 Stack mid redzone: f2 Stack right redzone: f3 Stack after return: f5 Stack use after scope: f8 Global redzone: f9 Global init order: f6 Poisoned by user: f7 Container overflow: fc Array cookie: ac Intra object redzone: bb ASan internal: fe Left alloca redzone: ca Right alloca redzone: cb ==80674==ABORTING /Users/jimg/src/opendap/hyrax_git/bes/modules/ncml_module/tests/testsuite.dir/at-groups/538/test-source: line 44: 80674 Abort trap: 6 besstandalone -c $abs_builddir/bes.conf -i ./test.bescmd stdout: ./aggregations.at:322: exit code was 134, expected 0 538. aggregations.at:322: 538. Comparing das response for agg/joinExisting_virtual_fine.ncml to baseline ${abs_srcdir}/baselines/agg/joinExisting_virtual_fine.ncml (aggregations.at:322): FAILED (aggregations.at:322) # -*- compilation -*- 539. aggregations.at:322: testing Comparing dds response for agg/joinExisting_virtual_fine.ncml to baseline ${abs_srcdir}/baselines/agg/joinExisting_virtual_fine.ncml ... ./aggregations.at:322: besstandalone -c $abs_builddir/bes.conf -i ./test.bescmd stderr: Width: 4 Name: V Width: 4 Name: V Width: 20 Name: V ================================================================= ==80675==ERROR: AddressSanitizer: heap-buffer-overflow on address 0x60200000c054 at pc 0x000101b5a3fe bp 0x7ffeee839f70 sp 0x7ffeee839720 READ of size 20 at 0x60200000c054 thread T0 #0 0x101b5a3fd in __asan_memcpy (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x4f3fd) Provided dSYM: [/Users/jimg/src/opendap/hyrax_git/build/lib/libdap.25.dylib.dSYM/Contents/Resources/DWARF/libdap.25.dylib] does not match symbol owner 0x7ff1fc105b80 #1 0x105707f39 in libdap::Vector::val2buf(void*, bool) Vector.cc:1212 #2 0x1056f15e7 in libdap::Vector::m_duplicate(libdap::Vector const&) Vector.cc:116 #3 0x1056f5733 in libdap::Vector::Vector(libdap::Vector const&) Vector.cc:297 #4 0x105743385 in libdap::Array::Array(libdap::Array const&) Array.cc:164 #5 0x10c7f88da in agg_util::ArrayAggregationBase::ArrayAggregationBase(agg_util::ArrayAggregationBase const&) ArrayAggregationBase.cc:56 #6 0x10c80f476 in agg_util::ArrayJoinExistingAggregation::ArrayJoinExistingAggregation(agg_util::ArrayJoinExistingAggregation const&) ArrayJoinExistingAggregation.cc:79 #7 0x10c80f5bc in agg_util::ArrayJoinExistingAggregation::ArrayJoinExistingAggregation(agg_util::ArrayJoinExistingAggregation const&) ArrayJoinExistingAggregation.cc:80 #8 0x10c80f7ac in agg_util::ArrayJoinExistingAggregation::ptr_duplicate() ArrayJoinExistingAggregation.cc:105 #9 0x1055f40fd in libdap::DDS::add_var(libdap::BaseType*) DDS.cc:607 #10 0x10c74f678 in ncml_module::AggregationElement::processAggVarJoinExistingForArray(libdap::DDS&, libdap::Array const&, agg_util::Dimension const&, std::__1::vector, std::__1::allocator > > const&) AggregationElement.cc:912 #11 0x10c72dae0 in ncml_module::AggregationElement::processJoinExistingOnAggVar(libdap::DDS*, std::__1::basic_string, std::__1::allocator > const&, libdap::DDS const&) AggregationElement.cc:830 #12 0x10c6e1028 in ncml_module::AggregationElement::processJoinExisting() AggregationElement.cc:510 #13 0x10c6d16c7 in ncml_module::AggregationElement::handleEnd() AggregationElement.cc:221 #14 0x10cb1fb9f in ncml_module::NCMLParser::processEndNCMLElement(std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:1186 #15 0x10cb2735b in ncml_module::NCMLParser::onEndElementWithNamespace(std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:324 #16 0x10cc8b8c9 in ncmlSax2EndElementNs(void*, unsigned char const*, unsigned char const*, unsigned char const*) SaxParserWrapper.cc:242 #17 0x7fff597e1d8e in xmlParseEndTag2 (libxml2.2.dylib:x86_64+0x37d8e) #18 0x7fff597e0440 in xmlParseElement (libxml2.2.dylib:x86_64+0x36440) #19 0x7fff597e005a in xmlParseContent (libxml2.2.dylib:x86_64+0x3605a) #20 0x7fff597e03f1 in xmlParseElement (libxml2.2.dylib:x86_64+0x363f1) #21 0x7fff597e2b7a in xmlParseDocument (libxml2.2.dylib:x86_64+0x38b7a) #22 0x10cc7c9ae in ncml_module::SaxParserWrapper::parse(std::__1::basic_string, std::__1::allocator > const&) SaxParserWrapper.cc:338 #23 0x10cb11d0b in ncml_module::NCMLParser::parseInto(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType, BESDapResponse*) NCMLParser.cc:185 #24 0x10cb8daae in ncml_module::NCMLRequestHandler::ncml_build_dds(BESDataHandlerInterface&) NCMLRequestHandler.cc:260 #25 0x1015ffc8f in BESRequestHandlerList::execute_current(BESDataHandlerInterface&) BESRequestHandlerList.cc:273 #26 0x1015fe0a4 in BESRequestHandlerList::execute_each(BESDataHandlerInterface&) BESRequestHandlerList.cc:167 #27 0x105154048 in BESDDSResponseHandler::execute(BESDataHandlerInterface&) BESDDSResponseHandler.cc:107 #28 0x101a14d5a in BESXMLInterface::execute_data_request_plan() BESXMLInterface.cc:285 #29 0x101473b8d in BESInterface::execute_request(std::__1::basic_string, std::__1::allocator > const&) BESInterface.cc:513 #30 0x1013d68d8 in StandAloneClient::executeCommand(std::__1::basic_string, std::__1::allocator > const&, int) StandAloneClient.cc:237 #31 0x1013d43aa in StandAloneClient::executeCommands(std::__1::basic_ifstream >&, int) StandAloneClient.cc:349 #32 0x1013b9e6d in StandAloneApp::run() StandAloneApp.cc:251 #33 0x1016e3c24 in BESApp::main(int, char**) BESApp.cc:58 #34 0x1013bd12e in main StandAloneApp.cc:345 #35 0x7fff59ad3014 in start (libdyld.dylib:x86_64+0x1014) 0x60200000c054 is located 0 bytes to the right of 4-byte region [0x60200000c050,0x60200000c054) allocated by thread T0 here: #0 0x101b6dcb2 in wrap__Znam (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x62cb2) #1 0x1056f2b3c in libdap::Vector::m_create_cardinal_data_buffer_for_type(unsigned int) Vector.cc:203 #2 0x105707c15 in libdap::Vector::val2buf(void*, bool) Vector.cc:1206 #3 0x1056f15e7 in libdap::Vector::m_duplicate(libdap::Vector const&) Vector.cc:116 #4 0x1056f5733 in libdap::Vector::Vector(libdap::Vector const&) Vector.cc:297 #5 0x105743385 in libdap::Array::Array(libdap::Array const&) Array.cc:164 #6 0x10c7f8116 in agg_util::ArrayAggregationBase::ArrayAggregationBase(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&) ArrayAggregationBase.cc:50 #7 0x10c80b07b in agg_util::ArrayJoinExistingAggregation::ArrayJoinExistingAggregation(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&, agg_util::Dimension const&) ArrayJoinExistingAggregation.cc:54 #8 0x10c80f444 in agg_util::ArrayJoinExistingAggregation::ArrayJoinExistingAggregation(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&, agg_util::Dimension const&) ArrayJoinExistingAggregation.cc:55 #9 0x10c74d03e in ncml_module::AggregationElement::processAggVarJoinExistingForArray(libdap::DDS&, libdap::Array const&, agg_util::Dimension const&, std::__1::vector, std::__1::allocator > > const&) AggregationElement.cc:900 #10 0x10c72dae0 in ncml_module::AggregationElement::processJoinExistingOnAggVar(libdap::DDS*, std::__1::basic_string, std::__1::allocator > const&, libdap::DDS const&) AggregationElement.cc:830 #11 0x10c6e1028 in ncml_module::AggregationElement::processJoinExisting() AggregationElement.cc:510 #12 0x10c6d16c7 in ncml_module::AggregationElement::handleEnd() AggregationElement.cc:221 #13 0x10cb1fb9f in ncml_module::NCMLParser::processEndNCMLElement(std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:1186 #14 0x10cb2735b in ncml_module::NCMLParser::onEndElementWithNamespace(std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:324 #15 0x10cc8b8c9 in ncmlSax2EndElementNs(void*, unsigned char const*, unsigned char const*, unsigned char const*) SaxParserWrapper.cc:242 #16 0x7fff597e1d8e in xmlParseEndTag2 (libxml2.2.dylib:x86_64+0x37d8e) #17 0x7fff597e0440 in xmlParseElement (libxml2.2.dylib:x86_64+0x36440) #18 0x7fff597e005a in xmlParseContent (libxml2.2.dylib:x86_64+0x3605a) #19 0x7fff597e03f1 in xmlParseElement (libxml2.2.dylib:x86_64+0x363f1) #20 0x7fff597e2b7a in xmlParseDocument (libxml2.2.dylib:x86_64+0x38b7a) #21 0x10cc7c9ae in ncml_module::SaxParserWrapper::parse(std::__1::basic_string, std::__1::allocator > const&) SaxParserWrapper.cc:338 #22 0x10cb11d0b in ncml_module::NCMLParser::parseInto(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType, BESDapResponse*) NCMLParser.cc:185 #23 0x10cb8daae in ncml_module::NCMLRequestHandler::ncml_build_dds(BESDataHandlerInterface&) NCMLRequestHandler.cc:260 #24 0x1015ffc8f in BESRequestHandlerList::execute_current(BESDataHandlerInterface&) BESRequestHandlerList.cc:273 #25 0x1015fe0a4 in BESRequestHandlerList::execute_each(BESDataHandlerInterface&) BESRequestHandlerList.cc:167 #26 0x105154048 in BESDDSResponseHandler::execute(BESDataHandlerInterface&) BESDDSResponseHandler.cc:107 #27 0x101a14d5a in BESXMLInterface::execute_data_request_plan() BESXMLInterface.cc:285 #28 0x101473b8d in BESInterface::execute_request(std::__1::basic_string, std::__1::allocator > const&) BESInterface.cc:513 #29 0x1013d68d8 in StandAloneClient::executeCommand(std::__1::basic_string, std::__1::allocator > const&, int) StandAloneClient.cc:237 SUMMARY: AddressSanitizer: heap-buffer-overflow (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x4f3fd) in __asan_memcpy Shadow bytes around the buggy address: 0x1c04000017b0: fa fa 04 fa fa fa 04 fa fa fa 00 fa fa fa 00 fa 0x1c04000017c0: fa fa 00 fa fa fa fd fa fa fa 04 fa fa fa 04 fa 0x1c04000017d0: fa fa 00 fa fa fa 00 fa fa fa 00 fa fa fa fd fa 0x1c04000017e0: fa fa 04 fa fa fa 04 fa fa fa 00 fa fa fa 00 fa 0x1c04000017f0: fa fa 00 fa fa fa fd fa fa fa 04 fa fa fa 04 fa =>0x1c0400001800: fa fa 00 fa fa fa 00 fa fa fa[04]fa fa fa 04 fa 0x1c0400001810: fa fa 04 fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c0400001820: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c0400001830: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c0400001840: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c0400001850: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa Shadow byte legend (one shadow byte represents 8 application bytes): Addressable: 00 Partially addressable: 01 02 03 04 05 06 07 Heap left redzone: fa Freed heap region: fd Stack left redzone: f1 Stack mid redzone: f2 Stack right redzone: f3 Stack after return: f5 Stack use after scope: f8 Global redzone: f9 Global init order: f6 Poisoned by user: f7 Container overflow: fc Array cookie: ac Intra object redzone: bb ASan internal: fe Left alloca redzone: ca Right alloca redzone: cb ==80675==ABORTING /Users/jimg/src/opendap/hyrax_git/bes/modules/ncml_module/tests/testsuite.dir/at-groups/539/test-source: line 44: 80675 Abort trap: 6 besstandalone -c $abs_builddir/bes.conf -i ./test.bescmd stdout: ./aggregations.at:322: exit code was 134, expected 0 539. aggregations.at:322: 539. Comparing dds response for agg/joinExisting_virtual_fine.ncml to baseline ${abs_srcdir}/baselines/agg/joinExisting_virtual_fine.ncml (aggregations.at:322): FAILED (aggregations.at:322) # -*- compilation -*- 540. aggregations.at:322: testing Comparing ddx response for agg/joinExisting_virtual_fine.ncml to baseline ${abs_srcdir}/baselines/agg/joinExisting_virtual_fine.ncml ... ./aggregations.at:322: besstandalone -c $abs_builddir/bes.conf -i ./test.bescmd stderr: Width: 4 Name: V Width: 4 Name: V Width: 20 Name: V ================================================================= ==80677==ERROR: AddressSanitizer: heap-buffer-overflow on address 0x60200000c054 at pc 0x00010259c3fe bp 0x7ffeeddf5b10 sp 0x7ffeeddf52c0 READ of size 20 at 0x60200000c054 thread T0 #0 0x10259c3fd in __asan_memcpy (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x4f3fd) Provided dSYM: [/Users/jimg/src/opendap/hyrax_git/build/lib/libdap.25.dylib.dSYM/Contents/Resources/DWARF/libdap.25.dylib] does not match symbol owner 0x7fe49e505e10 #1 0x106193f39 in libdap::Vector::val2buf(void*, bool) Vector.cc:1212 #2 0x10617d5e7 in libdap::Vector::m_duplicate(libdap::Vector const&) Vector.cc:116 #3 0x106181733 in libdap::Vector::Vector(libdap::Vector const&) Vector.cc:297 #4 0x1061cf385 in libdap::Array::Array(libdap::Array const&) Array.cc:164 #5 0x10d2418da in agg_util::ArrayAggregationBase::ArrayAggregationBase(agg_util::ArrayAggregationBase const&) ArrayAggregationBase.cc:56 #6 0x10d258476 in agg_util::ArrayJoinExistingAggregation::ArrayJoinExistingAggregation(agg_util::ArrayJoinExistingAggregation const&) ArrayJoinExistingAggregation.cc:79 #7 0x10d2585bc in agg_util::ArrayJoinExistingAggregation::ArrayJoinExistingAggregation(agg_util::ArrayJoinExistingAggregation const&) ArrayJoinExistingAggregation.cc:80 #8 0x10d2587ac in agg_util::ArrayJoinExistingAggregation::ptr_duplicate() ArrayJoinExistingAggregation.cc:105 #9 0x1060800fd in libdap::DDS::add_var(libdap::BaseType*) DDS.cc:607 #10 0x10d198678 in ncml_module::AggregationElement::processAggVarJoinExistingForArray(libdap::DDS&, libdap::Array const&, agg_util::Dimension const&, std::__1::vector, std::__1::allocator > > const&) AggregationElement.cc:912 #11 0x10d176ae0 in ncml_module::AggregationElement::processJoinExistingOnAggVar(libdap::DDS*, std::__1::basic_string, std::__1::allocator > const&, libdap::DDS const&) AggregationElement.cc:830 #12 0x10d12a028 in ncml_module::AggregationElement::processJoinExisting() AggregationElement.cc:510 #13 0x10d11a6c7 in ncml_module::AggregationElement::handleEnd() AggregationElement.cc:221 #14 0x10d568b9f in ncml_module::NCMLParser::processEndNCMLElement(std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:1186 #15 0x10d57035b in ncml_module::NCMLParser::onEndElementWithNamespace(std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:324 #16 0x10d6d48c9 in ncmlSax2EndElementNs(void*, unsigned char const*, unsigned char const*, unsigned char const*) SaxParserWrapper.cc:242 #17 0x7fff597e1d8e in xmlParseEndTag2 (libxml2.2.dylib:x86_64+0x37d8e) #18 0x7fff597e0440 in xmlParseElement (libxml2.2.dylib:x86_64+0x36440) #19 0x7fff597e005a in xmlParseContent (libxml2.2.dylib:x86_64+0x3605a) #20 0x7fff597e03f1 in xmlParseElement (libxml2.2.dylib:x86_64+0x363f1) #21 0x7fff597e2b7a in xmlParseDocument (libxml2.2.dylib:x86_64+0x38b7a) #22 0x10d6c59ae in ncml_module::SaxParserWrapper::parse(std::__1::basic_string, std::__1::allocator > const&) SaxParserWrapper.cc:338 #23 0x10d55ad0b in ncml_module::NCMLParser::parseInto(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType, BESDapResponse*) NCMLParser.cc:185 #24 0x10d5d6aae in ncml_module::NCMLRequestHandler::ncml_build_dds(BESDataHandlerInterface&) NCMLRequestHandler.cc:260 #25 0x10203dc8f in BESRequestHandlerList::execute_current(BESDataHandlerInterface&) BESRequestHandlerList.cc:273 #26 0x10203c0a4 in BESRequestHandlerList::execute_each(BESDataHandlerInterface&) BESRequestHandlerList.cc:167 #27 0x105c2a5dc in BESDDXResponseHandler::execute(BESDataHandlerInterface&) BESDDXResponseHandler.cc:122 #28 0x102456d5a in BESXMLInterface::execute_data_request_plan() BESXMLInterface.cc:285 #29 0x101eb1b8d in BESInterface::execute_request(std::__1::basic_string, std::__1::allocator > const&) BESInterface.cc:513 #30 0x101e1a8d8 in StandAloneClient::executeCommand(std::__1::basic_string, std::__1::allocator > const&, int) StandAloneClient.cc:237 #31 0x101e183aa in StandAloneClient::executeCommands(std::__1::basic_ifstream >&, int) StandAloneClient.cc:349 #32 0x101dfde6d in StandAloneApp::run() StandAloneApp.cc:251 #33 0x102121c24 in BESApp::main(int, char**) BESApp.cc:58 #34 0x101e0112e in main StandAloneApp.cc:345 #35 0x7fff59ad3014 in start (libdyld.dylib:x86_64+0x1014) 0x60200000c054 is located 0 bytes to the right of 4-byte region [0x60200000c050,0x60200000c054) allocated by thread T0 here: #0 0x1025afcb2 in wrap__Znam (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x62cb2) #1 0x10617eb3c in libdap::Vector::m_create_cardinal_data_buffer_for_type(unsigned int) Vector.cc:203 #2 0x106193c15 in libdap::Vector::val2buf(void*, bool) Vector.cc:1206 #3 0x10617d5e7 in libdap::Vector::m_duplicate(libdap::Vector const&) Vector.cc:116 #4 0x106181733 in libdap::Vector::Vector(libdap::Vector const&) Vector.cc:297 #5 0x1061cf385 in libdap::Array::Array(libdap::Array const&) Array.cc:164 #6 0x10d241116 in agg_util::ArrayAggregationBase::ArrayAggregationBase(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&) ArrayAggregationBase.cc:50 #7 0x10d25407b in agg_util::ArrayJoinExistingAggregation::ArrayJoinExistingAggregation(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&, agg_util::Dimension const&) ArrayJoinExistingAggregation.cc:54 #8 0x10d258444 in agg_util::ArrayJoinExistingAggregation::ArrayJoinExistingAggregation(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&, agg_util::Dimension const&) ArrayJoinExistingAggregation.cc:55 #9 0x10d19603e in ncml_module::AggregationElement::processAggVarJoinExistingForArray(libdap::DDS&, libdap::Array const&, agg_util::Dimension const&, std::__1::vector, std::__1::allocator > > const&) AggregationElement.cc:900 #10 0x10d176ae0 in ncml_module::AggregationElement::processJoinExistingOnAggVar(libdap::DDS*, std::__1::basic_string, std::__1::allocator > const&, libdap::DDS const&) AggregationElement.cc:830 #11 0x10d12a028 in ncml_module::AggregationElement::processJoinExisting() AggregationElement.cc:510 #12 0x10d11a6c7 in ncml_module::AggregationElement::handleEnd() AggregationElement.cc:221 #13 0x10d568b9f in ncml_module::NCMLParser::processEndNCMLElement(std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:1186 #14 0x10d57035b in ncml_module::NCMLParser::onEndElementWithNamespace(std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:324 #15 0x10d6d48c9 in ncmlSax2EndElementNs(void*, unsigned char const*, unsigned char const*, unsigned char const*) SaxParserWrapper.cc:242 #16 0x7fff597e1d8e in xmlParseEndTag2 (libxml2.2.dylib:x86_64+0x37d8e) #17 0x7fff597e0440 in xmlParseElement (libxml2.2.dylib:x86_64+0x36440) #18 0x7fff597e005a in xmlParseContent (libxml2.2.dylib:x86_64+0x3605a) #19 0x7fff597e03f1 in xmlParseElement (libxml2.2.dylib:x86_64+0x363f1) #20 0x7fff597e2b7a in xmlParseDocument (libxml2.2.dylib:x86_64+0x38b7a) #21 0x10d6c59ae in ncml_module::SaxParserWrapper::parse(std::__1::basic_string, std::__1::allocator > const&) SaxParserWrapper.cc:338 #22 0x10d55ad0b in ncml_module::NCMLParser::parseInto(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType, BESDapResponse*) NCMLParser.cc:185 #23 0x10d5d6aae in ncml_module::NCMLRequestHandler::ncml_build_dds(BESDataHandlerInterface&) NCMLRequestHandler.cc:260 #24 0x10203dc8f in BESRequestHandlerList::execute_current(BESDataHandlerInterface&) BESRequestHandlerList.cc:273 #25 0x10203c0a4 in BESRequestHandlerList::execute_each(BESDataHandlerInterface&) BESRequestHandlerList.cc:167 #26 0x105c2a5dc in BESDDXResponseHandler::execute(BESDataHandlerInterface&) BESDDXResponseHandler.cc:122 #27 0x102456d5a in BESXMLInterface::execute_data_request_plan() BESXMLInterface.cc:285 #28 0x101eb1b8d in BESInterface::execute_request(std::__1::basic_string, std::__1::allocator > const&) BESInterface.cc:513 #29 0x101e1a8d8 in StandAloneClient::executeCommand(std::__1::basic_string, std::__1::allocator > const&, int) StandAloneClient.cc:237 SUMMARY: AddressSanitizer: heap-buffer-overflow (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x4f3fd) in __asan_memcpy Shadow bytes around the buggy address: 0x1c04000017b0: fa fa 04 fa fa fa 04 fa fa fa 00 fa fa fa 00 fa 0x1c04000017c0: fa fa 00 fa fa fa fd fa fa fa 04 fa fa fa 04 fa 0x1c04000017d0: fa fa 00 fa fa fa 00 fa fa fa 00 fa fa fa fd fa 0x1c04000017e0: fa fa 04 fa fa fa 04 fa fa fa 00 fa fa fa 00 fa 0x1c04000017f0: fa fa 00 fa fa fa fd fa fa fa 04 fa fa fa 04 fa =>0x1c0400001800: fa fa 00 fa fa fa 00 fa fa fa[04]fa fa fa 04 fa 0x1c0400001810: fa fa 04 fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c0400001820: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c0400001830: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c0400001840: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c0400001850: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa Shadow byte legend (one shadow byte represents 8 application bytes): Addressable: 00 Partially addressable: 01 02 03 04 05 06 07 Heap left redzone: fa Freed heap region: fd Stack left redzone: f1 Stack mid redzone: f2 Stack right redzone: f3 Stack after return: f5 Stack use after scope: f8 Global redzone: f9 Global init order: f6 Poisoned by user: f7 Container overflow: fc Array cookie: ac Intra object redzone: bb ASan internal: fe Left alloca redzone: ca Right alloca redzone: cb ==80677==ABORTING /Users/jimg/src/opendap/hyrax_git/bes/modules/ncml_module/tests/testsuite.dir/at-groups/540/test-source: line 44: 80677 Abort trap: 6 besstandalone -c $abs_builddir/bes.conf -i ./test.bescmd stdout: ./aggregations.at:322: exit code was 134, expected 0 540. aggregations.at:322: 540. Comparing ddx response for agg/joinExisting_virtual_fine.ncml to baseline ${abs_srcdir}/baselines/agg/joinExisting_virtual_fine.ncml (aggregations.at:322): FAILED (aggregations.at:322) # -*- compilation -*- 541. aggregations.at:322: testing Comparing dods response for agg/joinExisting_virtual_fine.ncml to baseline ${abs_srcdir}/baselines/agg/joinExisting_virtual_fine.ncml ... ./aggregations.at:322: besstandalone -c $abs_builddir/bes.conf -i ./test.bescmd stderr: Width: 4 Name: V Width: 4 Name: V Width: 20 Name: V ================================================================= ==80726==ERROR: AddressSanitizer: heap-buffer-overflow on address 0x60200000c074 at pc 0x0001043ee3fe bp 0x7ffeebfa2df0 sp 0x7ffeebfa25a0 READ of size 20 at 0x60200000c074 thread T0 #0 0x1043ee3fd in __asan_memcpy (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x4f3fd) Provided dSYM: [/Users/jimg/src/opendap/hyrax_git/build/lib/libdap.25.dylib.dSYM/Contents/Resources/DWARF/libdap.25.dylib] does not match symbol owner 0x7f81c1201dd0 #1 0x107fdbf39 in libdap::Vector::val2buf(void*, bool) Vector.cc:1212 #2 0x107fc55e7 in libdap::Vector::m_duplicate(libdap::Vector const&) Vector.cc:116 #3 0x107fc9733 in libdap::Vector::Vector(libdap::Vector const&) Vector.cc:297 #4 0x108017385 in libdap::Array::Array(libdap::Array const&) Array.cc:164 #5 0x10f0938da in agg_util::ArrayAggregationBase::ArrayAggregationBase(agg_util::ArrayAggregationBase const&) ArrayAggregationBase.cc:56 #6 0x10f0aa476 in agg_util::ArrayJoinExistingAggregation::ArrayJoinExistingAggregation(agg_util::ArrayJoinExistingAggregation const&) ArrayJoinExistingAggregation.cc:79 #7 0x10f0aa5bc in agg_util::ArrayJoinExistingAggregation::ArrayJoinExistingAggregation(agg_util::ArrayJoinExistingAggregation const&) ArrayJoinExistingAggregation.cc:80 #8 0x10f0aa7ac in agg_util::ArrayJoinExistingAggregation::ptr_duplicate() ArrayJoinExistingAggregation.cc:105 #9 0x107ec80fd in libdap::DDS::add_var(libdap::BaseType*) DDS.cc:607 #10 0x10efea678 in ncml_module::AggregationElement::processAggVarJoinExistingForArray(libdap::DDS&, libdap::Array const&, agg_util::Dimension const&, std::__1::vector, std::__1::allocator > > const&) AggregationElement.cc:912 #11 0x10efc8ae0 in ncml_module::AggregationElement::processJoinExistingOnAggVar(libdap::DDS*, std::__1::basic_string, std::__1::allocator > const&, libdap::DDS const&) AggregationElement.cc:830 #12 0x10ef7c028 in ncml_module::AggregationElement::processJoinExisting() AggregationElement.cc:510 #13 0x10ef6c6c7 in ncml_module::AggregationElement::handleEnd() AggregationElement.cc:221 #14 0x10f3bab9f in ncml_module::NCMLParser::processEndNCMLElement(std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:1186 #15 0x10f3c235b in ncml_module::NCMLParser::onEndElementWithNamespace(std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:324 #16 0x10f5268c9 in ncmlSax2EndElementNs(void*, unsigned char const*, unsigned char const*, unsigned char const*) SaxParserWrapper.cc:242 #17 0x7fff597e1d8e in xmlParseEndTag2 (libxml2.2.dylib:x86_64+0x37d8e) #18 0x7fff597e0440 in xmlParseElement (libxml2.2.dylib:x86_64+0x36440) #19 0x7fff597e005a in xmlParseContent (libxml2.2.dylib:x86_64+0x3605a) #20 0x7fff597e03f1 in xmlParseElement (libxml2.2.dylib:x86_64+0x363f1) #21 0x7fff597e2b7a in xmlParseDocument (libxml2.2.dylib:x86_64+0x38b7a) #22 0x10f5179ae in ncml_module::SaxParserWrapper::parse(std::__1::basic_string, std::__1::allocator > const&) SaxParserWrapper.cc:338 #23 0x10f3acd0b in ncml_module::NCMLParser::parseInto(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType, BESDapResponse*) NCMLParser.cc:185 #24 0x10f42e346 in ncml_module::NCMLRequestHandler::ncml_build_data(BESDataHandlerInterface&) NCMLRequestHandler.cc:297 #25 0x103e90c8f in BESRequestHandlerList::execute_current(BESDataHandlerInterface&) BESRequestHandlerList.cc:273 #26 0x103e8f0a4 in BESRequestHandlerList::execute_each(BESDataHandlerInterface&) BESRequestHandlerList.cc:167 #27 0x107a3288c in BESDataResponseHandler::execute(BESDataHandlerInterface&) BESDataResponseHandler.cc:148 #28 0x1042a7d5a in BESXMLInterface::execute_data_request_plan() BESXMLInterface.cc:285 #29 0x103d04b8d in BESInterface::execute_request(std::__1::basic_string, std::__1::allocator > const&) BESInterface.cc:513 #30 0x103c6d8d8 in StandAloneClient::executeCommand(std::__1::basic_string, std::__1::allocator > const&, int) StandAloneClient.cc:237 #31 0x103c6b3aa in StandAloneClient::executeCommands(std::__1::basic_ifstream >&, int) StandAloneClient.cc:349 #32 0x103c50e6d in StandAloneApp::run() StandAloneApp.cc:251 #33 0x103f74c24 in BESApp::main(int, char**) BESApp.cc:58 #34 0x103c5412e in main StandAloneApp.cc:345 #35 0x7fff59ad3014 in start (libdyld.dylib:x86_64+0x1014) 0x60200000c074 is located 0 bytes to the right of 4-byte region [0x60200000c070,0x60200000c074) allocated by thread T0 here: #0 0x104401cb2 in wrap__Znam (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x62cb2) #1 0x107fc6b3c in libdap::Vector::m_create_cardinal_data_buffer_for_type(unsigned int) Vector.cc:203 #2 0x107fdbc15 in libdap::Vector::val2buf(void*, bool) Vector.cc:1206 #3 0x107fc55e7 in libdap::Vector::m_duplicate(libdap::Vector const&) Vector.cc:116 #4 0x107fc9733 in libdap::Vector::Vector(libdap::Vector const&) Vector.cc:297 #5 0x108017385 in libdap::Array::Array(libdap::Array const&) Array.cc:164 #6 0x10f093116 in agg_util::ArrayAggregationBase::ArrayAggregationBase(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&) ArrayAggregationBase.cc:50 #7 0x10f0a607b in agg_util::ArrayJoinExistingAggregation::ArrayJoinExistingAggregation(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&, agg_util::Dimension const&) ArrayJoinExistingAggregation.cc:54 #8 0x10f0aa444 in agg_util::ArrayJoinExistingAggregation::ArrayJoinExistingAggregation(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&, agg_util::Dimension const&) ArrayJoinExistingAggregation.cc:55 #9 0x10efe803e in ncml_module::AggregationElement::processAggVarJoinExistingForArray(libdap::DDS&, libdap::Array const&, agg_util::Dimension const&, std::__1::vector, std::__1::allocator > > const&) AggregationElement.cc:900 #10 0x10efc8ae0 in ncml_module::AggregationElement::processJoinExistingOnAggVar(libdap::DDS*, std::__1::basic_string, std::__1::allocator > const&, libdap::DDS const&) AggregationElement.cc:830 #11 0x10ef7c028 in ncml_module::AggregationElement::processJoinExisting() AggregationElement.cc:510 #12 0x10ef6c6c7 in ncml_module::AggregationElement::handleEnd() AggregationElement.cc:221 #13 0x10f3bab9f in ncml_module::NCMLParser::processEndNCMLElement(std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:1186 #14 0x10f3c235b in ncml_module::NCMLParser::onEndElementWithNamespace(std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:324 #15 0x10f5268c9 in ncmlSax2EndElementNs(void*, unsigned char const*, unsigned char const*, unsigned char const*) SaxParserWrapper.cc:242 #16 0x7fff597e1d8e in xmlParseEndTag2 (libxml2.2.dylib:x86_64+0x37d8e) #17 0x7fff597e0440 in xmlParseElement (libxml2.2.dylib:x86_64+0x36440) #18 0x7fff597e005a in xmlParseContent (libxml2.2.dylib:x86_64+0x3605a) #19 0x7fff597e03f1 in xmlParseElement (libxml2.2.dylib:x86_64+0x363f1) #20 0x7fff597e2b7a in xmlParseDocument (libxml2.2.dylib:x86_64+0x38b7a) #21 0x10f5179ae in ncml_module::SaxParserWrapper::parse(std::__1::basic_string, std::__1::allocator > const&) SaxParserWrapper.cc:338 #22 0x10f3acd0b in ncml_module::NCMLParser::parseInto(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType, BESDapResponse*) NCMLParser.cc:185 #23 0x10f42e346 in ncml_module::NCMLRequestHandler::ncml_build_data(BESDataHandlerInterface&) NCMLRequestHandler.cc:297 #24 0x103e90c8f in BESRequestHandlerList::execute_current(BESDataHandlerInterface&) BESRequestHandlerList.cc:273 #25 0x103e8f0a4 in BESRequestHandlerList::execute_each(BESDataHandlerInterface&) BESRequestHandlerList.cc:167 #26 0x107a3288c in BESDataResponseHandler::execute(BESDataHandlerInterface&) BESDataResponseHandler.cc:148 #27 0x1042a7d5a in BESXMLInterface::execute_data_request_plan() BESXMLInterface.cc:285 #28 0x103d04b8d in BESInterface::execute_request(std::__1::basic_string, std::__1::allocator > const&) BESInterface.cc:513 #29 0x103c6d8d8 in StandAloneClient::executeCommand(std::__1::basic_string, std::__1::allocator > const&, int) StandAloneClient.cc:237 SUMMARY: AddressSanitizer: heap-buffer-overflow (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x4f3fd) in __asan_memcpy Shadow bytes around the buggy address: 0x1c04000017b0: fa fa fd fa fa fa 04 fa fa fa 04 fa fa fa 00 fa 0x1c04000017c0: fa fa 00 fa fa fa 00 fa fa fa fd fa fa fa 04 fa 0x1c04000017d0: fa fa 04 fa fa fa 00 fa fa fa 00 fa fa fa 00 fa 0x1c04000017e0: fa fa fd fa fa fa 04 fa fa fa 04 fa fa fa 00 fa 0x1c04000017f0: fa fa 00 fa fa fa 00 fa fa fa fd fa fa fa 04 fa =>0x1c0400001800: fa fa 04 fa fa fa 00 fa fa fa 00 fa fa fa[04]fa 0x1c0400001810: fa fa 04 fa fa fa 04 fa fa fa fa fa fa fa fa fa 0x1c0400001820: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c0400001830: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c0400001840: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c0400001850: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa Shadow byte legend (one shadow byte represents 8 application bytes): Addressable: 00 Partially addressable: 01 02 03 04 05 06 07 Heap left redzone: fa Freed heap region: fd Stack left redzone: f1 Stack mid redzone: f2 Stack right redzone: f3 Stack after return: f5 Stack use after scope: f8 Global redzone: f9 Global init order: f6 Poisoned by user: f7 Container overflow: fc Array cookie: ac Intra object redzone: bb ASan internal: fe Left alloca redzone: ca Right alloca redzone: cb ==80726==ABORTING /Users/jimg/src/opendap/hyrax_git/bes/modules/ncml_module/tests/testsuite.dir/at-groups/541/test-source: line 44: 80726 Abort trap: 6 besstandalone -c $abs_builddir/bes.conf -i ./test.bescmd stdout: ./aggregations.at:322: exit code was 134, expected 0 541. aggregations.at:322: 541. Comparing dods response for agg/joinExisting_virtual_fine.ncml to baseline ${abs_srcdir}/baselines/agg/joinExisting_virtual_fine.ncml (aggregations.at:322): FAILED (aggregations.at:322) # -*- compilation -*- 542. aggregations.at:325: testing Comparing dods response for agg/joinExisting_virtual_fine.ncml to baseline ${abs_srcdir}/baselines/agg/joinExisting_fine_cons_1 ... ./aggregations.at:325: besstandalone -c $abs_builddir/bes.conf -i ./test.bescmd stderr: Width: 4 Name: V Width: 4 Name: V Width: 20 Name: V ================================================================= ==80798==ERROR: AddressSanitizer: heap-buffer-overflow on address 0x60200000c094 at pc 0x000109aa93fe bp 0x7ffee68eadf0 sp 0x7ffee68ea5a0 READ of size 20 at 0x60200000c094 thread T0 #0 0x109aa93fd in __asan_memcpy (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x4f3fd) Provided dSYM: [/Users/jimg/src/opendap/hyrax_git/build/lib/libdap.25.dylib.dSYM/Contents/Resources/DWARF/libdap.25.dylib] does not match symbol owner 0x7fae00d0c0d0 #1 0x10d693f39 in libdap::Vector::val2buf(void*, bool) Vector.cc:1212 #2 0x10d67d5e7 in libdap::Vector::m_duplicate(libdap::Vector const&) Vector.cc:116 #3 0x10d681733 in libdap::Vector::Vector(libdap::Vector const&) Vector.cc:297 #4 0x10d6cf385 in libdap::Array::Array(libdap::Array const&) Array.cc:164 #5 0x1146a78da in agg_util::ArrayAggregationBase::ArrayAggregationBase(agg_util::ArrayAggregationBase const&) ArrayAggregationBase.cc:56 #6 0x1146be476 in agg_util::ArrayJoinExistingAggregation::ArrayJoinExistingAggregation(agg_util::ArrayJoinExistingAggregation const&) ArrayJoinExistingAggregation.cc:79 #7 0x1146be5bc in agg_util::ArrayJoinExistingAggregation::ArrayJoinExistingAggregation(agg_util::ArrayJoinExistingAggregation const&) ArrayJoinExistingAggregation.cc:80 #8 0x1146be7ac in agg_util::ArrayJoinExistingAggregation::ptr_duplicate() ArrayJoinExistingAggregation.cc:105 #9 0x10d5800fd in libdap::DDS::add_var(libdap::BaseType*) DDS.cc:607 #10 0x1145fe678 in ncml_module::AggregationElement::processAggVarJoinExistingForArray(libdap::DDS&, libdap::Array const&, agg_util::Dimension const&, std::__1::vector, std::__1::allocator > > const&) AggregationElement.cc:912 #11 0x1145dcae0 in ncml_module::AggregationElement::processJoinExistingOnAggVar(libdap::DDS*, std::__1::basic_string, std::__1::allocator > const&, libdap::DDS const&) AggregationElement.cc:830 #12 0x114590028 in ncml_module::AggregationElement::processJoinExisting() AggregationElement.cc:510 #13 0x1145806c7 in ncml_module::AggregationElement::handleEnd() AggregationElement.cc:221 #14 0x1149ceb9f in ncml_module::NCMLParser::processEndNCMLElement(std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:1186 #15 0x1149d635b in ncml_module::NCMLParser::onEndElementWithNamespace(std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:324 #16 0x114b3a8c9 in ncmlSax2EndElementNs(void*, unsigned char const*, unsigned char const*, unsigned char const*) SaxParserWrapper.cc:242 #17 0x7fff597e1d8e in xmlParseEndTag2 (libxml2.2.dylib:x86_64+0x37d8e) #18 0x7fff597e0440 in xmlParseElement (libxml2.2.dylib:x86_64+0x36440) #19 0x7fff597e005a in xmlParseContent (libxml2.2.dylib:x86_64+0x3605a) #20 0x7fff597e03f1 in xmlParseElement (libxml2.2.dylib:x86_64+0x363f1) #21 0x7fff597e2b7a in xmlParseDocument (libxml2.2.dylib:x86_64+0x38b7a) #22 0x114b2b9ae in ncml_module::SaxParserWrapper::parse(std::__1::basic_string, std::__1::allocator > const&) SaxParserWrapper.cc:338 #23 0x1149c0d0b in ncml_module::NCMLParser::parseInto(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType, BESDapResponse*) NCMLParser.cc:185 #24 0x114a42346 in ncml_module::NCMLRequestHandler::ncml_build_data(BESDataHandlerInterface&) NCMLRequestHandler.cc:297 #25 0x10954ac8f in BESRequestHandlerList::execute_current(BESDataHandlerInterface&) BESRequestHandlerList.cc:273 #26 0x1095490a4 in BESRequestHandlerList::execute_each(BESDataHandlerInterface&) BESRequestHandlerList.cc:167 #27 0x10d13288c in BESDataResponseHandler::execute(BESDataHandlerInterface&) BESDataResponseHandler.cc:148 #28 0x109962d5a in BESXMLInterface::execute_data_request_plan() BESXMLInterface.cc:285 #29 0x1093beb8d in BESInterface::execute_request(std::__1::basic_string, std::__1::allocator > const&) BESInterface.cc:513 #30 0x1093258d8 in StandAloneClient::executeCommand(std::__1::basic_string, std::__1::allocator > const&, int) StandAloneClient.cc:237 #31 0x1093233aa in StandAloneClient::executeCommands(std::__1::basic_ifstream >&, int) StandAloneClient.cc:349 #32 0x109308e6d in StandAloneApp::run() StandAloneApp.cc:251 #33 0x10962ec24 in BESApp::main(int, char**) BESApp.cc:58 #34 0x10930c12e in main StandAloneApp.cc:345 #35 0x7fff59ad3014 in start (libdyld.dylib:x86_64+0x1014) 0x60200000c094 is located 0 bytes to the right of 4-byte region [0x60200000c090,0x60200000c094) allocated by thread T0 here: #0 0x109abccb2 in wrap__Znam (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x62cb2) #1 0x10d67eb3c in libdap::Vector::m_create_cardinal_data_buffer_for_type(unsigned int) Vector.cc:203 #2 0x10d693c15 in libdap::Vector::val2buf(void*, bool) Vector.cc:1206 #3 0x10d67d5e7 in libdap::Vector::m_duplicate(libdap::Vector const&) Vector.cc:116 #4 0x10d681733 in libdap::Vector::Vector(libdap::Vector const&) Vector.cc:297 #5 0x10d6cf385 in libdap::Array::Array(libdap::Array const&) Array.cc:164 #6 0x1146a7116 in agg_util::ArrayAggregationBase::ArrayAggregationBase(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&) ArrayAggregationBase.cc:50 #7 0x1146ba07b in agg_util::ArrayJoinExistingAggregation::ArrayJoinExistingAggregation(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&, agg_util::Dimension const&) ArrayJoinExistingAggregation.cc:54 #8 0x1146be444 in agg_util::ArrayJoinExistingAggregation::ArrayJoinExistingAggregation(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&, agg_util::Dimension const&) ArrayJoinExistingAggregation.cc:55 #9 0x1145fc03e in ncml_module::AggregationElement::processAggVarJoinExistingForArray(libdap::DDS&, libdap::Array const&, agg_util::Dimension const&, std::__1::vector, std::__1::allocator > > const&) AggregationElement.cc:900 #10 0x1145dcae0 in ncml_module::AggregationElement::processJoinExistingOnAggVar(libdap::DDS*, std::__1::basic_string, std::__1::allocator > const&, libdap::DDS const&) AggregationElement.cc:830 #11 0x114590028 in ncml_module::AggregationElement::processJoinExisting() AggregationElement.cc:510 #12 0x1145806c7 in ncml_module::AggregationElement::handleEnd() AggregationElement.cc:221 #13 0x1149ceb9f in ncml_module::NCMLParser::processEndNCMLElement(std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:1186 #14 0x1149d635b in ncml_module::NCMLParser::onEndElementWithNamespace(std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:324 #15 0x114b3a8c9 in ncmlSax2EndElementNs(void*, unsigned char const*, unsigned char const*, unsigned char const*) SaxParserWrapper.cc:242 #16 0x7fff597e1d8e in xmlParseEndTag2 (libxml2.2.dylib:x86_64+0x37d8e) #17 0x7fff597e0440 in xmlParseElement (libxml2.2.dylib:x86_64+0x36440) #18 0x7fff597e005a in xmlParseContent (libxml2.2.dylib:x86_64+0x3605a) #19 0x7fff597e03f1 in xmlParseElement (libxml2.2.dylib:x86_64+0x363f1) #20 0x7fff597e2b7a in xmlParseDocument (libxml2.2.dylib:x86_64+0x38b7a) #21 0x114b2b9ae in ncml_module::SaxParserWrapper::parse(std::__1::basic_string, std::__1::allocator > const&) SaxParserWrapper.cc:338 #22 0x1149c0d0b in ncml_module::NCMLParser::parseInto(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType, BESDapResponse*) NCMLParser.cc:185 #23 0x114a42346 in ncml_module::NCMLRequestHandler::ncml_build_data(BESDataHandlerInterface&) NCMLRequestHandler.cc:297 #24 0x10954ac8f in BESRequestHandlerList::execute_current(BESDataHandlerInterface&) BESRequestHandlerList.cc:273 #25 0x1095490a4 in BESRequestHandlerList::execute_each(BESDataHandlerInterface&) BESRequestHandlerList.cc:167 #26 0x10d13288c in BESDataResponseHandler::execute(BESDataHandlerInterface&) BESDataResponseHandler.cc:148 #27 0x109962d5a in BESXMLInterface::execute_data_request_plan() BESXMLInterface.cc:285 #28 0x1093beb8d in BESInterface::execute_request(std::__1::basic_string, std::__1::allocator > const&) BESInterface.cc:513 #29 0x1093258d8 in StandAloneClient::executeCommand(std::__1::basic_string, std::__1::allocator > const&, int) StandAloneClient.cc:237 SUMMARY: AddressSanitizer: heap-buffer-overflow (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x4f3fd) in __asan_memcpy Shadow bytes around the buggy address: 0x1c04000017c0: fa fa 00 fa fa fa 00 fa fa fa 00 fa fa fa fd fa 0x1c04000017d0: fa fa 04 fa fa fa 04 fa fa fa 00 fa fa fa 00 fa 0x1c04000017e0: fa fa 00 fa fa fa fd fa fa fa 04 fa fa fa 04 fa 0x1c04000017f0: fa fa 00 fa fa fa 00 fa fa fa 00 fa fa fa fd fa 0x1c0400001800: fa fa 04 fa fa fa 04 fa fa fa 00 fa fa fa 00 fa =>0x1c0400001810: fa fa[04]fa fa fa 04 fa fa fa 04 fa fa fa fa fa 0x1c0400001820: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c0400001830: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c0400001840: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c0400001850: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c0400001860: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa Shadow byte legend (one shadow byte represents 8 application bytes): Addressable: 00 Partially addressable: 01 02 03 04 05 06 07 Heap left redzone: fa Freed heap region: fd Stack left redzone: f1 Stack mid redzone: f2 Stack right redzone: f3 Stack after return: f5 Stack use after scope: f8 Global redzone: f9 Global init order: f6 Poisoned by user: f7 Container overflow: fc Array cookie: ac Intra object redzone: bb ASan internal: fe Left alloca redzone: ca Right alloca redzone: cb ==80798==ABORTING /Users/jimg/src/opendap/hyrax_git/bes/modules/ncml_module/tests/testsuite.dir/at-groups/542/test-source: line 44: 80798 Abort trap: 6 besstandalone -c $abs_builddir/bes.conf -i ./test.bescmd stdout: ./aggregations.at:325: exit code was 134, expected 0 542. aggregations.at:325: 542. Comparing dods response for agg/joinExisting_virtual_fine.ncml to baseline ${abs_srcdir}/baselines/agg/joinExisting_fine_cons_1 (aggregations.at:325): FAILED (aggregations.at:325) # -*- compilation -*- 543. aggregations.at:328: testing Comparing dods response for agg/joinExisting_virtual_fine.ncml to baseline ${abs_srcdir}/baselines/agg/joinExisting_fine_cons_2 ... ./aggregations.at:328: besstandalone -c $abs_builddir/bes.conf -i ./test.bescmd stderr: Width: 4 Name: V Width: 4 Name: V Width: 20 Name: V ================================================================= ==80797==ERROR: AddressSanitizer: heap-buffer-overflow on address 0x60200000c094 at pc 0x00010c41c3fe bp 0x7ffee3f77df0 sp 0x7ffee3f775a0 READ of size 20 at 0x60200000c094 thread T0 #0 0x10c41c3fd in __asan_memcpy (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x4f3fd) Provided dSYM: [/Users/jimg/src/opendap/hyrax_git/build/lib/libdap.25.dylib.dSYM/Contents/Resources/DWARF/libdap.25.dylib] does not match symbol owner 0x7fbfdc809b20 #1 0x10ffdbf39 in libdap::Vector::val2buf(void*, bool) Vector.cc:1212 #2 0x10ffc55e7 in libdap::Vector::m_duplicate(libdap::Vector const&) Vector.cc:116 #3 0x10ffc9733 in libdap::Vector::Vector(libdap::Vector const&) Vector.cc:297 #4 0x110017385 in libdap::Array::Array(libdap::Array const&) Array.cc:164 #5 0x112fd78da in agg_util::ArrayAggregationBase::ArrayAggregationBase(agg_util::ArrayAggregationBase const&) ArrayAggregationBase.cc:56 #6 0x112fee476 in agg_util::ArrayJoinExistingAggregation::ArrayJoinExistingAggregation(agg_util::ArrayJoinExistingAggregation const&) ArrayJoinExistingAggregation.cc:79 #7 0x112fee5bc in agg_util::ArrayJoinExistingAggregation::ArrayJoinExistingAggregation(agg_util::ArrayJoinExistingAggregation const&) ArrayJoinExistingAggregation.cc:80 #8 0x112fee7ac in agg_util::ArrayJoinExistingAggregation::ptr_duplicate() ArrayJoinExistingAggregation.cc:105 #9 0x10fec80fd in libdap::DDS::add_var(libdap::BaseType*) DDS.cc:607 #10 0x112f2e678 in ncml_module::AggregationElement::processAggVarJoinExistingForArray(libdap::DDS&, libdap::Array const&, agg_util::Dimension const&, std::__1::vector, std::__1::allocator > > const&) AggregationElement.cc:912 #11 0x112f0cae0 in ncml_module::AggregationElement::processJoinExistingOnAggVar(libdap::DDS*, std::__1::basic_string, std::__1::allocator > const&, libdap::DDS const&) AggregationElement.cc:830 #12 0x112ec0028 in ncml_module::AggregationElement::processJoinExisting() AggregationElement.cc:510 #13 0x112eb06c7 in ncml_module::AggregationElement::handleEnd() AggregationElement.cc:221 #14 0x1132feb9f in ncml_module::NCMLParser::processEndNCMLElement(std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:1186 #15 0x11330635b in ncml_module::NCMLParser::onEndElementWithNamespace(std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:324 #16 0x11346a8c9 in ncmlSax2EndElementNs(void*, unsigned char const*, unsigned char const*, unsigned char const*) SaxParserWrapper.cc:242 #17 0x7fff597e1d8e in xmlParseEndTag2 (libxml2.2.dylib:x86_64+0x37d8e) #18 0x7fff597e0440 in xmlParseElement (libxml2.2.dylib:x86_64+0x36440) #19 0x7fff597e005a in xmlParseContent (libxml2.2.dylib:x86_64+0x3605a) #20 0x7fff597e03f1 in xmlParseElement (libxml2.2.dylib:x86_64+0x363f1) #21 0x7fff597e2b7a in xmlParseDocument (libxml2.2.dylib:x86_64+0x38b7a) #22 0x11345b9ae in ncml_module::SaxParserWrapper::parse(std::__1::basic_string, std::__1::allocator > const&) SaxParserWrapper.cc:338 #23 0x1132f0d0b in ncml_module::NCMLParser::parseInto(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType, BESDapResponse*) NCMLParser.cc:185 #24 0x113372346 in ncml_module::NCMLRequestHandler::ncml_build_data(BESDataHandlerInterface&) NCMLRequestHandler.cc:297 #25 0x10bebac8f in BESRequestHandlerList::execute_current(BESDataHandlerInterface&) BESRequestHandlerList.cc:273 #26 0x10beb90a4 in BESRequestHandlerList::execute_each(BESDataHandlerInterface&) BESRequestHandlerList.cc:167 #27 0x10fa3288c in BESDataResponseHandler::execute(BESDataHandlerInterface&) BESDataResponseHandler.cc:148 #28 0x10c2d5d5a in BESXMLInterface::execute_data_request_plan() BESXMLInterface.cc:285 #29 0x10bd2eb8d in BESInterface::execute_request(std::__1::basic_string, std::__1::allocator > const&) BESInterface.cc:513 #30 0x10bc988d8 in StandAloneClient::executeCommand(std::__1::basic_string, std::__1::allocator > const&, int) StandAloneClient.cc:237 #31 0x10bc963aa in StandAloneClient::executeCommands(std::__1::basic_ifstream >&, int) StandAloneClient.cc:349 #32 0x10bc7be6d in StandAloneApp::run() StandAloneApp.cc:251 #33 0x10bf9ec24 in BESApp::main(int, char**) BESApp.cc:58 #34 0x10bc7f12e in main StandAloneApp.cc:345 #35 0x7fff59ad3014 in start (libdyld.dylib:x86_64+0x1014) 0x60200000c094 is located 0 bytes to the right of 4-byte region [0x60200000c090,0x60200000c094) allocated by thread T0 here: #0 0x10c42fcb2 in wrap__Znam (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x62cb2) #1 0x10ffc6b3c in libdap::Vector::m_create_cardinal_data_buffer_for_type(unsigned int) Vector.cc:203 #2 0x10ffdbc15 in libdap::Vector::val2buf(void*, bool) Vector.cc:1206 #3 0x10ffc55e7 in libdap::Vector::m_duplicate(libdap::Vector const&) Vector.cc:116 #4 0x10ffc9733 in libdap::Vector::Vector(libdap::Vector const&) Vector.cc:297 #5 0x110017385 in libdap::Array::Array(libdap::Array const&) Array.cc:164 #6 0x112fd7116 in agg_util::ArrayAggregationBase::ArrayAggregationBase(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&) ArrayAggregationBase.cc:50 #7 0x112fea07b in agg_util::ArrayJoinExistingAggregation::ArrayJoinExistingAggregation(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&, agg_util::Dimension const&) ArrayJoinExistingAggregation.cc:54 #8 0x112fee444 in agg_util::ArrayJoinExistingAggregation::ArrayJoinExistingAggregation(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&, agg_util::Dimension const&) ArrayJoinExistingAggregation.cc:55 #9 0x112f2c03e in ncml_module::AggregationElement::processAggVarJoinExistingForArray(libdap::DDS&, libdap::Array const&, agg_util::Dimension const&, std::__1::vector, std::__1::allocator > > const&) AggregationElement.cc:900 #10 0x112f0cae0 in ncml_module::AggregationElement::processJoinExistingOnAggVar(libdap::DDS*, std::__1::basic_string, std::__1::allocator > const&, libdap::DDS const&) AggregationElement.cc:830 #11 0x112ec0028 in ncml_module::AggregationElement::processJoinExisting() AggregationElement.cc:510 #12 0x112eb06c7 in ncml_module::AggregationElement::handleEnd() AggregationElement.cc:221 #13 0x1132feb9f in ncml_module::NCMLParser::processEndNCMLElement(std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:1186 #14 0x11330635b in ncml_module::NCMLParser::onEndElementWithNamespace(std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:324 #15 0x11346a8c9 in ncmlSax2EndElementNs(void*, unsigned char const*, unsigned char const*, unsigned char const*) SaxParserWrapper.cc:242 #16 0x7fff597e1d8e in xmlParseEndTag2 (libxml2.2.dylib:x86_64+0x37d8e) #17 0x7fff597e0440 in xmlParseElement (libxml2.2.dylib:x86_64+0x36440) #18 0x7fff597e005a in xmlParseContent (libxml2.2.dylib:x86_64+0x3605a) #19 0x7fff597e03f1 in xmlParseElement (libxml2.2.dylib:x86_64+0x363f1) #20 0x7fff597e2b7a in xmlParseDocument (libxml2.2.dylib:x86_64+0x38b7a) #21 0x11345b9ae in ncml_module::SaxParserWrapper::parse(std::__1::basic_string, std::__1::allocator > const&) SaxParserWrapper.cc:338 #22 0x1132f0d0b in ncml_module::NCMLParser::parseInto(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType, BESDapResponse*) NCMLParser.cc:185 #23 0x113372346 in ncml_module::NCMLRequestHandler::ncml_build_data(BESDataHandlerInterface&) NCMLRequestHandler.cc:297 #24 0x10bebac8f in BESRequestHandlerList::execute_current(BESDataHandlerInterface&) BESRequestHandlerList.cc:273 #25 0x10beb90a4 in BESRequestHandlerList::execute_each(BESDataHandlerInterface&) BESRequestHandlerList.cc:167 #26 0x10fa3288c in BESDataResponseHandler::execute(BESDataHandlerInterface&) BESDataResponseHandler.cc:148 #27 0x10c2d5d5a in BESXMLInterface::execute_data_request_plan() BESXMLInterface.cc:285 #28 0x10bd2eb8d in BESInterface::execute_request(std::__1::basic_string, std::__1::allocator > const&) BESInterface.cc:513 #29 0x10bc988d8 in StandAloneClient::executeCommand(std::__1::basic_string, std::__1::allocator > const&, int) StandAloneClient.cc:237 SUMMARY: AddressSanitizer: heap-buffer-overflow (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x4f3fd) in __asan_memcpy Shadow bytes around the buggy address: 0x1c04000017c0: fa fa 00 fa fa fa 00 fa fa fa 00 fa fa fa fd fa 0x1c04000017d0: fa fa 04 fa fa fa 04 fa fa fa 00 fa fa fa 00 fa 0x1c04000017e0: fa fa 00 fa fa fa fd fa fa fa 04 fa fa fa 04 fa 0x1c04000017f0: fa fa 00 fa fa fa 00 fa fa fa 00 fa fa fa fd fa 0x1c0400001800: fa fa 04 fa fa fa 04 fa fa fa 00 fa fa fa 00 fa =>0x1c0400001810: fa fa[04]fa fa fa 04 fa fa fa 04 fa fa fa fa fa 0x1c0400001820: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c0400001830: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c0400001840: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c0400001850: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c0400001860: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa Shadow byte legend (one shadow byte represents 8 application bytes): Addressable: 00 Partially addressable: 01 02 03 04 05 06 07 Heap left redzone: fa Freed heap region: fd Stack left redzone: f1 Stack mid redzone: f2 Stack right redzone: f3 Stack after return: f5 Stack use after scope: f8 Global redzone: f9 Global init order: f6 Poisoned by user: f7 Container overflow: fc Array cookie: ac Intra object redzone: bb ASan internal: fe Left alloca redzone: ca Right alloca redzone: cb ==80797==ABORTING /Users/jimg/src/opendap/hyrax_git/bes/modules/ncml_module/tests/testsuite.dir/at-groups/543/test-source: line 44: 80797 Abort trap: 6 besstandalone -c $abs_builddir/bes.conf -i ./test.bescmd stdout: ./aggregations.at:328: exit code was 134, expected 0 543. aggregations.at:328: 543. Comparing dods response for agg/joinExisting_virtual_fine.ncml to baseline ${abs_srcdir}/baselines/agg/joinExisting_fine_cons_2 (aggregations.at:328): FAILED (aggregations.at:328) # -*- compilation -*- 544. aggregations.at:331: testing Comparing dods response for agg/joinExisting_virtual_fine.ncml to baseline ${abs_srcdir}/baselines/agg/joinExisting_fine_cons_3 ... ./aggregations.at:331: besstandalone -c $abs_builddir/bes.conf -i ./test.bescmd stderr: Width: 4 Name: V Width: 4 Name: V Width: 20 Name: V ================================================================= ==80796==ERROR: AddressSanitizer: heap-buffer-overflow on address 0x60200000c094 at pc 0x00010406b3fe bp 0x7ffeec32ddf0 sp 0x7ffeec32d5a0 READ of size 20 at 0x60200000c094 thread T0 #0 0x10406b3fd in __asan_memcpy (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x4f3fd) Provided dSYM: [/Users/jimg/src/opendap/hyrax_git/build/lib/libdap.25.dylib.dSYM/Contents/Resources/DWARF/libdap.25.dylib] does not match symbol owner 0x7fcebdd0b630 #1 0x107c93f39 in libdap::Vector::val2buf(void*, bool) Vector.cc:1212 #2 0x107c7d5e7 in libdap::Vector::m_duplicate(libdap::Vector const&) Vector.cc:116 #3 0x107c81733 in libdap::Vector::Vector(libdap::Vector const&) Vector.cc:297 #4 0x107ccf385 in libdap::Array::Array(libdap::Array const&) Array.cc:164 #5 0x10f8218da in agg_util::ArrayAggregationBase::ArrayAggregationBase(agg_util::ArrayAggregationBase const&) ArrayAggregationBase.cc:56 #6 0x10f838476 in agg_util::ArrayJoinExistingAggregation::ArrayJoinExistingAggregation(agg_util::ArrayJoinExistingAggregation const&) ArrayJoinExistingAggregation.cc:79 #7 0x10f8385bc in agg_util::ArrayJoinExistingAggregation::ArrayJoinExistingAggregation(agg_util::ArrayJoinExistingAggregation const&) ArrayJoinExistingAggregation.cc:80 #8 0x10f8387ac in agg_util::ArrayJoinExistingAggregation::ptr_duplicate() ArrayJoinExistingAggregation.cc:105 #9 0x107b800fd in libdap::DDS::add_var(libdap::BaseType*) DDS.cc:607 #10 0x10f778678 in ncml_module::AggregationElement::processAggVarJoinExistingForArray(libdap::DDS&, libdap::Array const&, agg_util::Dimension const&, std::__1::vector, std::__1::allocator > > const&) AggregationElement.cc:912 #11 0x10f756ae0 in ncml_module::AggregationElement::processJoinExistingOnAggVar(libdap::DDS*, std::__1::basic_string, std::__1::allocator > const&, libdap::DDS const&) AggregationElement.cc:830 #12 0x10f70a028 in ncml_module::AggregationElement::processJoinExisting() AggregationElement.cc:510 #13 0x10f6fa6c7 in ncml_module::AggregationElement::handleEnd() AggregationElement.cc:221 #14 0x10fb48b9f in ncml_module::NCMLParser::processEndNCMLElement(std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:1186 #15 0x10fb5035b in ncml_module::NCMLParser::onEndElementWithNamespace(std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:324 #16 0x10fcb48c9 in ncmlSax2EndElementNs(void*, unsigned char const*, unsigned char const*, unsigned char const*) SaxParserWrapper.cc:242 #17 0x7fff597e1d8e in xmlParseEndTag2 (libxml2.2.dylib:x86_64+0x37d8e) #18 0x7fff597e0440 in xmlParseElement (libxml2.2.dylib:x86_64+0x36440) #19 0x7fff597e005a in xmlParseContent (libxml2.2.dylib:x86_64+0x3605a) #20 0x7fff597e03f1 in xmlParseElement (libxml2.2.dylib:x86_64+0x363f1) #21 0x7fff597e2b7a in xmlParseDocument (libxml2.2.dylib:x86_64+0x38b7a) #22 0x10fca59ae in ncml_module::SaxParserWrapper::parse(std::__1::basic_string, std::__1::allocator > const&) SaxParserWrapper.cc:338 #23 0x10fb3ad0b in ncml_module::NCMLParser::parseInto(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType, BESDapResponse*) NCMLParser.cc:185 #24 0x10fbbc346 in ncml_module::NCMLRequestHandler::ncml_build_data(BESDataHandlerInterface&) NCMLRequestHandler.cc:297 #25 0x103b07c8f in BESRequestHandlerList::execute_current(BESDataHandlerInterface&) BESRequestHandlerList.cc:273 #26 0x103b060a4 in BESRequestHandlerList::execute_each(BESDataHandlerInterface&) BESRequestHandlerList.cc:167 #27 0x10773288c in BESDataResponseHandler::execute(BESDataHandlerInterface&) BESDataResponseHandler.cc:148 #28 0x103f23d5a in BESXMLInterface::execute_data_request_plan() BESXMLInterface.cc:285 #29 0x10397bb8d in BESInterface::execute_request(std::__1::basic_string, std::__1::allocator > const&) BESInterface.cc:513 #30 0x1038e28d8 in StandAloneClient::executeCommand(std::__1::basic_string, std::__1::allocator > const&, int) StandAloneClient.cc:237 #31 0x1038e03aa in StandAloneClient::executeCommands(std::__1::basic_ifstream >&, int) StandAloneClient.cc:349 #32 0x1038c5e6d in StandAloneApp::run() StandAloneApp.cc:251 #33 0x103bebc24 in BESApp::main(int, char**) BESApp.cc:58 #34 0x1038c912e in main StandAloneApp.cc:345 #35 0x7fff59ad3014 in start (libdyld.dylib:x86_64+0x1014) 0x60200000c094 is located 0 bytes to the right of 4-byte region [0x60200000c090,0x60200000c094) allocated by thread T0 here: #0 0x10407ecb2 in wrap__Znam (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x62cb2) #1 0x107c7eb3c in libdap::Vector::m_create_cardinal_data_buffer_for_type(unsigned int) Vector.cc:203 #2 0x107c93c15 in libdap::Vector::val2buf(void*, bool) Vector.cc:1206 #3 0x107c7d5e7 in libdap::Vector::m_duplicate(libdap::Vector const&) Vector.cc:116 #4 0x107c81733 in libdap::Vector::Vector(libdap::Vector const&) Vector.cc:297 #5 0x107ccf385 in libdap::Array::Array(libdap::Array const&) Array.cc:164 #6 0x10f821116 in agg_util::ArrayAggregationBase::ArrayAggregationBase(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&) ArrayAggregationBase.cc:50 #7 0x10f83407b in agg_util::ArrayJoinExistingAggregation::ArrayJoinExistingAggregation(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&, agg_util::Dimension const&) ArrayJoinExistingAggregation.cc:54 #8 0x10f838444 in agg_util::ArrayJoinExistingAggregation::ArrayJoinExistingAggregation(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&, agg_util::Dimension const&) ArrayJoinExistingAggregation.cc:55 #9 0x10f77603e in ncml_module::AggregationElement::processAggVarJoinExistingForArray(libdap::DDS&, libdap::Array const&, agg_util::Dimension const&, std::__1::vector, std::__1::allocator > > const&) AggregationElement.cc:900 #10 0x10f756ae0 in ncml_module::AggregationElement::processJoinExistingOnAggVar(libdap::DDS*, std::__1::basic_string, std::__1::allocator > const&, libdap::DDS const&) AggregationElement.cc:830 #11 0x10f70a028 in ncml_module::AggregationElement::processJoinExisting() AggregationElement.cc:510 #12 0x10f6fa6c7 in ncml_module::AggregationElement::handleEnd() AggregationElement.cc:221 #13 0x10fb48b9f in ncml_module::NCMLParser::processEndNCMLElement(std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:1186 #14 0x10fb5035b in ncml_module::NCMLParser::onEndElementWithNamespace(std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:324 #15 0x10fcb48c9 in ncmlSax2EndElementNs(void*, unsigned char const*, unsigned char const*, unsigned char const*) SaxParserWrapper.cc:242 #16 0x7fff597e1d8e in xmlParseEndTag2 (libxml2.2.dylib:x86_64+0x37d8e) #17 0x7fff597e0440 in xmlParseElement (libxml2.2.dylib:x86_64+0x36440) #18 0x7fff597e005a in xmlParseContent (libxml2.2.dylib:x86_64+0x3605a) #19 0x7fff597e03f1 in xmlParseElement (libxml2.2.dylib:x86_64+0x363f1) #20 0x7fff597e2b7a in xmlParseDocument (libxml2.2.dylib:x86_64+0x38b7a) #21 0x10fca59ae in ncml_module::SaxParserWrapper::parse(std::__1::basic_string, std::__1::allocator > const&) SaxParserWrapper.cc:338 #22 0x10fb3ad0b in ncml_module::NCMLParser::parseInto(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType, BESDapResponse*) NCMLParser.cc:185 #23 0x10fbbc346 in ncml_module::NCMLRequestHandler::ncml_build_data(BESDataHandlerInterface&) NCMLRequestHandler.cc:297 #24 0x103b07c8f in BESRequestHandlerList::execute_current(BESDataHandlerInterface&) BESRequestHandlerList.cc:273 #25 0x103b060a4 in BESRequestHandlerList::execute_each(BESDataHandlerInterface&) BESRequestHandlerList.cc:167 #26 0x10773288c in BESDataResponseHandler::execute(BESDataHandlerInterface&) BESDataResponseHandler.cc:148 #27 0x103f23d5a in BESXMLInterface::execute_data_request_plan() BESXMLInterface.cc:285 #28 0x10397bb8d in BESInterface::execute_request(std::__1::basic_string, std::__1::allocator > const&) BESInterface.cc:513 #29 0x1038e28d8 in StandAloneClient::executeCommand(std::__1::basic_string, std::__1::allocator > const&, int) StandAloneClient.cc:237 SUMMARY: AddressSanitizer: heap-buffer-overflow (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x4f3fd) in __asan_memcpy Shadow bytes around the buggy address: 0x1c04000017c0: fa fa 00 fa fa fa 00 fa fa fa 00 fa fa fa fd fa 0x1c04000017d0: fa fa 04 fa fa fa 04 fa fa fa 00 fa fa fa 00 fa 0x1c04000017e0: fa fa 00 fa fa fa fd fa fa fa 04 fa fa fa 04 fa 0x1c04000017f0: fa fa 00 fa fa fa 00 fa fa fa 00 fa fa fa fd fa 0x1c0400001800: fa fa 04 fa fa fa 04 fa fa fa 00 fa fa fa 00 fa =>0x1c0400001810: fa fa[04]fa fa fa 04 fa fa fa 04 fa fa fa fa fa 0x1c0400001820: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c0400001830: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c0400001840: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c0400001850: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c0400001860: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa Shadow byte legend (one shadow byte represents 8 application bytes): Addressable: 00 Partially addressable: 01 02 03 04 05 06 07 Heap left redzone: fa Freed heap region: fd Stack left redzone: f1 Stack mid redzone: f2 Stack right redzone: f3 Stack after return: f5 Stack use after scope: f8 Global redzone: f9 Global init order: f6 Poisoned by user: f7 Container overflow: fc Array cookie: ac Intra object redzone: bb ASan internal: fe Left alloca redzone: ca Right alloca redzone: cb ==80796==ABORTING /Users/jimg/src/opendap/hyrax_git/bes/modules/ncml_module/tests/testsuite.dir/at-groups/544/test-source: line 44: 80796 Abort trap: 6 besstandalone -c $abs_builddir/bes.conf -i ./test.bescmd stdout: ./aggregations.at:331: exit code was 134, expected 0 544. aggregations.at:331: 544. Comparing dods response for agg/joinExisting_virtual_fine.ncml to baseline ${abs_srcdir}/baselines/agg/joinExisting_fine_cons_3 (aggregations.at:331): FAILED (aggregations.at:331) # -*- compilation -*- 545. aggregations.at:334: testing Comparing das response for agg/joinExisting_multi.ncml to baseline ${abs_srcdir}/baselines/agg/joinExisting_multi.ncml ... ./aggregations.at:334: besstandalone -c $abs_builddir/bes.conf -i ./test.bescmd stderr: Width: 8 Name: A Width: 8 Name: A Width: 16 Name: A ================================================================= ==80799==ERROR: AddressSanitizer: heap-buffer-overflow on address 0x60200000bf58 at pc 0x00010e0123fe bp 0x7ffee2385c50 sp 0x7ffee2385400 READ of size 16 at 0x60200000bf58 thread T0 #0 0x10e0123fd in __asan_memcpy (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x4f3fd) Provided dSYM: [/Users/jimg/src/opendap/hyrax_git/build/lib/libdap.25.dylib.dSYM/Contents/Resources/DWARF/libdap.25.dylib] does not match symbol owner 0x7f8d0dd08350 #1 0x111bdbf39 in libdap::Vector::val2buf(void*, bool) Vector.cc:1212 #2 0x111bc55e7 in libdap::Vector::m_duplicate(libdap::Vector const&) Vector.cc:116 #3 0x111bc9733 in libdap::Vector::Vector(libdap::Vector const&) Vector.cc:297 #4 0x111c17385 in libdap::Array::Array(libdap::Array const&) Array.cc:164 #5 0x118c0c8da in agg_util::ArrayAggregationBase::ArrayAggregationBase(agg_util::ArrayAggregationBase const&) ArrayAggregationBase.cc:56 #6 0x118c23476 in agg_util::ArrayJoinExistingAggregation::ArrayJoinExistingAggregation(agg_util::ArrayJoinExistingAggregation const&) ArrayJoinExistingAggregation.cc:79 #7 0x118c235bc in agg_util::ArrayJoinExistingAggregation::ArrayJoinExistingAggregation(agg_util::ArrayJoinExistingAggregation const&) ArrayJoinExistingAggregation.cc:80 #8 0x118c237ac in agg_util::ArrayJoinExistingAggregation::ptr_duplicate() ArrayJoinExistingAggregation.cc:105 #9 0x111ac80fd in libdap::DDS::add_var(libdap::BaseType*) DDS.cc:607 #10 0x118b63678 in ncml_module::AggregationElement::processAggVarJoinExistingForArray(libdap::DDS&, libdap::Array const&, agg_util::Dimension const&, std::__1::vector, std::__1::allocator > > const&) AggregationElement.cc:912 #11 0x118b41ae0 in ncml_module::AggregationElement::processJoinExistingOnAggVar(libdap::DDS*, std::__1::basic_string, std::__1::allocator > const&, libdap::DDS const&) AggregationElement.cc:830 #12 0x118af5028 in ncml_module::AggregationElement::processJoinExisting() AggregationElement.cc:510 #13 0x118ae56c7 in ncml_module::AggregationElement::handleEnd() AggregationElement.cc:221 #14 0x118f33b9f in ncml_module::NCMLParser::processEndNCMLElement(std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:1186 #15 0x118f3b35b in ncml_module::NCMLParser::onEndElementWithNamespace(std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:324 #16 0x11909f8c9 in ncmlSax2EndElementNs(void*, unsigned char const*, unsigned char const*, unsigned char const*) SaxParserWrapper.cc:242 #17 0x7fff597e1d8e in xmlParseEndTag2 (libxml2.2.dylib:x86_64+0x37d8e) #18 0x7fff597e0440 in xmlParseElement (libxml2.2.dylib:x86_64+0x36440) #19 0x7fff597e005a in xmlParseContent (libxml2.2.dylib:x86_64+0x3605a) #20 0x7fff597e03f1 in xmlParseElement (libxml2.2.dylib:x86_64+0x363f1) #21 0x7fff597e2b7a in xmlParseDocument (libxml2.2.dylib:x86_64+0x38b7a) #22 0x1190909ae in ncml_module::SaxParserWrapper::parse(std::__1::basic_string, std::__1::allocator > const&) SaxParserWrapper.cc:338 #23 0x118f25d0b in ncml_module::NCMLParser::parseInto(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType, BESDapResponse*) NCMLParser.cc:185 #24 0x118f1f1e7 in ncml_module::NCMLParser::parse(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType) NCMLParser.cc:155 #25 0x118f99841 in ncml_module::NCMLRequestHandler::ncml_build_das(BESDataHandlerInterface&) NCMLRequestHandler.cc:172 #26 0x10dab2c8f in BESRequestHandlerList::execute_current(BESDataHandlerInterface&) BESRequestHandlerList.cc:273 #27 0x10dab10a4 in BESRequestHandlerList::execute_each(BESDataHandlerInterface&) BESRequestHandlerList.cc:167 #28 0x111621ff0 in BESDASResponseHandler::execute(BESDataHandlerInterface&) BESDASResponseHandler.cc:95 #29 0x10decad5a in BESXMLInterface::execute_data_request_plan() BESXMLInterface.cc:285 #30 0x10d926b8d in BESInterface::execute_request(std::__1::basic_string, std::__1::allocator > const&) BESInterface.cc:513 #31 0x10d88a8d8 in StandAloneClient::executeCommand(std::__1::basic_string, std::__1::allocator > const&, int) StandAloneClient.cc:237 #32 0x10d8883aa in StandAloneClient::executeCommands(std::__1::basic_ifstream >&, int) StandAloneClient.cc:349 #33 0x10d86de6d in StandAloneApp::run() StandAloneApp.cc:251 #34 0x10db96c24 in BESApp::main(int, char**) BESApp.cc:58 #35 0x10d87112e in main StandAloneApp.cc:345 #36 0x7fff59ad3014 in start (libdyld.dylib:x86_64+0x1014) 0x60200000bf58 is located 0 bytes to the right of 8-byte region [0x60200000bf50,0x60200000bf58) allocated by thread T0 here: #0 0x10e025cb2 in wrap__Znam (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x62cb2) #1 0x111bc6b3c in libdap::Vector::m_create_cardinal_data_buffer_for_type(unsigned int) Vector.cc:203 #2 0x111bdbc15 in libdap::Vector::val2buf(void*, bool) Vector.cc:1206 #3 0x111bc55e7 in libdap::Vector::m_duplicate(libdap::Vector const&) Vector.cc:116 #4 0x111bc9733 in libdap::Vector::Vector(libdap::Vector const&) Vector.cc:297 #5 0x111c17385 in libdap::Array::Array(libdap::Array const&) Array.cc:164 #6 0x118c0c116 in agg_util::ArrayAggregationBase::ArrayAggregationBase(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&) ArrayAggregationBase.cc:50 #7 0x118c1f07b in agg_util::ArrayJoinExistingAggregation::ArrayJoinExistingAggregation(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&, agg_util::Dimension const&) ArrayJoinExistingAggregation.cc:54 #8 0x118c23444 in agg_util::ArrayJoinExistingAggregation::ArrayJoinExistingAggregation(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&, agg_util::Dimension const&) ArrayJoinExistingAggregation.cc:55 #9 0x118b6103e in ncml_module::AggregationElement::processAggVarJoinExistingForArray(libdap::DDS&, libdap::Array const&, agg_util::Dimension const&, std::__1::vector, std::__1::allocator > > const&) AggregationElement.cc:900 #10 0x118b41ae0 in ncml_module::AggregationElement::processJoinExistingOnAggVar(libdap::DDS*, std::__1::basic_string, std::__1::allocator > const&, libdap::DDS const&) AggregationElement.cc:830 #11 0x118af5028 in ncml_module::AggregationElement::processJoinExisting() AggregationElement.cc:510 #12 0x118ae56c7 in ncml_module::AggregationElement::handleEnd() AggregationElement.cc:221 #13 0x118f33b9f in ncml_module::NCMLParser::processEndNCMLElement(std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:1186 #14 0x118f3b35b in ncml_module::NCMLParser::onEndElementWithNamespace(std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:324 #15 0x11909f8c9 in ncmlSax2EndElementNs(void*, unsigned char const*, unsigned char const*, unsigned char const*) SaxParserWrapper.cc:242 #16 0x7fff597e1d8e in xmlParseEndTag2 (libxml2.2.dylib:x86_64+0x37d8e) #17 0x7fff597e0440 in xmlParseElement (libxml2.2.dylib:x86_64+0x36440) #18 0x7fff597e005a in xmlParseContent (libxml2.2.dylib:x86_64+0x3605a) #19 0x7fff597e03f1 in xmlParseElement (libxml2.2.dylib:x86_64+0x363f1) #20 0x7fff597e2b7a in xmlParseDocument (libxml2.2.dylib:x86_64+0x38b7a) #21 0x1190909ae in ncml_module::SaxParserWrapper::parse(std::__1::basic_string, std::__1::allocator > const&) SaxParserWrapper.cc:338 #22 0x118f25d0b in ncml_module::NCMLParser::parseInto(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType, BESDapResponse*) NCMLParser.cc:185 #23 0x118f1f1e7 in ncml_module::NCMLParser::parse(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType) NCMLParser.cc:155 #24 0x118f99841 in ncml_module::NCMLRequestHandler::ncml_build_das(BESDataHandlerInterface&) NCMLRequestHandler.cc:172 #25 0x10dab2c8f in BESRequestHandlerList::execute_current(BESDataHandlerInterface&) BESRequestHandlerList.cc:273 #26 0x10dab10a4 in BESRequestHandlerList::execute_each(BESDataHandlerInterface&) BESRequestHandlerList.cc:167 #27 0x111621ff0 in BESDASResponseHandler::execute(BESDataHandlerInterface&) BESDASResponseHandler.cc:95 #28 0x10decad5a in BESXMLInterface::execute_data_request_plan() BESXMLInterface.cc:285 #29 0x10d926b8d in BESInterface::execute_request(std::__1::basic_string, std::__1::allocator > const&) BESInterface.cc:513 SUMMARY: AddressSanitizer: heap-buffer-overflow (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x4f3fd) in __asan_memcpy Shadow bytes around the buggy address: 0x1c0400001790: fa fa fd fa fa fa 00 fa fa fa 00 fa fa fa fd fd 0x1c04000017a0: fa fa fd fa fa fa 00 fa fa fa 00 fa fa fa 00 00 0x1c04000017b0: fa fa 00 fa fa fa 00 fa fa fa fd fa fa fa fd fa 0x1c04000017c0: fa fa 00 fa fa fa 00 fa fa fa fd fd fa fa fd fa 0x1c04000017d0: fa fa 00 fa fa fa 00 fa fa fa 00 00 fa fa 00 fa =>0x1c04000017e0: fa fa 00 00 fa fa 00 fa fa fa 00[fa]fa fa 00 fa 0x1c04000017f0: fa fa 00 fa fa fa 00 00 fa fa 00 00 fa fa fa fa 0x1c0400001800: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c0400001810: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c0400001820: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c0400001830: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa Shadow byte legend (one shadow byte represents 8 application bytes): Addressable: 00 Partially addressable: 01 02 03 04 05 06 07 Heap left redzone: fa Freed heap region: fd Stack left redzone: f1 Stack mid redzone: f2 Stack right redzone: f3 Stack after return: f5 Stack use after scope: f8 Global redzone: f9 Global init order: f6 Poisoned by user: f7 Container overflow: fc Array cookie: ac Intra object redzone: bb ASan internal: fe Left alloca redzone: ca Right alloca redzone: cb ==80799==ABORTING /Users/jimg/src/opendap/hyrax_git/bes/modules/ncml_module/tests/testsuite.dir/at-groups/545/test-source: line 44: 80799 Abort trap: 6 besstandalone -c $abs_builddir/bes.conf -i ./test.bescmd stdout: ./aggregations.at:334: exit code was 134, expected 0 545. aggregations.at:334: 545. Comparing das response for agg/joinExisting_multi.ncml to baseline ${abs_srcdir}/baselines/agg/joinExisting_multi.ncml (aggregations.at:334): FAILED (aggregations.at:334) # -*- compilation -*- 546. aggregations.at:334: testing Comparing dds response for agg/joinExisting_multi.ncml to baseline ${abs_srcdir}/baselines/agg/joinExisting_multi.ncml ... ./aggregations.at:334: besstandalone -c $abs_builddir/bes.conf -i ./test.bescmd stderr: Width: 8 Name: A Width: 8 Name: A Width: 16 Name: A ================================================================= ==80877==ERROR: AddressSanitizer: heap-buffer-overflow on address 0x60200000bf38 at pc 0x00010a6ca3fe bp 0x7ffee5ccbf70 sp 0x7ffee5ccb720 READ of size 16 at 0x60200000bf38 thread T0 #0 0x10a6ca3fd in __asan_memcpy (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x4f3fd) Provided dSYM: [/Users/jimg/src/opendap/hyrax_git/build/lib/libdap.25.dylib.dSYM/Contents/Resources/DWARF/libdap.25.dylib] does not match symbol owner 0x7ffa5a50b850 #1 0x10e293f39 in libdap::Vector::val2buf(void*, bool) Vector.cc:1212 #2 0x10e27d5e7 in libdap::Vector::m_duplicate(libdap::Vector const&) Vector.cc:116 #3 0x10e281733 in libdap::Vector::Vector(libdap::Vector const&) Vector.cc:297 #4 0x10e2cf385 in libdap::Array::Array(libdap::Array const&) Array.cc:164 #5 0x1152c68da in agg_util::ArrayAggregationBase::ArrayAggregationBase(agg_util::ArrayAggregationBase const&) ArrayAggregationBase.cc:56 #6 0x1152dd476 in agg_util::ArrayJoinExistingAggregation::ArrayJoinExistingAggregation(agg_util::ArrayJoinExistingAggregation const&) ArrayJoinExistingAggregation.cc:79 #7 0x1152dd5bc in agg_util::ArrayJoinExistingAggregation::ArrayJoinExistingAggregation(agg_util::ArrayJoinExistingAggregation const&) ArrayJoinExistingAggregation.cc:80 #8 0x1152dd7ac in agg_util::ArrayJoinExistingAggregation::ptr_duplicate() ArrayJoinExistingAggregation.cc:105 #9 0x10e1800fd in libdap::DDS::add_var(libdap::BaseType*) DDS.cc:607 #10 0x11521d678 in ncml_module::AggregationElement::processAggVarJoinExistingForArray(libdap::DDS&, libdap::Array const&, agg_util::Dimension const&, std::__1::vector, std::__1::allocator > > const&) AggregationElement.cc:912 #11 0x1151fbae0 in ncml_module::AggregationElement::processJoinExistingOnAggVar(libdap::DDS*, std::__1::basic_string, std::__1::allocator > const&, libdap::DDS const&) AggregationElement.cc:830 #12 0x1151af028 in ncml_module::AggregationElement::processJoinExisting() AggregationElement.cc:510 #13 0x11519f6c7 in ncml_module::AggregationElement::handleEnd() AggregationElement.cc:221 #14 0x1155edb9f in ncml_module::NCMLParser::processEndNCMLElement(std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:1186 #15 0x1155f535b in ncml_module::NCMLParser::onEndElementWithNamespace(std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:324 #16 0x1157598c9 in ncmlSax2EndElementNs(void*, unsigned char const*, unsigned char const*, unsigned char const*) SaxParserWrapper.cc:242 #17 0x7fff597e1d8e in xmlParseEndTag2 (libxml2.2.dylib:x86_64+0x37d8e) #18 0x7fff597e0440 in xmlParseElement (libxml2.2.dylib:x86_64+0x36440) #19 0x7fff597e005a in xmlParseContent (libxml2.2.dylib:x86_64+0x3605a) #20 0x7fff597e03f1 in xmlParseElement (libxml2.2.dylib:x86_64+0x363f1) #21 0x7fff597e2b7a in xmlParseDocument (libxml2.2.dylib:x86_64+0x38b7a) #22 0x11574a9ae in ncml_module::SaxParserWrapper::parse(std::__1::basic_string, std::__1::allocator > const&) SaxParserWrapper.cc:338 #23 0x1155dfd0b in ncml_module::NCMLParser::parseInto(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType, BESDapResponse*) NCMLParser.cc:185 #24 0x11565baae in ncml_module::NCMLRequestHandler::ncml_build_dds(BESDataHandlerInterface&) NCMLRequestHandler.cc:260 #25 0x10a16cc8f in BESRequestHandlerList::execute_current(BESDataHandlerInterface&) BESRequestHandlerList.cc:273 #26 0x10a16b0a4 in BESRequestHandlerList::execute_each(BESDataHandlerInterface&) BESRequestHandlerList.cc:167 #27 0x10dd28048 in BESDDSResponseHandler::execute(BESDataHandlerInterface&) BESDDSResponseHandler.cc:107 #28 0x10a584d5a in BESXMLInterface::execute_data_request_plan() BESXMLInterface.cc:285 #29 0x109fe0b8d in BESInterface::execute_request(std::__1::basic_string, std::__1::allocator > const&) BESInterface.cc:513 #30 0x109f448d8 in StandAloneClient::executeCommand(std::__1::basic_string, std::__1::allocator > const&, int) StandAloneClient.cc:237 #31 0x109f423aa in StandAloneClient::executeCommands(std::__1::basic_ifstream >&, int) StandAloneClient.cc:349 #32 0x109f27e6d in StandAloneApp::run() StandAloneApp.cc:251 #33 0x10a250c24 in BESApp::main(int, char**) BESApp.cc:58 #34 0x109f2b12e in main StandAloneApp.cc:345 #35 0x7fff59ad3014 in start (libdyld.dylib:x86_64+0x1014) 0x60200000bf38 is located 0 bytes to the right of 8-byte region [0x60200000bf30,0x60200000bf38) allocated by thread T0 here: #0 0x10a6ddcb2 in wrap__Znam (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x62cb2) #1 0x10e27eb3c in libdap::Vector::m_create_cardinal_data_buffer_for_type(unsigned int) Vector.cc:203 #2 0x10e293c15 in libdap::Vector::val2buf(void*, bool) Vector.cc:1206 #3 0x10e27d5e7 in libdap::Vector::m_duplicate(libdap::Vector const&) Vector.cc:116 #4 0x10e281733 in libdap::Vector::Vector(libdap::Vector const&) Vector.cc:297 #5 0x10e2cf385 in libdap::Array::Array(libdap::Array const&) Array.cc:164 #6 0x1152c6116 in agg_util::ArrayAggregationBase::ArrayAggregationBase(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&) ArrayAggregationBase.cc:50 #7 0x1152d907b in agg_util::ArrayJoinExistingAggregation::ArrayJoinExistingAggregation(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&, agg_util::Dimension const&) ArrayJoinExistingAggregation.cc:54 #8 0x1152dd444 in agg_util::ArrayJoinExistingAggregation::ArrayJoinExistingAggregation(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&, agg_util::Dimension const&) ArrayJoinExistingAggregation.cc:55 #9 0x11521b03e in ncml_module::AggregationElement::processAggVarJoinExistingForArray(libdap::DDS&, libdap::Array const&, agg_util::Dimension const&, std::__1::vector, std::__1::allocator > > const&) AggregationElement.cc:900 #10 0x1151fbae0 in ncml_module::AggregationElement::processJoinExistingOnAggVar(libdap::DDS*, std::__1::basic_string, std::__1::allocator > const&, libdap::DDS const&) AggregationElement.cc:830 #11 0x1151af028 in ncml_module::AggregationElement::processJoinExisting() AggregationElement.cc:510 #12 0x11519f6c7 in ncml_module::AggregationElement::handleEnd() AggregationElement.cc:221 #13 0x1155edb9f in ncml_module::NCMLParser::processEndNCMLElement(std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:1186 #14 0x1155f535b in ncml_module::NCMLParser::onEndElementWithNamespace(std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:324 #15 0x1157598c9 in ncmlSax2EndElementNs(void*, unsigned char const*, unsigned char const*, unsigned char const*) SaxParserWrapper.cc:242 #16 0x7fff597e1d8e in xmlParseEndTag2 (libxml2.2.dylib:x86_64+0x37d8e) #17 0x7fff597e0440 in xmlParseElement (libxml2.2.dylib:x86_64+0x36440) #18 0x7fff597e005a in xmlParseContent (libxml2.2.dylib:x86_64+0x3605a) #19 0x7fff597e03f1 in xmlParseElement (libxml2.2.dylib:x86_64+0x363f1) #20 0x7fff597e2b7a in xmlParseDocument (libxml2.2.dylib:x86_64+0x38b7a) #21 0x11574a9ae in ncml_module::SaxParserWrapper::parse(std::__1::basic_string, std::__1::allocator > const&) SaxParserWrapper.cc:338 #22 0x1155dfd0b in ncml_module::NCMLParser::parseInto(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType, BESDapResponse*) NCMLParser.cc:185 #23 0x11565baae in ncml_module::NCMLRequestHandler::ncml_build_dds(BESDataHandlerInterface&) NCMLRequestHandler.cc:260 #24 0x10a16cc8f in BESRequestHandlerList::execute_current(BESDataHandlerInterface&) BESRequestHandlerList.cc:273 #25 0x10a16b0a4 in BESRequestHandlerList::execute_each(BESDataHandlerInterface&) BESRequestHandlerList.cc:167 #26 0x10dd28048 in BESDDSResponseHandler::execute(BESDataHandlerInterface&) BESDDSResponseHandler.cc:107 #27 0x10a584d5a in BESXMLInterface::execute_data_request_plan() BESXMLInterface.cc:285 #28 0x109fe0b8d in BESInterface::execute_request(std::__1::basic_string, std::__1::allocator > const&) BESInterface.cc:513 #29 0x109f448d8 in StandAloneClient::executeCommand(std::__1::basic_string, std::__1::allocator > const&, int) StandAloneClient.cc:237 SUMMARY: AddressSanitizer: heap-buffer-overflow (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x4f3fd) in __asan_memcpy Shadow bytes around the buggy address: 0x1c0400001790: fa fa 00 fa fa fa 00 fa fa fa fd fd fa fa fd fa 0x1c04000017a0: fa fa 00 fa fa fa 00 fa fa fa 00 00 fa fa 00 fa 0x1c04000017b0: fa fa 00 fa fa fa fd fa fa fa fd fa fa fa 00 fa 0x1c04000017c0: fa fa 00 fa fa fa fd fd fa fa fd fa fa fa 00 fa 0x1c04000017d0: fa fa 00 fa fa fa 00 00 fa fa 00 fa fa fa 00 00 =>0x1c04000017e0: fa fa 00 fa fa fa 00[fa]fa fa 00 fa fa fa 00 fa 0x1c04000017f0: fa fa 00 00 fa fa 00 00 fa fa fa fa fa fa fa fa 0x1c0400001800: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c0400001810: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c0400001820: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c0400001830: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa Shadow byte legend (one shadow byte represents 8 application bytes): Addressable: 00 Partially addressable: 01 02 03 04 05 06 07 Heap left redzone: fa Freed heap region: fd Stack left redzone: f1 Stack mid redzone: f2 Stack right redzone: f3 Stack after return: f5 Stack use after scope: f8 Global redzone: f9 Global init order: f6 Poisoned by user: f7 Container overflow: fc Array cookie: ac Intra object redzone: bb ASan internal: fe Left alloca redzone: ca Right alloca redzone: cb ==80877==ABORTING /Users/jimg/src/opendap/hyrax_git/bes/modules/ncml_module/tests/testsuite.dir/at-groups/546/test-source: line 44: 80877 Abort trap: 6 besstandalone -c $abs_builddir/bes.conf -i ./test.bescmd stdout: ./aggregations.at:334: exit code was 134, expected 0 546. aggregations.at:334: 546. Comparing dds response for agg/joinExisting_multi.ncml to baseline ${abs_srcdir}/baselines/agg/joinExisting_multi.ncml (aggregations.at:334): FAILED (aggregations.at:334) # -*- compilation -*- 547. aggregations.at:334: testing Comparing ddx response for agg/joinExisting_multi.ncml to baseline ${abs_srcdir}/baselines/agg/joinExisting_multi.ncml ... ./aggregations.at:334: besstandalone -c $abs_builddir/bes.conf -i ./test.bescmd stderr: Width: 8 Name: A Width: 8 Name: A Width: 16 Name: A ================================================================= ==80925==ERROR: AddressSanitizer: heap-buffer-overflow on address 0x60200000bf38 at pc 0x000100ba13fe bp 0x7ffeef7edb10 sp 0x7ffeef7ed2c0 READ of size 16 at 0x60200000bf38 thread T0 #0 0x100ba13fd in __asan_memcpy (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x4f3fd) Provided dSYM: [/Users/jimg/src/opendap/hyrax_git/build/lib/libdap.25.dylib.dSYM/Contents/Resources/DWARF/libdap.25.dylib] does not match symbol owner 0x7fe622e06380 #1 0x104793f39 in libdap::Vector::val2buf(void*, bool) Vector.cc:1212 #2 0x10477d5e7 in libdap::Vector::m_duplicate(libdap::Vector const&) Vector.cc:116 #3 0x104781733 in libdap::Vector::Vector(libdap::Vector const&) Vector.cc:297 #4 0x1047cf385 in libdap::Array::Array(libdap::Array const&) Array.cc:164 #5 0x10a8a98da in agg_util::ArrayAggregationBase::ArrayAggregationBase(agg_util::ArrayAggregationBase const&) ArrayAggregationBase.cc:56 #6 0x10a8c0476 in agg_util::ArrayJoinExistingAggregation::ArrayJoinExistingAggregation(agg_util::ArrayJoinExistingAggregation const&) ArrayJoinExistingAggregation.cc:79 #7 0x10a8c05bc in agg_util::ArrayJoinExistingAggregation::ArrayJoinExistingAggregation(agg_util::ArrayJoinExistingAggregation const&) ArrayJoinExistingAggregation.cc:80 #8 0x10a8c07ac in agg_util::ArrayJoinExistingAggregation::ptr_duplicate() ArrayJoinExistingAggregation.cc:105 #9 0x1046800fd in libdap::DDS::add_var(libdap::BaseType*) DDS.cc:607 #10 0x10a800678 in ncml_module::AggregationElement::processAggVarJoinExistingForArray(libdap::DDS&, libdap::Array const&, agg_util::Dimension const&, std::__1::vector, std::__1::allocator > > const&) AggregationElement.cc:912 #11 0x10a7deae0 in ncml_module::AggregationElement::processJoinExistingOnAggVar(libdap::DDS*, std::__1::basic_string, std::__1::allocator > const&, libdap::DDS const&) AggregationElement.cc:830 #12 0x10a792028 in ncml_module::AggregationElement::processJoinExisting() AggregationElement.cc:510 #13 0x10a7826c7 in ncml_module::AggregationElement::handleEnd() AggregationElement.cc:221 #14 0x10abd0b9f in ncml_module::NCMLParser::processEndNCMLElement(std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:1186 #15 0x10abd835b in ncml_module::NCMLParser::onEndElementWithNamespace(std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:324 #16 0x10ad3c8c9 in ncmlSax2EndElementNs(void*, unsigned char const*, unsigned char const*, unsigned char const*) SaxParserWrapper.cc:242 #17 0x7fff597e1d8e in xmlParseEndTag2 (libxml2.2.dylib:x86_64+0x37d8e) #18 0x7fff597e0440 in xmlParseElement (libxml2.2.dylib:x86_64+0x36440) #19 0x7fff597e005a in xmlParseContent (libxml2.2.dylib:x86_64+0x3605a) #20 0x7fff597e03f1 in xmlParseElement (libxml2.2.dylib:x86_64+0x363f1) #21 0x7fff597e2b7a in xmlParseDocument (libxml2.2.dylib:x86_64+0x38b7a) #22 0x10ad2d9ae in ncml_module::SaxParserWrapper::parse(std::__1::basic_string, std::__1::allocator > const&) SaxParserWrapper.cc:338 #23 0x10abc2d0b in ncml_module::NCMLParser::parseInto(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType, BESDapResponse*) NCMLParser.cc:185 #24 0x10ac3eaae in ncml_module::NCMLRequestHandler::ncml_build_dds(BESDataHandlerInterface&) NCMLRequestHandler.cc:260 #25 0x100645c8f in BESRequestHandlerList::execute_current(BESDataHandlerInterface&) BESRequestHandlerList.cc:273 #26 0x1006440a4 in BESRequestHandlerList::execute_each(BESDataHandlerInterface&) BESRequestHandlerList.cc:167 #27 0x10422a5dc in BESDDXResponseHandler::execute(BESDataHandlerInterface&) BESDDXResponseHandler.cc:122 #28 0x100a5ad5a in BESXMLInterface::execute_data_request_plan() BESXMLInterface.cc:285 #29 0x1004b9b8d in BESInterface::execute_request(std::__1::basic_string, std::__1::allocator > const&) BESInterface.cc:513 #30 0x1004228d8 in StandAloneClient::executeCommand(std::__1::basic_string, std::__1::allocator > const&, int) StandAloneClient.cc:237 #31 0x1004203aa in StandAloneClient::executeCommands(std::__1::basic_ifstream >&, int) StandAloneClient.cc:349 #32 0x100405e6d in StandAloneApp::run() StandAloneApp.cc:251 #33 0x100729c24 in BESApp::main(int, char**) BESApp.cc:58 #34 0x10040912e in main StandAloneApp.cc:345 #35 0x7fff59ad3014 in start (libdyld.dylib:x86_64+0x1014) 0x60200000bf38 is located 0 bytes to the right of 8-byte region [0x60200000bf30,0x60200000bf38) allocated by thread T0 here: #0 0x100bb4cb2 in wrap__Znam (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x62cb2) #1 0x10477eb3c in libdap::Vector::m_create_cardinal_data_buffer_for_type(unsigned int) Vector.cc:203 #2 0x104793c15 in libdap::Vector::val2buf(void*, bool) Vector.cc:1206 #3 0x10477d5e7 in libdap::Vector::m_duplicate(libdap::Vector const&) Vector.cc:116 #4 0x104781733 in libdap::Vector::Vector(libdap::Vector const&) Vector.cc:297 #5 0x1047cf385 in libdap::Array::Array(libdap::Array const&) Array.cc:164 #6 0x10a8a9116 in agg_util::ArrayAggregationBase::ArrayAggregationBase(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&) ArrayAggregationBase.cc:50 #7 0x10a8bc07b in agg_util::ArrayJoinExistingAggregation::ArrayJoinExistingAggregation(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&, agg_util::Dimension const&) ArrayJoinExistingAggregation.cc:54 #8 0x10a8c0444 in agg_util::ArrayJoinExistingAggregation::ArrayJoinExistingAggregation(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&, agg_util::Dimension const&) ArrayJoinExistingAggregation.cc:55 #9 0x10a7fe03e in ncml_module::AggregationElement::processAggVarJoinExistingForArray(libdap::DDS&, libdap::Array const&, agg_util::Dimension const&, std::__1::vector, std::__1::allocator > > const&) AggregationElement.cc:900 #10 0x10a7deae0 in ncml_module::AggregationElement::processJoinExistingOnAggVar(libdap::DDS*, std::__1::basic_string, std::__1::allocator > const&, libdap::DDS const&) AggregationElement.cc:830 #11 0x10a792028 in ncml_module::AggregationElement::processJoinExisting() AggregationElement.cc:510 #12 0x10a7826c7 in ncml_module::AggregationElement::handleEnd() AggregationElement.cc:221 #13 0x10abd0b9f in ncml_module::NCMLParser::processEndNCMLElement(std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:1186 #14 0x10abd835b in ncml_module::NCMLParser::onEndElementWithNamespace(std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:324 #15 0x10ad3c8c9 in ncmlSax2EndElementNs(void*, unsigned char const*, unsigned char const*, unsigned char const*) SaxParserWrapper.cc:242 #16 0x7fff597e1d8e in xmlParseEndTag2 (libxml2.2.dylib:x86_64+0x37d8e) #17 0x7fff597e0440 in xmlParseElement (libxml2.2.dylib:x86_64+0x36440) #18 0x7fff597e005a in xmlParseContent (libxml2.2.dylib:x86_64+0x3605a) #19 0x7fff597e03f1 in xmlParseElement (libxml2.2.dylib:x86_64+0x363f1) #20 0x7fff597e2b7a in xmlParseDocument (libxml2.2.dylib:x86_64+0x38b7a) #21 0x10ad2d9ae in ncml_module::SaxParserWrapper::parse(std::__1::basic_string, std::__1::allocator > const&) SaxParserWrapper.cc:338 #22 0x10abc2d0b in ncml_module::NCMLParser::parseInto(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType, BESDapResponse*) NCMLParser.cc:185 #23 0x10ac3eaae in ncml_module::NCMLRequestHandler::ncml_build_dds(BESDataHandlerInterface&) NCMLRequestHandler.cc:260 #24 0x100645c8f in BESRequestHandlerList::execute_current(BESDataHandlerInterface&) BESRequestHandlerList.cc:273 #25 0x1006440a4 in BESRequestHandlerList::execute_each(BESDataHandlerInterface&) BESRequestHandlerList.cc:167 #26 0x10422a5dc in BESDDXResponseHandler::execute(BESDataHandlerInterface&) BESDDXResponseHandler.cc:122 #27 0x100a5ad5a in BESXMLInterface::execute_data_request_plan() BESXMLInterface.cc:285 #28 0x1004b9b8d in BESInterface::execute_request(std::__1::basic_string, std::__1::allocator > const&) BESInterface.cc:513 #29 0x1004228d8 in StandAloneClient::executeCommand(std::__1::basic_string, std::__1::allocator > const&, int) StandAloneClient.cc:237 SUMMARY: AddressSanitizer: heap-buffer-overflow (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x4f3fd) in __asan_memcpy Shadow bytes around the buggy address: 0x1c0400001790: fa fa 00 fa fa fa 00 fa fa fa fd fd fa fa fd fa 0x1c04000017a0: fa fa 00 fa fa fa 00 fa fa fa 00 00 fa fa 00 fa 0x1c04000017b0: fa fa 00 fa fa fa fd fa fa fa fd fa fa fa 00 fa 0x1c04000017c0: fa fa 00 fa fa fa fd fd fa fa fd fa fa fa 00 fa 0x1c04000017d0: fa fa 00 fa fa fa 00 00 fa fa 00 fa fa fa 00 00 =>0x1c04000017e0: fa fa 00 fa fa fa 00[fa]fa fa 00 fa fa fa 00 fa 0x1c04000017f0: fa fa 00 00 fa fa 00 00 fa fa fa fa fa fa fa fa 0x1c0400001800: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c0400001810: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c0400001820: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c0400001830: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa Shadow byte legend (one shadow byte represents 8 application bytes): Addressable: 00 Partially addressable: 01 02 03 04 05 06 07 Heap left redzone: fa Freed heap region: fd Stack left redzone: f1 Stack mid redzone: f2 Stack right redzone: f3 Stack after return: f5 Stack use after scope: f8 Global redzone: f9 Global init order: f6 Poisoned by user: f7 Container overflow: fc Array cookie: ac Intra object redzone: bb ASan internal: fe Left alloca redzone: ca Right alloca redzone: cb ==80925==ABORTING /Users/jimg/src/opendap/hyrax_git/bes/modules/ncml_module/tests/testsuite.dir/at-groups/547/test-source: line 44: 80925 Abort trap: 6 besstandalone -c $abs_builddir/bes.conf -i ./test.bescmd stdout: ./aggregations.at:334: exit code was 134, expected 0 547. aggregations.at:334: 547. Comparing ddx response for agg/joinExisting_multi.ncml to baseline ${abs_srcdir}/baselines/agg/joinExisting_multi.ncml (aggregations.at:334): FAILED (aggregations.at:334) # -*- compilation -*- 548. aggregations.at:334: testing Comparing dods response for agg/joinExisting_multi.ncml to baseline ${abs_srcdir}/baselines/agg/joinExisting_multi.ncml ... ./aggregations.at:334: besstandalone -c $abs_builddir/bes.conf -i ./test.bescmd stderr: Width: 8 Name: A Width: 8 Name: A Width: 16 Name: A ================================================================= ==80924==ERROR: AddressSanitizer: heap-buffer-overflow on address 0x60200000bf58 at pc 0x0001009093fe bp 0x7ffeefa89df0 sp 0x7ffeefa895a0 READ of size 16 at 0x60200000bf58 thread T0 #0 0x1009093fd in __asan_memcpy (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x4f3fd) Provided dSYM: [/Users/jimg/src/opendap/hyrax_git/build/lib/libdap.25.dylib.dSYM/Contents/Resources/DWARF/libdap.25.dylib] does not match symbol owner 0x7ff3ab905b80 #1 0x104693f39 in libdap::Vector::val2buf(void*, bool) Vector.cc:1212 #2 0x10467d5e7 in libdap::Vector::m_duplicate(libdap::Vector const&) Vector.cc:116 #3 0x104681733 in libdap::Vector::Vector(libdap::Vector const&) Vector.cc:297 #4 0x1046cf385 in libdap::Array::Array(libdap::Array const&) Array.cc:164 #5 0x10b5ab8da in agg_util::ArrayAggregationBase::ArrayAggregationBase(agg_util::ArrayAggregationBase const&) ArrayAggregationBase.cc:56 #6 0x10b5c2476 in agg_util::ArrayJoinExistingAggregation::ArrayJoinExistingAggregation(agg_util::ArrayJoinExistingAggregation const&) ArrayJoinExistingAggregation.cc:79 #7 0x10b5c25bc in agg_util::ArrayJoinExistingAggregation::ArrayJoinExistingAggregation(agg_util::ArrayJoinExistingAggregation const&) ArrayJoinExistingAggregation.cc:80 #8 0x10b5c27ac in agg_util::ArrayJoinExistingAggregation::ptr_duplicate() ArrayJoinExistingAggregation.cc:105 #9 0x1045800fd in libdap::DDS::add_var(libdap::BaseType*) DDS.cc:607 #10 0x10b502678 in ncml_module::AggregationElement::processAggVarJoinExistingForArray(libdap::DDS&, libdap::Array const&, agg_util::Dimension const&, std::__1::vector, std::__1::allocator > > const&) AggregationElement.cc:912 #11 0x10b4e0ae0 in ncml_module::AggregationElement::processJoinExistingOnAggVar(libdap::DDS*, std::__1::basic_string, std::__1::allocator > const&, libdap::DDS const&) AggregationElement.cc:830 #12 0x10b494028 in ncml_module::AggregationElement::processJoinExisting() AggregationElement.cc:510 #13 0x10b4846c7 in ncml_module::AggregationElement::handleEnd() AggregationElement.cc:221 #14 0x10b8d2b9f in ncml_module::NCMLParser::processEndNCMLElement(std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:1186 #15 0x10b8da35b in ncml_module::NCMLParser::onEndElementWithNamespace(std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:324 #16 0x10ba3e8c9 in ncmlSax2EndElementNs(void*, unsigned char const*, unsigned char const*, unsigned char const*) SaxParserWrapper.cc:242 #17 0x7fff597e1d8e in xmlParseEndTag2 (libxml2.2.dylib:x86_64+0x37d8e) #18 0x7fff597e0440 in xmlParseElement (libxml2.2.dylib:x86_64+0x36440) #19 0x7fff597e005a in xmlParseContent (libxml2.2.dylib:x86_64+0x3605a) #20 0x7fff597e03f1 in xmlParseElement (libxml2.2.dylib:x86_64+0x363f1) #21 0x7fff597e2b7a in xmlParseDocument (libxml2.2.dylib:x86_64+0x38b7a) #22 0x10ba2f9ae in ncml_module::SaxParserWrapper::parse(std::__1::basic_string, std::__1::allocator > const&) SaxParserWrapper.cc:338 #23 0x10b8c4d0b in ncml_module::NCMLParser::parseInto(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType, BESDapResponse*) NCMLParser.cc:185 #24 0x10b946346 in ncml_module::NCMLRequestHandler::ncml_build_data(BESDataHandlerInterface&) NCMLRequestHandler.cc:297 #25 0x1003aec8f in BESRequestHandlerList::execute_current(BESDataHandlerInterface&) BESRequestHandlerList.cc:273 #26 0x1003ad0a4 in BESRequestHandlerList::execute_each(BESDataHandlerInterface&) BESRequestHandlerList.cc:167 #27 0x10413288c in BESDataResponseHandler::execute(BESDataHandlerInterface&) BESDataResponseHandler.cc:148 #28 0x1007c3d5a in BESXMLInterface::execute_data_request_plan() BESXMLInterface.cc:285 #29 0x100222b8d in BESInterface::execute_request(std::__1::basic_string, std::__1::allocator > const&) BESInterface.cc:513 #30 0x1001868d8 in StandAloneClient::executeCommand(std::__1::basic_string, std::__1::allocator > const&, int) StandAloneClient.cc:237 #31 0x1001843aa in StandAloneClient::executeCommands(std::__1::basic_ifstream >&, int) StandAloneClient.cc:349 #32 0x100169e6d in StandAloneApp::run() StandAloneApp.cc:251 #33 0x100492c24 in BESApp::main(int, char**) BESApp.cc:58 #34 0x10016d12e in main StandAloneApp.cc:345 #35 0x7fff59ad3014 in start (libdyld.dylib:x86_64+0x1014) 0x60200000bf58 is located 0 bytes to the right of 8-byte region [0x60200000bf50,0x60200000bf58) allocated by thread T0 here: #0 0x10091ccb2 in wrap__Znam (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x62cb2) #1 0x10467eb3c in libdap::Vector::m_create_cardinal_data_buffer_for_type(unsigned int) Vector.cc:203 #2 0x104693c15 in libdap::Vector::val2buf(void*, bool) Vector.cc:1206 #3 0x10467d5e7 in libdap::Vector::m_duplicate(libdap::Vector const&) Vector.cc:116 #4 0x104681733 in libdap::Vector::Vector(libdap::Vector const&) Vector.cc:297 #5 0x1046cf385 in libdap::Array::Array(libdap::Array const&) Array.cc:164 #6 0x10b5ab116 in agg_util::ArrayAggregationBase::ArrayAggregationBase(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&) ArrayAggregationBase.cc:50 #7 0x10b5be07b in agg_util::ArrayJoinExistingAggregation::ArrayJoinExistingAggregation(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&, agg_util::Dimension const&) ArrayJoinExistingAggregation.cc:54 #8 0x10b5c2444 in agg_util::ArrayJoinExistingAggregation::ArrayJoinExistingAggregation(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&, agg_util::Dimension const&) ArrayJoinExistingAggregation.cc:55 #9 0x10b50003e in ncml_module::AggregationElement::processAggVarJoinExistingForArray(libdap::DDS&, libdap::Array const&, agg_util::Dimension const&, std::__1::vector, std::__1::allocator > > const&) AggregationElement.cc:900 #10 0x10b4e0ae0 in ncml_module::AggregationElement::processJoinExistingOnAggVar(libdap::DDS*, std::__1::basic_string, std::__1::allocator > const&, libdap::DDS const&) AggregationElement.cc:830 #11 0x10b494028 in ncml_module::AggregationElement::processJoinExisting() AggregationElement.cc:510 #12 0x10b4846c7 in ncml_module::AggregationElement::handleEnd() AggregationElement.cc:221 #13 0x10b8d2b9f in ncml_module::NCMLParser::processEndNCMLElement(std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:1186 #14 0x10b8da35b in ncml_module::NCMLParser::onEndElementWithNamespace(std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:324 #15 0x10ba3e8c9 in ncmlSax2EndElementNs(void*, unsigned char const*, unsigned char const*, unsigned char const*) SaxParserWrapper.cc:242 #16 0x7fff597e1d8e in xmlParseEndTag2 (libxml2.2.dylib:x86_64+0x37d8e) #17 0x7fff597e0440 in xmlParseElement (libxml2.2.dylib:x86_64+0x36440) #18 0x7fff597e005a in xmlParseContent (libxml2.2.dylib:x86_64+0x3605a) #19 0x7fff597e03f1 in xmlParseElement (libxml2.2.dylib:x86_64+0x363f1) #20 0x7fff597e2b7a in xmlParseDocument (libxml2.2.dylib:x86_64+0x38b7a) #21 0x10ba2f9ae in ncml_module::SaxParserWrapper::parse(std::__1::basic_string, std::__1::allocator > const&) SaxParserWrapper.cc:338 #22 0x10b8c4d0b in ncml_module::NCMLParser::parseInto(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType, BESDapResponse*) NCMLParser.cc:185 #23 0x10b946346 in ncml_module::NCMLRequestHandler::ncml_build_data(BESDataHandlerInterface&) NCMLRequestHandler.cc:297 #24 0x1003aec8f in BESRequestHandlerList::execute_current(BESDataHandlerInterface&) BESRequestHandlerList.cc:273 #25 0x1003ad0a4 in BESRequestHandlerList::execute_each(BESDataHandlerInterface&) BESRequestHandlerList.cc:167 #26 0x10413288c in BESDataResponseHandler::execute(BESDataHandlerInterface&) BESDataResponseHandler.cc:148 #27 0x1007c3d5a in BESXMLInterface::execute_data_request_plan() BESXMLInterface.cc:285 #28 0x100222b8d in BESInterface::execute_request(std::__1::basic_string, std::__1::allocator > const&) BESInterface.cc:513 #29 0x1001868d8 in StandAloneClient::executeCommand(std::__1::basic_string, std::__1::allocator > const&, int) StandAloneClient.cc:237 SUMMARY: AddressSanitizer: heap-buffer-overflow (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x4f3fd) in __asan_memcpy Shadow bytes around the buggy address: 0x1c0400001790: fa fa fd fa fa fa 00 fa fa fa 00 fa fa fa fd fd 0x1c04000017a0: fa fa fd fa fa fa 00 fa fa fa 00 fa fa fa 00 00 0x1c04000017b0: fa fa 00 fa fa fa 00 fa fa fa fd fa fa fa fd fa 0x1c04000017c0: fa fa 00 fa fa fa 00 fa fa fa fd fd fa fa fd fa 0x1c04000017d0: fa fa 00 fa fa fa 00 fa fa fa 00 00 fa fa 00 fa =>0x1c04000017e0: fa fa 00 00 fa fa 00 fa fa fa 00[fa]fa fa 00 fa 0x1c04000017f0: fa fa 00 fa fa fa 00 00 fa fa 00 00 fa fa fa fa 0x1c0400001800: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c0400001810: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c0400001820: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c0400001830: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa Shadow byte legend (one shadow byte represents 8 application bytes): Addressable: 00 Partially addressable: 01 02 03 04 05 06 07 Heap left redzone: fa Freed heap region: fd Stack left redzone: f1 Stack mid redzone: f2 Stack right redzone: f3 Stack after return: f5 Stack use after scope: f8 Global redzone: f9 Global init order: f6 Poisoned by user: f7 Container overflow: fc Array cookie: ac Intra object redzone: bb ASan internal: fe Left alloca redzone: ca Right alloca redzone: cb ==80924==ABORTING /Users/jimg/src/opendap/hyrax_git/bes/modules/ncml_module/tests/testsuite.dir/at-groups/548/test-source: line 44: 80924 Abort trap: 6 besstandalone -c $abs_builddir/bes.conf -i ./test.bescmd stdout: ./aggregations.at:334: exit code was 134, expected 0 548. aggregations.at:334: 548. Comparing dods response for agg/joinExisting_multi.ncml to baseline ${abs_srcdir}/baselines/agg/joinExisting_multi.ncml (aggregations.at:334): FAILED (aggregations.at:334) # -*- compilation -*- 549. aggregations.at:340: testing Comparing das response for agg/joinExisting_varAgg.ncml to baseline ${abs_srcdir}/baselines/agg/joinExisting_varAgg.ncml ... ./aggregations.at:340: besstandalone -c $abs_builddir/bes.conf -i ./test.bescmd stderr: Width: 8 Name: B Width: 8 Name: B Width: 16 Name: B ================================================================= ==80972==ERROR: AddressSanitizer: heap-buffer-overflow on address 0x60200000bf58 at pc 0x00010ad743fe bp 0x7ffee5619c50 sp 0x7ffee5619400 READ of size 16 at 0x60200000bf58 thread T0 #0 0x10ad743fd in __asan_memcpy (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x4f3fd) Provided dSYM: [/Users/jimg/src/opendap/hyrax_git/build/lib/libdap.25.dylib.dSYM/Contents/Resources/DWARF/libdap.25.dylib] does not match symbol owner 0x7fcbf9906200 #1 0x10e993f39 in libdap::Vector::val2buf(void*, bool) Vector.cc:1212 #2 0x10e97d5e7 in libdap::Vector::m_duplicate(libdap::Vector const&) Vector.cc:116 #3 0x10e981733 in libdap::Vector::Vector(libdap::Vector const&) Vector.cc:297 #4 0x10e9cf385 in libdap::Array::Array(libdap::Array const&) Array.cc:164 #5 0x115e468da in agg_util::ArrayAggregationBase::ArrayAggregationBase(agg_util::ArrayAggregationBase const&) ArrayAggregationBase.cc:56 #6 0x115e5d476 in agg_util::ArrayJoinExistingAggregation::ArrayJoinExistingAggregation(agg_util::ArrayJoinExistingAggregation const&) ArrayJoinExistingAggregation.cc:79 #7 0x115e5d5bc in agg_util::ArrayJoinExistingAggregation::ArrayJoinExistingAggregation(agg_util::ArrayJoinExistingAggregation const&) ArrayJoinExistingAggregation.cc:80 #8 0x115e5d7ac in agg_util::ArrayJoinExistingAggregation::ptr_duplicate() ArrayJoinExistingAggregation.cc:105 #9 0x10e8800fd in libdap::DDS::add_var(libdap::BaseType*) DDS.cc:607 #10 0x115d9d678 in ncml_module::AggregationElement::processAggVarJoinExistingForArray(libdap::DDS&, libdap::Array const&, agg_util::Dimension const&, std::__1::vector, std::__1::allocator > > const&) AggregationElement.cc:912 #11 0x115d7bae0 in ncml_module::AggregationElement::processJoinExistingOnAggVar(libdap::DDS*, std::__1::basic_string, std::__1::allocator > const&, libdap::DDS const&) AggregationElement.cc:830 #12 0x115d2f028 in ncml_module::AggregationElement::processJoinExisting() AggregationElement.cc:510 #13 0x115d1f6c7 in ncml_module::AggregationElement::handleEnd() AggregationElement.cc:221 #14 0x11616db9f in ncml_module::NCMLParser::processEndNCMLElement(std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:1186 #15 0x11617535b in ncml_module::NCMLParser::onEndElementWithNamespace(std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:324 #16 0x1162d98c9 in ncmlSax2EndElementNs(void*, unsigned char const*, unsigned char const*, unsigned char const*) SaxParserWrapper.cc:242 #17 0x7fff597e1d8e in xmlParseEndTag2 (libxml2.2.dylib:x86_64+0x37d8e) #18 0x7fff597e0440 in xmlParseElement (libxml2.2.dylib:x86_64+0x36440) #19 0x7fff597e005a in xmlParseContent (libxml2.2.dylib:x86_64+0x3605a) #20 0x7fff597e03f1 in xmlParseElement (libxml2.2.dylib:x86_64+0x363f1) #21 0x7fff597e2b7a in xmlParseDocument (libxml2.2.dylib:x86_64+0x38b7a) #22 0x1162ca9ae in ncml_module::SaxParserWrapper::parse(std::__1::basic_string, std::__1::allocator > const&) SaxParserWrapper.cc:338 #23 0x11615fd0b in ncml_module::NCMLParser::parseInto(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType, BESDapResponse*) NCMLParser.cc:185 #24 0x1161591e7 in ncml_module::NCMLParser::parse(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType) NCMLParser.cc:155 #25 0x1161d3841 in ncml_module::NCMLRequestHandler::ncml_build_das(BESDataHandlerInterface&) NCMLRequestHandler.cc:172 #26 0x10a818c8f in BESRequestHandlerList::execute_current(BESDataHandlerInterface&) BESRequestHandlerList.cc:273 #27 0x10a8170a4 in BESRequestHandlerList::execute_each(BESDataHandlerInterface&) BESRequestHandlerList.cc:167 #28 0x10e421ff0 in BESDASResponseHandler::execute(BESDataHandlerInterface&) BESDASResponseHandler.cc:95 #29 0x10ac2ed5a in BESXMLInterface::execute_data_request_plan() BESXMLInterface.cc:285 #30 0x10a68cb8d in BESInterface::execute_request(std::__1::basic_string, std::__1::allocator > const&) BESInterface.cc:513 #31 0x10a5f68d8 in StandAloneClient::executeCommand(std::__1::basic_string, std::__1::allocator > const&, int) StandAloneClient.cc:237 #32 0x10a5f43aa in StandAloneClient::executeCommands(std::__1::basic_ifstream >&, int) StandAloneClient.cc:349 #33 0x10a5d9e6d in StandAloneApp::run() StandAloneApp.cc:251 #34 0x10a8fcc24 in BESApp::main(int, char**) BESApp.cc:58 #35 0x10a5dd12e in main StandAloneApp.cc:345 #36 0x7fff59ad3014 in start (libdyld.dylib:x86_64+0x1014) 0x60200000bf58 is located 0 bytes to the right of 8-byte region [0x60200000bf50,0x60200000bf58) allocated by thread T0 here: #0 0x10ad87cb2 in wrap__Znam (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x62cb2) #1 0x10e97eb3c in libdap::Vector::m_create_cardinal_data_buffer_for_type(unsigned int) Vector.cc:203 #2 0x10e993c15 in libdap::Vector::val2buf(void*, bool) Vector.cc:1206 #3 0x10e97d5e7 in libdap::Vector::m_duplicate(libdap::Vector const&) Vector.cc:116 #4 0x10e981733 in libdap::Vector::Vector(libdap::Vector const&) Vector.cc:297 #5 0x10e9cf385 in libdap::Array::Array(libdap::Array const&) Array.cc:164 #6 0x115e46116 in agg_util::ArrayAggregationBase::ArrayAggregationBase(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&) ArrayAggregationBase.cc:50 #7 0x115e5907b in agg_util::ArrayJoinExistingAggregation::ArrayJoinExistingAggregation(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&, agg_util::Dimension const&) ArrayJoinExistingAggregation.cc:54 #8 0x115e5d444 in agg_util::ArrayJoinExistingAggregation::ArrayJoinExistingAggregation(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&, agg_util::Dimension const&) ArrayJoinExistingAggregation.cc:55 #9 0x115d9b03e in ncml_module::AggregationElement::processAggVarJoinExistingForArray(libdap::DDS&, libdap::Array const&, agg_util::Dimension const&, std::__1::vector, std::__1::allocator > > const&) AggregationElement.cc:900 #10 0x115d7bae0 in ncml_module::AggregationElement::processJoinExistingOnAggVar(libdap::DDS*, std::__1::basic_string, std::__1::allocator > const&, libdap::DDS const&) AggregationElement.cc:830 #11 0x115d2f028 in ncml_module::AggregationElement::processJoinExisting() AggregationElement.cc:510 #12 0x115d1f6c7 in ncml_module::AggregationElement::handleEnd() AggregationElement.cc:221 #13 0x11616db9f in ncml_module::NCMLParser::processEndNCMLElement(std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:1186 #14 0x11617535b in ncml_module::NCMLParser::onEndElementWithNamespace(std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:324 #15 0x1162d98c9 in ncmlSax2EndElementNs(void*, unsigned char const*, unsigned char const*, unsigned char const*) SaxParserWrapper.cc:242 #16 0x7fff597e1d8e in xmlParseEndTag2 (libxml2.2.dylib:x86_64+0x37d8e) #17 0x7fff597e0440 in xmlParseElement (libxml2.2.dylib:x86_64+0x36440) #18 0x7fff597e005a in xmlParseContent (libxml2.2.dylib:x86_64+0x3605a) #19 0x7fff597e03f1 in xmlParseElement (libxml2.2.dylib:x86_64+0x363f1) #20 0x7fff597e2b7a in xmlParseDocument (libxml2.2.dylib:x86_64+0x38b7a) #21 0x1162ca9ae in ncml_module::SaxParserWrapper::parse(std::__1::basic_string, std::__1::allocator > const&) SaxParserWrapper.cc:338 #22 0x11615fd0b in ncml_module::NCMLParser::parseInto(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType, BESDapResponse*) NCMLParser.cc:185 #23 0x1161591e7 in ncml_module::NCMLParser::parse(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType) NCMLParser.cc:155 #24 0x1161d3841 in ncml_module::NCMLRequestHandler::ncml_build_das(BESDataHandlerInterface&) NCMLRequestHandler.cc:172 #25 0x10a818c8f in BESRequestHandlerList::execute_current(BESDataHandlerInterface&) BESRequestHandlerList.cc:273 #26 0x10a8170a4 in BESRequestHandlerList::execute_each(BESDataHandlerInterface&) BESRequestHandlerList.cc:167 #27 0x10e421ff0 in BESDASResponseHandler::execute(BESDataHandlerInterface&) BESDASResponseHandler.cc:95 #28 0x10ac2ed5a in BESXMLInterface::execute_data_request_plan() BESXMLInterface.cc:285 #29 0x10a68cb8d in BESInterface::execute_request(std::__1::basic_string, std::__1::allocator > const&) BESInterface.cc:513 SUMMARY: AddressSanitizer: heap-buffer-overflow (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x4f3fd) in __asan_memcpy Shadow bytes around the buggy address: 0x1c0400001790: fa fa fd fa fa fa 00 fa fa fa 00 fa fa fa fd fd 0x1c04000017a0: fa fa fd fa fa fa 00 fa fa fa 00 fa fa fa 00 00 0x1c04000017b0: fa fa 00 fa fa fa 00 fa fa fa fd fa fa fa fd fa 0x1c04000017c0: fa fa 00 fa fa fa 00 fa fa fa fd fd fa fa fd fa 0x1c04000017d0: fa fa 00 fa fa fa 00 fa fa fa 00 00 fa fa 00 fa =>0x1c04000017e0: fa fa 00 00 fa fa 00 fa fa fa 00[fa]fa fa 00 fa 0x1c04000017f0: fa fa 00 fa fa fa 00 00 fa fa 00 00 fa fa fa fa 0x1c0400001800: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c0400001810: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c0400001820: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c0400001830: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa Shadow byte legend (one shadow byte represents 8 application bytes): Addressable: 00 Partially addressable: 01 02 03 04 05 06 07 Heap left redzone: fa Freed heap region: fd Stack left redzone: f1 Stack mid redzone: f2 Stack right redzone: f3 Stack after return: f5 Stack use after scope: f8 Global redzone: f9 Global init order: f6 Poisoned by user: f7 Container overflow: fc Array cookie: ac Intra object redzone: bb ASan internal: fe Left alloca redzone: ca Right alloca redzone: cb ==80972==ABORTING /Users/jimg/src/opendap/hyrax_git/bes/modules/ncml_module/tests/testsuite.dir/at-groups/549/test-source: line 44: 80972 Abort trap: 6 besstandalone -c $abs_builddir/bes.conf -i ./test.bescmd stdout: ./aggregations.at:340: exit code was 134, expected 0 549. aggregations.at:340: 549. Comparing das response for agg/joinExisting_varAgg.ncml to baseline ${abs_srcdir}/baselines/agg/joinExisting_varAgg.ncml (aggregations.at:340): FAILED (aggregations.at:340) # -*- compilation -*- 550. aggregations.at:340: testing Comparing dds response for agg/joinExisting_varAgg.ncml to baseline ${abs_srcdir}/baselines/agg/joinExisting_varAgg.ncml ... ./aggregations.at:340: besstandalone -c $abs_builddir/bes.conf -i ./test.bescmd stderr: Width: 8 Name: B Width: 8 Name: B Width: 16 Name: B ================================================================= ==80973==ERROR: AddressSanitizer: heap-buffer-overflow on address 0x60200000bf38 at pc 0x0001072653fe bp 0x7ffee9221f70 sp 0x7ffee9221720 READ of size 16 at 0x60200000bf38 thread T0 #0 0x1072653fd in __asan_memcpy (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x4f3fd) Provided dSYM: [/Users/jimg/src/opendap/hyrax_git/build/lib/libdap.25.dylib.dSYM/Contents/Resources/DWARF/libdap.25.dylib] does not match symbol owner 0x7ff8fec063f0 #1 0x10addbf39 in libdap::Vector::val2buf(void*, bool) Vector.cc:1212 #2 0x10adc55e7 in libdap::Vector::m_duplicate(libdap::Vector const&) Vector.cc:116 #3 0x10adc9733 in libdap::Vector::Vector(libdap::Vector const&) Vector.cc:297 #4 0x10ae17385 in libdap::Array::Array(libdap::Array const&) Array.cc:164 #5 0x111e0e8da in agg_util::ArrayAggregationBase::ArrayAggregationBase(agg_util::ArrayAggregationBase const&) ArrayAggregationBase.cc:56 #6 0x111e25476 in agg_util::ArrayJoinExistingAggregation::ArrayJoinExistingAggregation(agg_util::ArrayJoinExistingAggregation const&) ArrayJoinExistingAggregation.cc:79 #7 0x111e255bc in agg_util::ArrayJoinExistingAggregation::ArrayJoinExistingAggregation(agg_util::ArrayJoinExistingAggregation const&) ArrayJoinExistingAggregation.cc:80 #8 0x111e257ac in agg_util::ArrayJoinExistingAggregation::ptr_duplicate() ArrayJoinExistingAggregation.cc:105 #9 0x10acc80fd in libdap::DDS::add_var(libdap::BaseType*) DDS.cc:607 #10 0x111d65678 in ncml_module::AggregationElement::processAggVarJoinExistingForArray(libdap::DDS&, libdap::Array const&, agg_util::Dimension const&, std::__1::vector, std::__1::allocator > > const&) AggregationElement.cc:912 #11 0x111d43ae0 in ncml_module::AggregationElement::processJoinExistingOnAggVar(libdap::DDS*, std::__1::basic_string, std::__1::allocator > const&, libdap::DDS const&) AggregationElement.cc:830 #12 0x111cf7028 in ncml_module::AggregationElement::processJoinExisting() AggregationElement.cc:510 #13 0x111ce76c7 in ncml_module::AggregationElement::handleEnd() AggregationElement.cc:221 #14 0x112135b9f in ncml_module::NCMLParser::processEndNCMLElement(std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:1186 #15 0x11213d35b in ncml_module::NCMLParser::onEndElementWithNamespace(std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:324 #16 0x1122a18c9 in ncmlSax2EndElementNs(void*, unsigned char const*, unsigned char const*, unsigned char const*) SaxParserWrapper.cc:242 #17 0x7fff597e1d8e in xmlParseEndTag2 (libxml2.2.dylib:x86_64+0x37d8e) #18 0x7fff597e0440 in xmlParseElement (libxml2.2.dylib:x86_64+0x36440) #19 0x7fff597e005a in xmlParseContent (libxml2.2.dylib:x86_64+0x3605a) #20 0x7fff597e03f1 in xmlParseElement (libxml2.2.dylib:x86_64+0x363f1) #21 0x7fff597e2b7a in xmlParseDocument (libxml2.2.dylib:x86_64+0x38b7a) #22 0x1122929ae in ncml_module::SaxParserWrapper::parse(std::__1::basic_string, std::__1::allocator > const&) SaxParserWrapper.cc:338 #23 0x112127d0b in ncml_module::NCMLParser::parseInto(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType, BESDapResponse*) NCMLParser.cc:185 #24 0x1121a3aae in ncml_module::NCMLRequestHandler::ncml_build_dds(BESDataHandlerInterface&) NCMLRequestHandler.cc:260 #25 0x106c11c8f in BESRequestHandlerList::execute_current(BESDataHandlerInterface&) BESRequestHandlerList.cc:273 #26 0x106c100a4 in BESRequestHandlerList::execute_each(BESDataHandlerInterface&) BESRequestHandlerList.cc:167 #27 0x10a828048 in BESDDSResponseHandler::execute(BESDataHandlerInterface&) BESDDSResponseHandler.cc:107 #28 0x107028d5a in BESXMLInterface::execute_data_request_plan() BESXMLInterface.cc:285 #29 0x106a85b8d in BESInterface::execute_request(std::__1::basic_string, std::__1::allocator > const&) BESInterface.cc:513 #30 0x1069ee8d8 in StandAloneClient::executeCommand(std::__1::basic_string, std::__1::allocator > const&, int) StandAloneClient.cc:237 #31 0x1069ec3aa in StandAloneClient::executeCommands(std::__1::basic_ifstream >&, int) StandAloneClient.cc:349 #32 0x1069d1e6d in StandAloneApp::run() StandAloneApp.cc:251 #33 0x106cf5c24 in BESApp::main(int, char**) BESApp.cc:58 #34 0x1069d512e in main StandAloneApp.cc:345 #35 0x7fff59ad3014 in start (libdyld.dylib:x86_64+0x1014) 0x60200000bf38 is located 0 bytes to the right of 8-byte region [0x60200000bf30,0x60200000bf38) allocated by thread T0 here: #0 0x107278cb2 in wrap__Znam (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x62cb2) #1 0x10adc6b3c in libdap::Vector::m_create_cardinal_data_buffer_for_type(unsigned int) Vector.cc:203 #2 0x10addbc15 in libdap::Vector::val2buf(void*, bool) Vector.cc:1206 #3 0x10adc55e7 in libdap::Vector::m_duplicate(libdap::Vector const&) Vector.cc:116 #4 0x10adc9733 in libdap::Vector::Vector(libdap::Vector const&) Vector.cc:297 #5 0x10ae17385 in libdap::Array::Array(libdap::Array const&) Array.cc:164 #6 0x111e0e116 in agg_util::ArrayAggregationBase::ArrayAggregationBase(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&) ArrayAggregationBase.cc:50 #7 0x111e2107b in agg_util::ArrayJoinExistingAggregation::ArrayJoinExistingAggregation(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&, agg_util::Dimension const&) ArrayJoinExistingAggregation.cc:54 #8 0x111e25444 in agg_util::ArrayJoinExistingAggregation::ArrayJoinExistingAggregation(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&, agg_util::Dimension const&) ArrayJoinExistingAggregation.cc:55 #9 0x111d6303e in ncml_module::AggregationElement::processAggVarJoinExistingForArray(libdap::DDS&, libdap::Array const&, agg_util::Dimension const&, std::__1::vector, std::__1::allocator > > const&) AggregationElement.cc:900 #10 0x111d43ae0 in ncml_module::AggregationElement::processJoinExistingOnAggVar(libdap::DDS*, std::__1::basic_string, std::__1::allocator > const&, libdap::DDS const&) AggregationElement.cc:830 #11 0x111cf7028 in ncml_module::AggregationElement::processJoinExisting() AggregationElement.cc:510 #12 0x111ce76c7 in ncml_module::AggregationElement::handleEnd() AggregationElement.cc:221 #13 0x112135b9f in ncml_module::NCMLParser::processEndNCMLElement(std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:1186 #14 0x11213d35b in ncml_module::NCMLParser::onEndElementWithNamespace(std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:324 #15 0x1122a18c9 in ncmlSax2EndElementNs(void*, unsigned char const*, unsigned char const*, unsigned char const*) SaxParserWrapper.cc:242 #16 0x7fff597e1d8e in xmlParseEndTag2 (libxml2.2.dylib:x86_64+0x37d8e) #17 0x7fff597e0440 in xmlParseElement (libxml2.2.dylib:x86_64+0x36440) #18 0x7fff597e005a in xmlParseContent (libxml2.2.dylib:x86_64+0x3605a) #19 0x7fff597e03f1 in xmlParseElement (libxml2.2.dylib:x86_64+0x363f1) #20 0x7fff597e2b7a in xmlParseDocument (libxml2.2.dylib:x86_64+0x38b7a) #21 0x1122929ae in ncml_module::SaxParserWrapper::parse(std::__1::basic_string, std::__1::allocator > const&) SaxParserWrapper.cc:338 #22 0x112127d0b in ncml_module::NCMLParser::parseInto(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType, BESDapResponse*) NCMLParser.cc:185 #23 0x1121a3aae in ncml_module::NCMLRequestHandler::ncml_build_dds(BESDataHandlerInterface&) NCMLRequestHandler.cc:260 #24 0x106c11c8f in BESRequestHandlerList::execute_current(BESDataHandlerInterface&) BESRequestHandlerList.cc:273 #25 0x106c100a4 in BESRequestHandlerList::execute_each(BESDataHandlerInterface&) BESRequestHandlerList.cc:167 #26 0x10a828048 in BESDDSResponseHandler::execute(BESDataHandlerInterface&) BESDDSResponseHandler.cc:107 #27 0x107028d5a in BESXMLInterface::execute_data_request_plan() BESXMLInterface.cc:285 #28 0x106a85b8d in BESInterface::execute_request(std::__1::basic_string, std::__1::allocator > const&) BESInterface.cc:513 #29 0x1069ee8d8 in StandAloneClient::executeCommand(std::__1::basic_string, std::__1::allocator > const&, int) StandAloneClient.cc:237 SUMMARY: AddressSanitizer: heap-buffer-overflow (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x4f3fd) in __asan_memcpy Shadow bytes around the buggy address: 0x1c0400001790: fa fa 00 fa fa fa 00 fa fa fa fd fd fa fa fd fa 0x1c04000017a0: fa fa 00 fa fa fa 00 fa fa fa 00 00 fa fa 00 fa 0x1c04000017b0: fa fa 00 fa fa fa fd fa fa fa fd fa fa fa 00 fa 0x1c04000017c0: fa fa 00 fa fa fa fd fd fa fa fd fa fa fa 00 fa 0x1c04000017d0: fa fa 00 fa fa fa 00 00 fa fa 00 fa fa fa 00 00 =>0x1c04000017e0: fa fa 00 fa fa fa 00[fa]fa fa 00 fa fa fa 00 fa 0x1c04000017f0: fa fa 00 00 fa fa 00 00 fa fa fa fa fa fa fa fa 0x1c0400001800: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c0400001810: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c0400001820: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c0400001830: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa Shadow byte legend (one shadow byte represents 8 application bytes): Addressable: 00 Partially addressable: 01 02 03 04 05 06 07 Heap left redzone: fa Freed heap region: fd Stack left redzone: f1 Stack mid redzone: f2 Stack right redzone: f3 Stack after return: f5 Stack use after scope: f8 Global redzone: f9 Global init order: f6 Poisoned by user: f7 Container overflow: fc Array cookie: ac Intra object redzone: bb ASan internal: fe Left alloca redzone: ca Right alloca redzone: cb ==80973==ABORTING /Users/jimg/src/opendap/hyrax_git/bes/modules/ncml_module/tests/testsuite.dir/at-groups/550/test-source: line 44: 80973 Abort trap: 6 besstandalone -c $abs_builddir/bes.conf -i ./test.bescmd stdout: ./aggregations.at:340: exit code was 134, expected 0 550. aggregations.at:340: 550. Comparing dds response for agg/joinExisting_varAgg.ncml to baseline ${abs_srcdir}/baselines/agg/joinExisting_varAgg.ncml (aggregations.at:340): FAILED (aggregations.at:340) # -*- compilation -*- 551. aggregations.at:340: testing Comparing ddx response for agg/joinExisting_varAgg.ncml to baseline ${abs_srcdir}/baselines/agg/joinExisting_varAgg.ncml ... ./aggregations.at:340: besstandalone -c $abs_builddir/bes.conf -i ./test.bescmd stderr: Width: 8 Name: B Width: 8 Name: B Width: 16 Name: B ================================================================= ==81037==ERROR: AddressSanitizer: heap-buffer-overflow on address 0x60200000bf38 at pc 0x0001086f53fe bp 0x7ffee86ceb10 sp 0x7ffee86ce2c0 READ of size 16 at 0x60200000bf38 thread T0 #0 0x1086f53fd in __asan_memcpy (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x4f3fd) Provided dSYM: [/Users/jimg/src/opendap/hyrax_git/build/lib/libdap.25.dylib.dSYM/Contents/Resources/DWARF/libdap.25.dylib] does not match symbol owner 0x7fae7a6098e0 #1 0x10ba23f39 in libdap::Vector::val2buf(void*, bool) Vector.cc:1212 #2 0x10ba0d5e7 in libdap::Vector::m_duplicate(libdap::Vector const&) Vector.cc:116 #3 0x10ba11733 in libdap::Vector::Vector(libdap::Vector const&) Vector.cc:297 #4 0x10ba5f385 in libdap::Array::Array(libdap::Array const&) Array.cc:164 #5 0x11296d8da in agg_util::ArrayAggregationBase::ArrayAggregationBase(agg_util::ArrayAggregationBase const&) ArrayAggregationBase.cc:56 #6 0x112984476 in agg_util::ArrayJoinExistingAggregation::ArrayJoinExistingAggregation(agg_util::ArrayJoinExistingAggregation const&) ArrayJoinExistingAggregation.cc:79 #7 0x1129845bc in agg_util::ArrayJoinExistingAggregation::ArrayJoinExistingAggregation(agg_util::ArrayJoinExistingAggregation const&) ArrayJoinExistingAggregation.cc:80 #8 0x1129847ac in agg_util::ArrayJoinExistingAggregation::ptr_duplicate() ArrayJoinExistingAggregation.cc:105 #9 0x10b9100fd in libdap::DDS::add_var(libdap::BaseType*) DDS.cc:607 #10 0x1128c4678 in ncml_module::AggregationElement::processAggVarJoinExistingForArray(libdap::DDS&, libdap::Array const&, agg_util::Dimension const&, std::__1::vector, std::__1::allocator > > const&) AggregationElement.cc:912 #11 0x1128a2ae0 in ncml_module::AggregationElement::processJoinExistingOnAggVar(libdap::DDS*, std::__1::basic_string, std::__1::allocator > const&, libdap::DDS const&) AggregationElement.cc:830 #12 0x112856028 in ncml_module::AggregationElement::processJoinExisting() AggregationElement.cc:510 #13 0x1128466c7 in ncml_module::AggregationElement::handleEnd() AggregationElement.cc:221 #14 0x112c94b9f in ncml_module::NCMLParser::processEndNCMLElement(std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:1186 #15 0x112c9c35b in ncml_module::NCMLParser::onEndElementWithNamespace(std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:324 #16 0x112e008c9 in ncmlSax2EndElementNs(void*, unsigned char const*, unsigned char const*, unsigned char const*) SaxParserWrapper.cc:242 #17 0x7fff597e1d8e in xmlParseEndTag2 (libxml2.2.dylib:x86_64+0x37d8e) #18 0x7fff597e0440 in xmlParseElement (libxml2.2.dylib:x86_64+0x36440) #19 0x7fff597e005a in xmlParseContent (libxml2.2.dylib:x86_64+0x3605a) #20 0x7fff597e03f1 in xmlParseElement (libxml2.2.dylib:x86_64+0x363f1) #21 0x7fff597e2b7a in xmlParseDocument (libxml2.2.dylib:x86_64+0x38b7a) #22 0x112df19ae in ncml_module::SaxParserWrapper::parse(std::__1::basic_string, std::__1::allocator > const&) SaxParserWrapper.cc:338 #23 0x112c86d0b in ncml_module::NCMLParser::parseInto(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType, BESDapResponse*) NCMLParser.cc:185 #24 0x112d02aae in ncml_module::NCMLRequestHandler::ncml_build_dds(BESDataHandlerInterface&) NCMLRequestHandler.cc:260 #25 0x107763c8f in BESRequestHandlerList::execute_current(BESDataHandlerInterface&) BESRequestHandlerList.cc:273 #26 0x1077620a4 in BESRequestHandlerList::execute_each(BESDataHandlerInterface&) BESRequestHandlerList.cc:167 #27 0x10b4ba5dc in BESDDXResponseHandler::execute(BESDataHandlerInterface&) BESDDXResponseHandler.cc:122 #28 0x107b7ad5a in BESXMLInterface::execute_data_request_plan() BESXMLInterface.cc:285 #29 0x1075d7b8d in BESInterface::execute_request(std::__1::basic_string, std::__1::allocator > const&) BESInterface.cc:513 #30 0x1075418d8 in StandAloneClient::executeCommand(std::__1::basic_string, std::__1::allocator > const&, int) StandAloneClient.cc:237 #31 0x10753f3aa in StandAloneClient::executeCommands(std::__1::basic_ifstream >&, int) StandAloneClient.cc:349 #32 0x107524e6d in StandAloneApp::run() StandAloneApp.cc:251 #33 0x107847c24 in BESApp::main(int, char**) BESApp.cc:58 #34 0x10752812e in main StandAloneApp.cc:345 #35 0x7fff59ad3014 in start (libdyld.dylib:x86_64+0x1014) 0x60200000bf38 is located 0 bytes to the right of 8-byte region [0x60200000bf30,0x60200000bf38) allocated by thread T0 here: #0 0x108708cb2 in wrap__Znam (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x62cb2) #1 0x10ba0eb3c in libdap::Vector::m_create_cardinal_data_buffer_for_type(unsigned int) Vector.cc:203 #2 0x10ba23c15 in libdap::Vector::val2buf(void*, bool) Vector.cc:1206 #3 0x10ba0d5e7 in libdap::Vector::m_duplicate(libdap::Vector const&) Vector.cc:116 #4 0x10ba11733 in libdap::Vector::Vector(libdap::Vector const&) Vector.cc:297 #5 0x10ba5f385 in libdap::Array::Array(libdap::Array const&) Array.cc:164 #6 0x11296d116 in agg_util::ArrayAggregationBase::ArrayAggregationBase(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&) ArrayAggregationBase.cc:50 #7 0x11298007b in agg_util::ArrayJoinExistingAggregation::ArrayJoinExistingAggregation(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&, agg_util::Dimension const&) ArrayJoinExistingAggregation.cc:54 #8 0x112984444 in agg_util::ArrayJoinExistingAggregation::ArrayJoinExistingAggregation(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&, agg_util::Dimension const&) ArrayJoinExistingAggregation.cc:55 #9 0x1128c203e in ncml_module::AggregationElement::processAggVarJoinExistingForArray(libdap::DDS&, libdap::Array const&, agg_util::Dimension const&, std::__1::vector, std::__1::allocator > > const&) AggregationElement.cc:900 #10 0x1128a2ae0 in ncml_module::AggregationElement::processJoinExistingOnAggVar(libdap::DDS*, std::__1::basic_string, std::__1::allocator > const&, libdap::DDS const&) AggregationElement.cc:830 #11 0x112856028 in ncml_module::AggregationElement::processJoinExisting() AggregationElement.cc:510 #12 0x1128466c7 in ncml_module::AggregationElement::handleEnd() AggregationElement.cc:221 #13 0x112c94b9f in ncml_module::NCMLParser::processEndNCMLElement(std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:1186 #14 0x112c9c35b in ncml_module::NCMLParser::onEndElementWithNamespace(std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:324 #15 0x112e008c9 in ncmlSax2EndElementNs(void*, unsigned char const*, unsigned char const*, unsigned char const*) SaxParserWrapper.cc:242 #16 0x7fff597e1d8e in xmlParseEndTag2 (libxml2.2.dylib:x86_64+0x37d8e) #17 0x7fff597e0440 in xmlParseElement (libxml2.2.dylib:x86_64+0x36440) #18 0x7fff597e005a in xmlParseContent (libxml2.2.dylib:x86_64+0x3605a) #19 0x7fff597e03f1 in xmlParseElement (libxml2.2.dylib:x86_64+0x363f1) #20 0x7fff597e2b7a in xmlParseDocument (libxml2.2.dylib:x86_64+0x38b7a) #21 0x112df19ae in ncml_module::SaxParserWrapper::parse(std::__1::basic_string, std::__1::allocator > const&) SaxParserWrapper.cc:338 #22 0x112c86d0b in ncml_module::NCMLParser::parseInto(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType, BESDapResponse*) NCMLParser.cc:185 #23 0x112d02aae in ncml_module::NCMLRequestHandler::ncml_build_dds(BESDataHandlerInterface&) NCMLRequestHandler.cc:260 #24 0x107763c8f in BESRequestHandlerList::execute_current(BESDataHandlerInterface&) BESRequestHandlerList.cc:273 #25 0x1077620a4 in BESRequestHandlerList::execute_each(BESDataHandlerInterface&) BESRequestHandlerList.cc:167 #26 0x10b4ba5dc in BESDDXResponseHandler::execute(BESDataHandlerInterface&) BESDDXResponseHandler.cc:122 #27 0x107b7ad5a in BESXMLInterface::execute_data_request_plan() BESXMLInterface.cc:285 #28 0x1075d7b8d in BESInterface::execute_request(std::__1::basic_string, std::__1::allocator > const&) BESInterface.cc:513 #29 0x1075418d8 in StandAloneClient::executeCommand(std::__1::basic_string, std::__1::allocator > const&, int) StandAloneClient.cc:237 SUMMARY: AddressSanitizer: heap-buffer-overflow (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x4f3fd) in __asan_memcpy Shadow bytes around the buggy address: 0x1c0400001790: fa fa 00 fa fa fa 00 fa fa fa fd fd fa fa fd fa 0x1c04000017a0: fa fa 00 fa fa fa 00 fa fa fa 00 00 fa fa 00 fa 0x1c04000017b0: fa fa 00 fa fa fa fd fa fa fa fd fa fa fa 00 fa 0x1c04000017c0: fa fa 00 fa fa fa fd fd fa fa fd fa fa fa 00 fa 0x1c04000017d0: fa fa 00 fa fa fa 00 00 fa fa 00 fa fa fa 00 00 =>0x1c04000017e0: fa fa 00 fa fa fa 00[fa]fa fa 00 fa fa fa 00 fa 0x1c04000017f0: fa fa 00 00 fa fa 00 00 fa fa fa fa fa fa fa fa 0x1c0400001800: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c0400001810: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c0400001820: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c0400001830: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa Shadow byte legend (one shadow byte represents 8 application bytes): Addressable: 00 Partially addressable: 01 02 03 04 05 06 07 Heap left redzone: fa Freed heap region: fd Stack left redzone: f1 Stack mid redzone: f2 Stack right redzone: f3 Stack after return: f5 Stack use after scope: f8 Global redzone: f9 Global init order: f6 Poisoned by user: f7 Container overflow: fc Array cookie: ac Intra object redzone: bb ASan internal: fe Left alloca redzone: ca Right alloca redzone: cb ==81037==ABORTING /Users/jimg/src/opendap/hyrax_git/bes/modules/ncml_module/tests/testsuite.dir/at-groups/551/test-source: line 44: 81037 Abort trap: 6 besstandalone -c $abs_builddir/bes.conf -i ./test.bescmd stdout: ./aggregations.at:340: exit code was 134, expected 0 551. aggregations.at:340: 551. Comparing ddx response for agg/joinExisting_varAgg.ncml to baseline ${abs_srcdir}/baselines/agg/joinExisting_varAgg.ncml (aggregations.at:340): FAILED (aggregations.at:340) # -*- compilation -*- 552. aggregations.at:340: testing Comparing dods response for agg/joinExisting_varAgg.ncml to baseline ${abs_srcdir}/baselines/agg/joinExisting_varAgg.ncml ... ./aggregations.at:340: besstandalone -c $abs_builddir/bes.conf -i ./test.bescmd stderr: Width: 8 Name: B Width: 8 Name: B Width: 16 Name: B ================================================================= ==81038==ERROR: AddressSanitizer: heap-buffer-overflow on address 0x60200000bf58 at pc 0x00010da493fe bp 0x7ffee294ddf0 sp 0x7ffee294d5a0 READ of size 16 at 0x60200000bf58 thread T0 #0 0x10da493fd in __asan_memcpy (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x4f3fd) Provided dSYM: [/Users/jimg/src/opendap/hyrax_git/build/lib/libdap.25.dylib.dSYM/Contents/Resources/DWARF/libdap.25.dylib] does not match symbol owner 0x7f9165f06380 #1 0x10f5f3f39 in libdap::Vector::val2buf(void*, bool) Vector.cc:1212 #2 0x10f5dd5e7 in libdap::Vector::m_duplicate(libdap::Vector const&) Vector.cc:116 #3 0x10f5e1733 in libdap::Vector::Vector(libdap::Vector const&) Vector.cc:297 #4 0x10f62f385 in libdap::Array::Array(libdap::Array const&) Array.cc:164 #5 0x1186e58da in agg_util::ArrayAggregationBase::ArrayAggregationBase(agg_util::ArrayAggregationBase const&) ArrayAggregationBase.cc:56 #6 0x1186fc476 in agg_util::ArrayJoinExistingAggregation::ArrayJoinExistingAggregation(agg_util::ArrayJoinExistingAggregation const&) ArrayJoinExistingAggregation.cc:79 #7 0x1186fc5bc in agg_util::ArrayJoinExistingAggregation::ArrayJoinExistingAggregation(agg_util::ArrayJoinExistingAggregation const&) ArrayJoinExistingAggregation.cc:80 #8 0x1186fc7ac in agg_util::ArrayJoinExistingAggregation::ptr_duplicate() ArrayJoinExistingAggregation.cc:105 #9 0x10f4e00fd in libdap::DDS::add_var(libdap::BaseType*) DDS.cc:607 #10 0x11863c678 in ncml_module::AggregationElement::processAggVarJoinExistingForArray(libdap::DDS&, libdap::Array const&, agg_util::Dimension const&, std::__1::vector, std::__1::allocator > > const&) AggregationElement.cc:912 #11 0x11861aae0 in ncml_module::AggregationElement::processJoinExistingOnAggVar(libdap::DDS*, std::__1::basic_string, std::__1::allocator > const&, libdap::DDS const&) AggregationElement.cc:830 #12 0x1185ce028 in ncml_module::AggregationElement::processJoinExisting() AggregationElement.cc:510 #13 0x1185be6c7 in ncml_module::AggregationElement::handleEnd() AggregationElement.cc:221 #14 0x118a0cb9f in ncml_module::NCMLParser::processEndNCMLElement(std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:1186 #15 0x118a1435b in ncml_module::NCMLParser::onEndElementWithNamespace(std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:324 #16 0x118b788c9 in ncmlSax2EndElementNs(void*, unsigned char const*, unsigned char const*, unsigned char const*) SaxParserWrapper.cc:242 #17 0x7fff597e1d8e in xmlParseEndTag2 (libxml2.2.dylib:x86_64+0x37d8e) #18 0x7fff597e0440 in xmlParseElement (libxml2.2.dylib:x86_64+0x36440) #19 0x7fff597e005a in xmlParseContent (libxml2.2.dylib:x86_64+0x3605a) #20 0x7fff597e03f1 in xmlParseElement (libxml2.2.dylib:x86_64+0x363f1) #21 0x7fff597e2b7a in xmlParseDocument (libxml2.2.dylib:x86_64+0x38b7a) #22 0x118b699ae in ncml_module::SaxParserWrapper::parse(std::__1::basic_string, std::__1::allocator > const&) SaxParserWrapper.cc:338 #23 0x1189fed0b in ncml_module::NCMLParser::parseInto(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType, BESDapResponse*) NCMLParser.cc:185 #24 0x118a80346 in ncml_module::NCMLRequestHandler::ncml_build_data(BESDataHandlerInterface&) NCMLRequestHandler.cc:297 #25 0x10d4eac8f in BESRequestHandlerList::execute_current(BESDataHandlerInterface&) BESRequestHandlerList.cc:273 #26 0x10d4e90a4 in BESRequestHandlerList::execute_each(BESDataHandlerInterface&) BESRequestHandlerList.cc:167 #27 0x10f04a88c in BESDataResponseHandler::execute(BESDataHandlerInterface&) BESDataResponseHandler.cc:148 #28 0x10d903d5a in BESXMLInterface::execute_data_request_plan() BESXMLInterface.cc:285 #29 0x10d35eb8d in BESInterface::execute_request(std::__1::basic_string, std::__1::allocator > const&) BESInterface.cc:513 #30 0x10d2c28d8 in StandAloneClient::executeCommand(std::__1::basic_string, std::__1::allocator > const&, int) StandAloneClient.cc:237 #31 0x10d2c03aa in StandAloneClient::executeCommands(std::__1::basic_ifstream >&, int) StandAloneClient.cc:349 #32 0x10d2a5e6d in StandAloneApp::run() StandAloneApp.cc:251 #33 0x10d5cec24 in BESApp::main(int, char**) BESApp.cc:58 #34 0x10d2a912e in main StandAloneApp.cc:345 #35 0x7fff59ad3014 in start (libdyld.dylib:x86_64+0x1014) 0x60200000bf58 is located 0 bytes to the right of 8-byte region [0x60200000bf50,0x60200000bf58) allocated by thread T0 here: #0 0x10da5ccb2 in wrap__Znam (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x62cb2) #1 0x10f5deb3c in libdap::Vector::m_create_cardinal_data_buffer_for_type(unsigned int) Vector.cc:203 #2 0x10f5f3c15 in libdap::Vector::val2buf(void*, bool) Vector.cc:1206 #3 0x10f5dd5e7 in libdap::Vector::m_duplicate(libdap::Vector const&) Vector.cc:116 #4 0x10f5e1733 in libdap::Vector::Vector(libdap::Vector const&) Vector.cc:297 #5 0x10f62f385 in libdap::Array::Array(libdap::Array const&) Array.cc:164 #6 0x1186e5116 in agg_util::ArrayAggregationBase::ArrayAggregationBase(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&) ArrayAggregationBase.cc:50 #7 0x1186f807b in agg_util::ArrayJoinExistingAggregation::ArrayJoinExistingAggregation(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&, agg_util::Dimension const&) ArrayJoinExistingAggregation.cc:54 #8 0x1186fc444 in agg_util::ArrayJoinExistingAggregation::ArrayJoinExistingAggregation(libdap::Array const&, std::__1::vector, std::__1::allocator > > const&, std::__1::auto_ptr&, agg_util::Dimension const&) ArrayJoinExistingAggregation.cc:55 #9 0x11863a03e in ncml_module::AggregationElement::processAggVarJoinExistingForArray(libdap::DDS&, libdap::Array const&, agg_util::Dimension const&, std::__1::vector, std::__1::allocator > > const&) AggregationElement.cc:900 #10 0x11861aae0 in ncml_module::AggregationElement::processJoinExistingOnAggVar(libdap::DDS*, std::__1::basic_string, std::__1::allocator > const&, libdap::DDS const&) AggregationElement.cc:830 #11 0x1185ce028 in ncml_module::AggregationElement::processJoinExisting() AggregationElement.cc:510 #12 0x1185be6c7 in ncml_module::AggregationElement::handleEnd() AggregationElement.cc:221 #13 0x118a0cb9f in ncml_module::NCMLParser::processEndNCMLElement(std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:1186 #14 0x118a1435b in ncml_module::NCMLParser::onEndElementWithNamespace(std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&, std::__1::basic_string, std::__1::allocator > const&) NCMLParser.cc:324 #15 0x118b788c9 in ncmlSax2EndElementNs(void*, unsigned char const*, unsigned char const*, unsigned char const*) SaxParserWrapper.cc:242 #16 0x7fff597e1d8e in xmlParseEndTag2 (libxml2.2.dylib:x86_64+0x37d8e) #17 0x7fff597e0440 in xmlParseElement (libxml2.2.dylib:x86_64+0x36440) #18 0x7fff597e005a in xmlParseContent (libxml2.2.dylib:x86_64+0x3605a) #19 0x7fff597e03f1 in xmlParseElement (libxml2.2.dylib:x86_64+0x363f1) #20 0x7fff597e2b7a in xmlParseDocument (libxml2.2.dylib:x86_64+0x38b7a) #21 0x118b699ae in ncml_module::SaxParserWrapper::parse(std::__1::basic_string, std::__1::allocator > const&) SaxParserWrapper.cc:338 #22 0x1189fed0b in ncml_module::NCMLParser::parseInto(std::__1::basic_string, std::__1::allocator > const&, agg_util::DDSLoader::ResponseType, BESDapResponse*) NCMLParser.cc:185 #23 0x118a80346 in ncml_module::NCMLRequestHandler::ncml_build_data(BESDataHandlerInterface&) NCMLRequestHandler.cc:297 #24 0x10d4eac8f in BESRequestHandlerList::execute_current(BESDataHandlerInterface&) BESRequestHandlerList.cc:273 #25 0x10d4e90a4 in BESRequestHandlerList::execute_each(BESDataHandlerInterface&) BESRequestHandlerList.cc:167 #26 0x10f04a88c in BESDataResponseHandler::execute(BESDataHandlerInterface&) BESDataResponseHandler.cc:148 #27 0x10d903d5a in BESXMLInterface::execute_data_request_plan() BESXMLInterface.cc:285 #28 0x10d35eb8d in BESInterface::execute_request(std::__1::basic_string, std::__1::allocator > const&) BESInterface.cc:513 #29 0x10d2c28d8 in StandAloneClient::executeCommand(std::__1::basic_string, std::__1::allocator > const&, int) StandAloneClient.cc:237 SUMMARY: AddressSanitizer: heap-buffer-overflow (libclang_rt.asan_osx_dynamic.dylib:x86_64h+0x4f3fd) in __asan_memcpy Shadow bytes around the buggy address: 0x1c0400001790: fa fa fd fa fa fa 00 fa fa fa 00 fa fa fa fd fd 0x1c04000017a0: fa fa fd fa fa fa 00 fa fa fa 00 fa fa fa 00 00 0x1c04000017b0: fa fa 00 fa fa fa 00 fa fa fa fd fa fa fa fd fa 0x1c04000017c0: fa fa 00 fa fa fa 00 fa fa fa fd fd fa fa fd fa 0x1c04000017d0: fa fa 00 fa fa fa 00 fa fa fa 00 00 fa fa 00 fa =>0x1c04000017e0: fa fa 00 00 fa fa 00 fa fa fa 00[fa]fa fa 00 fa 0x1c04000017f0: fa fa 00 fa fa fa 00 00 fa fa 00 00 fa fa fa fa 0x1c0400001800: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c0400001810: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c0400001820: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x1c0400001830: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa Shadow byte legend (one shadow byte represents 8 application bytes): Addressable: 00 Partially addressable: 01 02 03 04 05 06 07 Heap left redzone: fa Freed heap region: fd Stack left redzone: f1 Stack mid redzone: f2 Stack right redzone: f3 Stack after return: f5 Stack use after scope: f8 Global redzone: f9 Global init order: f6 Poisoned by user: f7 Container overflow: fc Array cookie: ac Intra object redzone: bb ASan internal: fe Left alloca redzone: ca Right alloca redzone: cb ==81038==ABORTING /Users/jimg/src/opendap/hyrax_git/bes/modules/ncml_module/tests/testsuite.dir/at-groups/552/test-source: line 44: 81038 Abort trap: 6 besstandalone -c $abs_builddir/bes.conf -i ./test.bescmd stdout: ./aggregations.at:340: exit code was 134, expected 0 552. aggregations.at:340: 552. Comparing dods response for agg/joinExisting_varAgg.ncml to baseline ${abs_srcdir}/baselines/agg/joinExisting_varAgg.ncml (aggregations.at:340): FAILED (aggregations.at:340) ## ------------------- ## ## ../../../config.log ## ## ------------------- ## | This file contains any messages produced by compilers while | running configure, to aid debugging if configure makes a mistake. | | It was created by bes configure 3.19.1, which was | generated by GNU Autoconf 2.69. Invocation command line was | | $ ./configure --prefix=/Users/jimg/src/opendap/hyrax_git/build --enable-developer --enable-asan --with-dependencies=/Users/jimg/src/opendap/hyrax_git/build/deps | | ## --------- ## | ## Platform. ## | ## --------- ## | | hostname = edamame.local | uname -m = x86_64 | uname -r = 17.7.0 | uname -s = Darwin | uname -v = Darwin Kernel Version 17.7.0: Thu Jun 21 22:53:14 PDT 2018; root:xnu-4570.71.2~1/RELEASE_X86_64 | | /usr/bin/uname -p = i386 | /bin/uname -X = unknown | | /bin/arch = unknown | /usr/bin/arch -k = unknown | /usr/convex/getsysinfo = unknown | /usr/bin/hostinfo = Mach kernel version: | Darwin Kernel Version 17.7.0: Thu Jun 21 22:53:14 PDT 2018; root:xnu-4570.71.2~1/RELEASE_X86_64 | Kernel configured for up to 8 processors. | 4 processors are physically available. | 8 processors are logically available. | Processor type: x86_64h (Intel x86-64h Haswell) | Processors active: 0 1 2 3 4 5 6 7 | Primary memory available: 16.00 gigabytes | Default processor set: 483 tasks, 2785 threads, 8 processors | Load average: 1.52, Mach factor: 6.47 | /bin/machine = unknown | /usr/bin/oslevel = unknown | /bin/universe = unknown | | PATH: /Users/jimg/src/opendap/hyrax_git/build/bin | PATH: /Users/jimg/src/opendap/hyrax_git/build/deps/bin | PATH: /Library/Frameworks/Python.framework/Versions/3.6/bin | PATH: /usr/local/apache-maven/apache-maven-3.1.1/bin | PATH: /usr/local/apache-ant-1.9.3/bin | PATH: /usr/local/mysql/bin | PATH: /Users/jimg/Library/Python/3.6/bin | PATH: /Applications/Doxygen.app/Contents/Resources | PATH: /usr/local/bin | PATH: /usr/local/sbin | PATH: /bin | PATH: /sbin | PATH: /usr/bin | PATH: /usr/sbin | PATH: /Applications/Xcode.app/Contents/Developer/usr/bin | PATH: /Users/jimg/bin | PATH: /Applications/itt/idl/idl/bin | PATH: /Applications/MATLAB_R2015a.app/bin | PATH: /usr/local/texlive/2013/bin/x86_64-darwin | PATH: /Applications/HP_Fortify/HP_Fortify_SCA_and_Apps_4.10/bin | PATH: /Applications/HP_Fortify/HP_Fortify_SCA_and_Apps_4.21/bin | | | ## ----------- ## | ## Core tests. ## | ## ----------- ## | | configure:2732: Package Major Version: 3 | configure:2734: Package Minor Version: 19 | configure:2736: Package SubMinor Version: 1 | configure:2870: checking for a BSD-compatible install | configure:2938: result: /usr/bin/install -c | configure:2949: checking whether build environment is sane | configure:3004: result: yes | configure:3155: checking for a thread-safe mkdir -p | configure:3194: result: conf/install-sh -c -d | configure:3201: checking for gawk | configure:3231: result: no | configure:3201: checking for mawk | configure:3231: result: no | configure:3201: checking for nawk | configure:3231: result: no | configure:3201: checking for awk | configure:3217: found /usr/bin/awk | configure:3228: result: awk | configure:3239: checking whether make sets $(MAKE) | configure:3261: result: yes | configure:3290: checking whether make supports nested variables | configure:3307: result: yes | configure:3386: checking how to create a pax tar archive | configure:3397: tar --version | bsdtar 2.8.3 - libarchive 2.8.3 | configure:3400: $? = 0 | configure:3440: tardir=conftest.dir && eval tar --format=posix -chf - "$tardir" >conftest.tar | configure:3443: $? = 0 | configure:3447: tar -xf - &5 | Apple LLVM version 9.1.0 (clang-902.0.39.2) | Target: x86_64-apple-darwin17.7.0 | Thread model: posix | InstalledDir: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin | Configured with: --prefix=/Applications/Xcode.app/Contents/Developer/usr --with-gxx-include-dir=/usr/include/c++/4.2.1 | configure:4069: $? = 0 | configure:4058: gcc -v >&5 | Configured with: --prefix=/Applications/Xcode.app/Contents/Developer/usr --with-gxx-include-dir=/usr/include/c++/4.2.1 | Apple LLVM version 9.1.0 (clang-902.0.39.2) | Target: x86_64-apple-darwin17.7.0 | Thread model: posix | InstalledDir: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin | configure:4069: $? = 0 | configure:4058: gcc -V >&5 | clang: error: argument to '-V' is missing (expected 1 value) | clang: error: no input files | configure:4069: $? = 1 | configure:4058: gcc -qversion >&5 | clang: error: unknown argument: '-qversion' | clang: error: no input files | configure:4069: $? = 1 | configure:4089: checking whether the C compiler works | configure:4111: gcc conftest.c >&5 | configure:4115: $? = 0 | configure:4163: result: yes | configure:4166: checking for C compiler default output file name | configure:4168: result: a.out | configure:4174: checking for suffix of executables | configure:4181: gcc -o conftest conftest.c >&5 | configure:4185: $? = 0 | configure:4207: result: | configure:4229: checking whether we are cross compiling | configure:4237: gcc -o conftest conftest.c >&5 | configure:4241: $? = 0 | configure:4248: ./conftest | configure:4252: $? = 0 | configure:4267: result: no | configure:4272: checking for suffix of object files | configure:4294: gcc -c conftest.c >&5 | configure:4298: $? = 0 | configure:4319: result: o | configure:4323: checking whether we are using the GNU C compiler | configure:4342: gcc -c conftest.c >&5 | configure:4342: $? = 0 | configure:4351: result: yes | configure:4360: checking whether gcc accepts -g | configure:4380: gcc -c -g conftest.c >&5 | configure:4380: $? = 0 | configure:4421: result: yes | configure:4438: checking for gcc option to accept ISO C89 | configure:4501: gcc -c -g -O2 conftest.c >&5 | configure:4501: $? = 0 | configure:4514: result: none needed | configure:4539: checking whether gcc understands -c and -o together | configure:4561: gcc -c conftest.c -o conftest2.o | configure:4564: $? = 0 | configure:4561: gcc -c conftest.c -o conftest2.o | configure:4564: $? = 0 | configure:4576: result: yes | configure:4595: checking dependency style of gcc | configure:4706: result: gcc3 | configure:4721: checking for a sed that does not truncate output | configure:4785: result: /usr/bin/sed | configure:4803: checking for grep that handles long lines and -e | configure:4861: result: /usr/bin/grep | configure:4866: checking for egrep | configure:4928: result: /usr/bin/grep -E | configure:4933: checking for fgrep | configure:4995: result: /usr/bin/grep -F | configure:5030: checking for ld used by gcc | configure:5097: result: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ld | configure:5104: checking if the linker (/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ld) is GNU ld | configure:5119: result: no | configure:5131: checking for BSD- or MS-compatible name lister (nm) | configure:5185: result: /usr/bin/nm -B | configure:5315: checking the name lister (/usr/bin/nm -B) interface | configure:5322: gcc -c -g -O2 conftest.c >&5 | configure:5325: /usr/bin/nm -B "conftest.o" | configure:5328: output | 00000000000001d0 S _some_variable | configure:5335: result: BSD nm | configure:5338: checking whether ln -s works | configure:5342: result: yes | configure:5350: checking the maximum length of command line arguments | configure:5481: result: 196608 | configure:5529: checking how to convert x86_64-apple-darwin17.7.0 file names to x86_64-apple-darwin17.7.0 format | configure:5569: result: func_convert_file_noop | configure:5576: checking how to convert x86_64-apple-darwin17.7.0 file names to toolchain format | configure:5596: result: func_convert_file_noop | configure:5603: checking for /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ld option to reload object files | configure:5610: result: -r | configure:5684: checking for objdump | configure:5700: found /usr/bin/objdump | configure:5711: result: objdump | configure:5743: checking how to recognize dependent libraries | configure:5943: result: pass_all | configure:6028: checking for dlltool | configure:6058: result: no | configure:6088: checking how to associate runtime and link libraries | configure:6115: result: printf %s\n | configure:6176: checking for ar | configure:6192: found /usr/bin/ar | configure:6203: result: ar | configure:6240: checking for archiver @FILE support | configure:6257: gcc -c -g -O2 conftest.c >&5 | configure:6257: $? = 0 | configure:6260: ar cru libconftest.a @conftest.lst >&5 | ar: @conftest.lst: No such file or directory | configure:6263: $? = 1 | configure:6283: result: no | configure:6341: checking for strip | configure:6357: found /usr/bin/strip | configure:6368: result: strip | configure:6440: checking for ranlib | configure:6456: found /usr/bin/ranlib | configure:6467: result: ranlib | configure:6569: checking command to parse /usr/bin/nm -B output from gcc object | configure:6722: gcc -c -g -O2 conftest.c >&5 | configure:6725: $? = 0 | configure:6729: /usr/bin/nm -B conftest.o \| sed -n -e 's/^.*[ ]\([BCDEGRST][BCDEGRST]*\)[ ][ ]*\([_A-Za-z][_A-Za-z0-9]*\)$/\1 \2 \2/p' | sed '/ __gnu_lto/d' \> conftest.nm | configure:6732: $? = 0 | cannot find nm_test_var in conftest.nm | configure:6722: gcc -c -g -O2 conftest.c >&5 | configure:6725: $? = 0 | configure:6729: /usr/bin/nm -B conftest.o \| sed -n -e 's/^.*[ ]\([BCDEGRST][BCDEGRST]*\)[ ][ ]*_\([_A-Za-z][_A-Za-z0-9]*\)$/\1 _\2 \2/p' | sed '/ __gnu_lto/d' \> conftest.nm | configure:6732: $? = 0 | configure:6798: gcc -o conftest -g -O2 conftest.c conftstm.o >&5 | warning: (x86_64) could not find object file symbol for symbol _main | configure:6801: $? = 0 | configure:6839: result: ok | configure:6886: checking for sysroot | configure:6916: result: no | configure:6923: checking for a working dd | configure:6961: result: /bin/dd | configure:6965: checking how to truncate binary pipes | configure:6980: result: /bin/dd bs=4096 count=1 | configure:7309: checking for mt | configure:7339: result: no | configure:7359: checking if : is a manifest tool | configure:7365: : '-?' | configure:7373: result: no | configure:7429: checking for dsymutil | configure:7445: found /usr/bin/dsymutil | configure:7456: result: dsymutil | configure:7521: checking for nmedit | configure:7537: found /usr/bin/nmedit | configure:7548: result: nmedit | configure:7613: checking for lipo | configure:7629: found /usr/bin/lipo | configure:7640: result: lipo | configure:7705: checking for otool | configure:7721: found /usr/bin/otool | configure:7732: result: otool | configure:7797: checking for otool64 | configure:7827: result: no | configure:7872: checking for -single_module linker flag | gcc -g -O2 -o libconftest.dylib -dynamiclib -Wl,-single_module conftest.c | configure:7905: result: yes | configure:7908: checking for -exported_symbols_list linker flag | configure:7928: gcc -o conftest -g -O2 -Wl,-exported_symbols_list,conftest.sym conftest.c >&5 | configure:7928: $? = 0 | configure:7938: result: yes | configure:7941: checking for -force_load linker flag | gcc -g -O2 -c -o conftest.o conftest.c | ar cru libconftest.a conftest.o | ranlib libconftest.a | gcc -g -O2 -o conftest conftest.c -Wl,-force_load,./libconftest.a | configure:7973: result: yes | configure:8050: checking how to run the C preprocessor | configure:8081: gcc -E conftest.c | configure:8081: $? = 0 | configure:8095: gcc -E conftest.c | conftest.c:11:10: fatal error: 'ac_nonexistent.h' file not found | #include | ^~~~~~~~~~~~~~~~~~ | 1 error generated. | configure:8095: $? = 1 | configure: failed program was: | | /* confdefs.h */ | | #define PACKAGE_NAME "bes" | | #define PACKAGE_TARNAME "bes" | | #define PACKAGE_VERSION "3.19.1" | | #define PACKAGE_STRING "bes 3.19.1" | | #define PACKAGE_BUGREPORT "support@opendap.org" | | #define PACKAGE_URL "" | | #define PACKAGE "bes" | | #define VERSION "3.19.1" | | /* end confdefs.h. */ | | #include | configure:8120: result: gcc -E | configure:8140: gcc -E conftest.c | configure:8140: $? = 0 | configure:8154: gcc -E conftest.c | conftest.c:11:10: fatal error: 'ac_nonexistent.h' file not found | #include | ^~~~~~~~~~~~~~~~~~ | 1 error generated. | configure:8154: $? = 1 | configure: failed program was: | | /* confdefs.h */ | | #define PACKAGE_NAME "bes" | | #define PACKAGE_TARNAME "bes" | | #define PACKAGE_VERSION "3.19.1" | | #define PACKAGE_STRING "bes 3.19.1" | | #define PACKAGE_BUGREPORT "support@opendap.org" | | #define PACKAGE_URL "" | | #define PACKAGE "bes" | | #define VERSION "3.19.1" | | /* end confdefs.h. */ | | #include | configure:8183: checking for ANSI C header files | configure:8203: gcc -c -g -O2 conftest.c >&5 | configure:8203: $? = 0 | configure:8276: gcc -o conftest -g -O2 conftest.c >&5 | configure:8276: $? = 0 | configure:8276: ./conftest | configure:8276: $? = 0 | configure:8287: result: yes | configure:8300: checking for sys/types.h | configure:8300: gcc -c -g -O2 conftest.c >&5 | configure:8300: $? = 0 | configure:8300: result: yes | configure:8300: checking for sys/stat.h | configure:8300: gcc -c -g -O2 conftest.c >&5 | configure:8300: $? = 0 | configure:8300: result: yes | configure:8300: checking for stdlib.h | configure:8300: gcc -c -g -O2 conftest.c >&5 | configure:8300: $? = 0 | configure:8300: result: yes | configure:8300: checking for string.h | configure:8300: gcc -c -g -O2 conftest.c >&5 | configure:8300: $? = 0 | configure:8300: result: yes | configure:8300: checking for memory.h | configure:8300: gcc -c -g -O2 conftest.c >&5 | configure:8300: $? = 0 | configure:8300: result: yes | configure:8300: checking for strings.h | configure:8300: gcc -c -g -O2 conftest.c >&5 | configure:8300: $? = 0 | configure:8300: result: yes | configure:8300: checking for inttypes.h | configure:8300: gcc -c -g -O2 conftest.c >&5 | configure:8300: $? = 0 | configure:8300: result: yes | configure:8300: checking for stdint.h | configure:8300: gcc -c -g -O2 conftest.c >&5 | configure:8300: $? = 0 | configure:8300: result: yes | configure:8300: checking for unistd.h | configure:8300: gcc -c -g -O2 conftest.c >&5 | configure:8300: $? = 0 | configure:8300: result: yes | configure:8314: checking for dlfcn.h | configure:8314: gcc -c -g -O2 conftest.c >&5 | configure:8314: $? = 0 | configure:8314: result: yes | configure:8570: checking for objdir | configure:8585: result: .libs | configure:8849: checking if gcc supports -fno-rtti -fno-exceptions | configure:8867: gcc -c -g -O2 -fno-rtti -fno-exceptions conftest.c >&5 | configure:8871: $? = 0 | configure:8884: result: yes | configure:9242: checking for gcc option to produce PIC | configure:9249: result: -fno-common -DPIC | configure:9257: checking if gcc PIC flag -fno-common -DPIC works | configure:9275: gcc -c -g -O2 -fno-common -DPIC -DPIC conftest.c >&5 | configure:9279: $? = 0 | configure:9292: result: yes | configure:9321: checking if gcc static flag -static works | configure:9349: result: no | configure:9364: checking if gcc supports -c -o file.o | configure:9385: gcc -c -g -O2 -o out/conftest2.o conftest.c >&5 | configure:9389: $? = 0 | configure:9411: result: yes | configure:9419: checking if gcc supports -c -o file.o | configure:9466: result: yes | configure:9499: checking whether the gcc linker (/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ld) supports shared libraries | configure:10758: result: yes | configure:10998: checking dynamic linker characteristics | configure:11816: result: darwin17.7.0 dyld | configure:11938: checking how to hardcode library paths into programs | configure:11963: result: immediate | configure:12511: checking whether stripping libraries is possible | configure:12525: result: yes | configure:12551: checking if libtool supports shared libraries | configure:12553: result: yes | configure:12556: checking whether to build shared libraries | configure:12581: result: yes | configure:12584: checking whether to build static libraries | configure:12588: result: yes | configure:12711: checking for pthread_kill in -lpthread | configure:12736: gcc -o conftest -g -O2 conftest.c -lpthread >&5 | configure:12736: $? = 0 | configure:12745: result: yes | configure:12811: checking for gcc | configure:12838: result: gcc | configure:13067: checking for C compiler version | configure:13076: gcc --version >&5 | Apple LLVM version 9.1.0 (clang-902.0.39.2) | Target: x86_64-apple-darwin17.7.0 | Thread model: posix | InstalledDir: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin | Configured with: --prefix=/Applications/Xcode.app/Contents/Developer/usr --with-gxx-include-dir=/usr/include/c++/4.2.1 | configure:13087: $? = 0 | configure:13076: gcc -v >&5 | Configured with: --prefix=/Applications/Xcode.app/Contents/Developer/usr --with-gxx-include-dir=/usr/include/c++/4.2.1 | Apple LLVM version 9.1.0 (clang-902.0.39.2) | Target: x86_64-apple-darwin17.7.0 | Thread model: posix | InstalledDir: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin | configure:13087: $? = 0 | configure:13076: gcc -V >&5 | clang: error: argument to '-V' is missing (expected 1 value) | clang: error: no input files | configure:13087: $? = 1 | configure:13076: gcc -qversion >&5 | clang: error: unknown argument: '-qversion' | clang: error: no input files | configure:13087: $? = 1 | configure:13091: checking whether we are using the GNU C compiler | configure:13119: result: yes | configure:13128: checking whether gcc accepts -g | configure:13189: result: yes | configure:13206: checking for gcc option to accept ISO C89 | configure:13282: result: none needed | configure:13307: checking whether gcc understands -c and -o together | configure:13344: result: yes | configure:13363: checking dependency style of gcc | configure:13474: result: gcc3 | configure:13547: checking for g++ | configure:13563: found /usr/bin/g++ | configure:13574: result: g++ | configure:13601: checking for C++ compiler version | configure:13610: g++ --version >&5 | Apple LLVM version 9.1.0 (clang-902.0.39.2) | Target: x86_64-apple-darwin17.7.0 | Thread model: posix | InstalledDir: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin | Configured with: --prefix=/Applications/Xcode.app/Contents/Developer/usr --with-gxx-include-dir=/usr/include/c++/4.2.1 | configure:13621: $? = 0 | configure:13610: g++ -v >&5 | Configured with: --prefix=/Applications/Xcode.app/Contents/Developer/usr --with-gxx-include-dir=/usr/include/c++/4.2.1 | Apple LLVM version 9.1.0 (clang-902.0.39.2) | Target: x86_64-apple-darwin17.7.0 | Thread model: posix | InstalledDir: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin | configure:13621: $? = 0 | configure:13610: g++ -V >&5 | clang: error: argument to '-V' is missing (expected 1 value) | clang: error: no input files | configure:13621: $? = 1 | configure:13610: g++ -qversion >&5 | clang: error: unknown argument: '-qversion' | clang: error: no input files | configure:13621: $? = 1 | configure:13625: checking whether we are using the GNU C++ compiler | configure:13644: g++ -c -g3 -O0 -Wall -W -Wcast-align -fsanitize=address -fno-omit-frame-pointer conftest.cpp >&5 | configure:13644: $? = 0 | configure:13653: result: yes | configure:13662: checking whether g++ accepts -g | configure:13682: g++ -c -g conftest.cpp >&5 | configure:13682: $? = 0 | configure:13723: result: yes | configure:13748: checking dependency style of g++ | configure:13859: result: gcc3 | configure:13892: checking how to run the C++ preprocessor | configure:13919: g++ -E conftest.cpp | configure:13919: $? = 0 | configure:13933: g++ -E conftest.cpp | conftest.cpp:25:10: fatal error: 'ac_nonexistent.h' file not found | #include | ^~~~~~~~~~~~~~~~~~ | 1 error generated. | configure:13933: $? = 1 | configure: failed program was: | | /* confdefs.h */ | | #define PACKAGE_NAME "bes" | | #define PACKAGE_TARNAME "bes" | | #define PACKAGE_VERSION "3.19.1" | | #define PACKAGE_STRING "bes 3.19.1" | | #define PACKAGE_BUGREPORT "support@opendap.org" | | #define PACKAGE_URL "" | | #define PACKAGE "bes" | | #define VERSION "3.19.1" | | #define STDC_HEADERS 1 | | #define HAVE_SYS_TYPES_H 1 | | #define HAVE_SYS_STAT_H 1 | | #define HAVE_STDLIB_H 1 | | #define HAVE_STRING_H 1 | | #define HAVE_MEMORY_H 1 | | #define HAVE_STRINGS_H 1 | | #define HAVE_INTTYPES_H 1 | | #define HAVE_STDINT_H 1 | | #define HAVE_UNISTD_H 1 | | #define HAVE_DLFCN_H 1 | | #define LT_OBJDIR ".libs/" | | #define DAPREADER_PACKAGE "dapreader_module" | | #define DAPREADER_VERSION "0.0.1" | | /* end confdefs.h. */ | | #include | configure:13958: result: g++ -E | configure:13978: g++ -E conftest.cpp | configure:13978: $? = 0 | configure:13992: g++ -E conftest.cpp | conftest.cpp:25:10: fatal error: 'ac_nonexistent.h' file not found | #include | ^~~~~~~~~~~~~~~~~~ | 1 error generated. | configure:13992: $? = 1 | configure: failed program was: | | /* confdefs.h */ | | #define PACKAGE_NAME "bes" | | #define PACKAGE_TARNAME "bes" | | #define PACKAGE_VERSION "3.19.1" | | #define PACKAGE_STRING "bes 3.19.1" | | #define PACKAGE_BUGREPORT "support@opendap.org" | | #define PACKAGE_URL "" | | #define PACKAGE "bes" | | #define VERSION "3.19.1" | | #define STDC_HEADERS 1 | | #define HAVE_SYS_TYPES_H 1 | | #define HAVE_SYS_STAT_H 1 | | #define HAVE_STDLIB_H 1 | | #define HAVE_STRING_H 1 | | #define HAVE_MEMORY_H 1 | | #define HAVE_STRINGS_H 1 | | #define HAVE_INTTYPES_H 1 | | #define HAVE_STDINT_H 1 | | #define HAVE_UNISTD_H 1 | | #define HAVE_DLFCN_H 1 | | #define LT_OBJDIR ".libs/" | | #define DAPREADER_PACKAGE "dapreader_module" | | #define DAPREADER_VERSION "0.0.1" | | /* end confdefs.h. */ | | #include | configure:14154: checking for ld used by g++ | configure:14221: result: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ld | configure:14228: checking if the linker (/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ld) is GNU ld | configure:14243: result: no | configure:14298: checking whether the g++ linker (/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ld) supports shared libraries | configure:15371: result: yes | configure:15407: g++ -c -g3 -O0 -Wall -W -Wcast-align -fsanitize=address -fno-omit-frame-pointer conftest.cpp >&5 | configure:15410: $? = 0 | configure:15891: checking for g++ option to produce PIC | configure:15898: result: -fno-common -DPIC | configure:15906: checking if g++ PIC flag -fno-common -DPIC works | configure:15924: g++ -c -g3 -O0 -Wall -W -Wcast-align -fsanitize=address -fno-omit-frame-pointer -fno-common -DPIC -DPIC conftest.cpp >&5 | configure:15928: $? = 0 | configure:15941: result: yes | configure:15964: checking if g++ static flag -static works | configure:15992: result: no | configure:16004: checking if g++ supports -c -o file.o | configure:16025: g++ -c -g3 -O0 -Wall -W -Wcast-align -fsanitize=address -fno-omit-frame-pointer -o out/conftest2.o conftest.cpp >&5 | configure:16029: $? = 0 | configure:16051: result: yes | configure:16056: checking if g++ supports -c -o file.o | configure:16103: result: yes | configure:16133: checking whether the g++ linker (/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ld) supports shared libraries | configure:16173: result: yes | configure:16314: checking dynamic linker characteristics | configure:17059: result: darwin17.7.0 dyld | configure:17124: checking how to hardcode library paths into programs | configure:17149: result: immediate | configure:17189: checking whether make sets $(MAKE) | configure:17211: result: yes | configure:17225: checking for flex | configure:17241: found /usr/bin/flex | configure:17252: result: flex | configure:17290: flex conftest.l | configure:17294: $? = 0 | configure:17296: checking lex output file root | configure:17310: result: lex.yy | configure:17315: checking lex library | configure:17329: gcc -o conftest -g -O2 conftest.c >&5 | Undefined symbols for architecture x86_64: | "_yywrap", referenced from: | _yylex in conftest-1b3eae.o | _main in conftest-1b3eae.o | ld: symbol(s) not found for architecture x86_64 | clang: error: linker command failed with exit code 1 (use -v to see invocation) | configure:17329: $? = 1 | configure: failed program was: | | /* confdefs.h */ | | #define PACKAGE_NAME "bes" | | #define PACKAGE_TARNAME "bes" | | #define PACKAGE_VERSION "3.19.1" | | #define PACKAGE_STRING "bes 3.19.1" | | #define PACKAGE_BUGREPORT "support@opendap.org" | | #define PACKAGE_URL "" | | #define PACKAGE "bes" | | #define VERSION "3.19.1" | | #define STDC_HEADERS 1 | | #define HAVE_SYS_TYPES_H 1 | | #define HAVE_SYS_STAT_H 1 | | #define HAVE_STDLIB_H 1 | | #define HAVE_STRING_H 1 | | #define HAVE_MEMORY_H 1 | | #define HAVE_STRINGS_H 1 | | #define HAVE_INTTYPES_H 1 | | #define HAVE_STDINT_H 1 | | #define HAVE_UNISTD_H 1 | | #define HAVE_DLFCN_H 1 | | #define LT_OBJDIR ".libs/" | | #define DAPREADER_PACKAGE "dapreader_module" | | #define DAPREADER_VERSION "0.0.1" | | /* end confdefs.h. */ | | | | #line 3 "lex.yy.c" | | | | #define YY_INT_ALIGNED short int | | | | /* A lexical scanner generated by flex */ | | | | #define FLEX_SCANNER | | #define YY_FLEX_MAJOR_VERSION 2 | | #define YY_FLEX_MINOR_VERSION 5 | | #define YY_FLEX_SUBMINOR_VERSION 35 | | #if YY_FLEX_SUBMINOR_VERSION > 0 | | #define FLEX_BETA | | #endif | | | | /* First, we deal with platform-specific or compiler-specific issues. */ | | | | /* begin standard C headers. */ | | #include | | #include | | #include | | #include | | | | /* end standard C headers. */ | | | | /* flex integer type definitions */ | | | | #ifndef FLEXINT_H | | #define FLEXINT_H | | | | /* C99 systems have . Non-C99 systems may or may not. */ | | | | #if defined (__STDC_VERSION__) && __STDC_VERSION__ >= 199901L | | | | /* C99 says to define __STDC_LIMIT_MACROS before including stdint.h, | | * if you want the limit (max/min) macros for int types. | | */ | | #ifndef __STDC_LIMIT_MACROS | | #define __STDC_LIMIT_MACROS 1 | | #endif | | | | #include | | typedef int8_t flex_int8_t; | | typedef uint8_t flex_uint8_t; | | typedef int16_t flex_int16_t; | | typedef uint16_t flex_uint16_t; | | typedef int32_t flex_int32_t; | | typedef uint32_t flex_uint32_t; | | typedef uint64_t flex_uint64_t; | | #else | | typedef signed char flex_int8_t; | | typedef short int flex_int16_t; | | typedef int flex_int32_t; | | typedef unsigned char flex_uint8_t; | | typedef unsigned short int flex_uint16_t; | | typedef unsigned int flex_uint32_t; | | #endif /* ! C99 */ | | | | /* Limits of integral types. */ | | #ifndef INT8_MIN | | #define INT8_MIN (-128) | | #endif | | #ifndef INT16_MIN | | #define INT16_MIN (-32767-1) | | #endif | | #ifndef INT32_MIN | | #define INT32_MIN (-2147483647-1) | | #endif | | #ifndef INT8_MAX | | #define INT8_MAX (127) | | #endif | | #ifndef INT16_MAX | | #define INT16_MAX (32767) | | #endif | | #ifndef INT32_MAX | | #define INT32_MAX (2147483647) | | #endif | | #ifndef UINT8_MAX | | #define UINT8_MAX (255U) | | #endif | | #ifndef UINT16_MAX | | #define UINT16_MAX (65535U) | | #endif | | #ifndef UINT32_MAX | | #define UINT32_MAX (4294967295U) | | #endif | | | | #endif /* ! FLEXINT_H */ | | | | #ifdef __cplusplus | | | | /* The "const" storage-class-modifier is valid. */ | | #define YY_USE_CONST | | | | #else /* ! __cplusplus */ | | | | /* C99 requires __STDC__ to be defined as 1. */ | | #if defined (__STDC__) | | | | #define YY_USE_CONST | | | | #endif /* defined (__STDC__) */ | | #endif /* ! __cplusplus */ | | | | #ifdef YY_USE_CONST | | #define yyconst const | | #else | | #define yyconst | | #endif | | | | /* Returned upon end-of-file. */ | | #define YY_NULL 0 | | | | /* Promotes a possibly negative, possibly signed char to an unsigned | | * integer for use as an array index. If the signed char is negative, | | * we want to instead treat it as an 8-bit unsigned char, hence the | | * double cast. | | */ | | #define YY_SC_TO_UI(c) ((unsigned int) (unsigned char) c) | | | | /* Enter a start condition. This macro really ought to take a parameter, | | * but we do it the disgusting crufty way forced on us by the ()-less | | * definition of BEGIN. | | */ | | #define BEGIN (yy_start) = 1 + 2 * | | | | /* Translate the current start state into a value that can be later handed | | * to BEGIN to return to the state. The YYSTATE alias is for lex | | * compatibility. | | */ | | #define YY_START (((yy_start) - 1) / 2) | | #define YYSTATE YY_START | | | | /* Action number for EOF rule of a given start state. */ | | #define YY_STATE_EOF(state) (YY_END_OF_BUFFER + state + 1) | | | | /* Special action meaning "start processing a new file". */ | | #define YY_NEW_FILE yyrestart(yyin ) | | | | #define YY_END_OF_BUFFER_CHAR 0 | | | | /* Size of default input buffer. */ | | #ifndef YY_BUF_SIZE | | #define YY_BUF_SIZE 16384 | | #endif | | | | /* The state buf must be large enough to hold one state per character in the main buffer. | | */ | | #define YY_STATE_BUF_SIZE ((YY_BUF_SIZE + 2) * sizeof(yy_state_type)) | | | | #ifndef YY_TYPEDEF_YY_BUFFER_STATE | | #define YY_TYPEDEF_YY_BUFFER_STATE | | typedef struct yy_buffer_state *YY_BUFFER_STATE; | | #endif | | | | #ifndef YY_TYPEDEF_YY_SIZE_T | | #define YY_TYPEDEF_YY_SIZE_T | | typedef size_t yy_size_t; | | #endif | | | | extern yy_size_t yyleng; | | | | extern FILE *yyin, *yyout; | | | | #define EOB_ACT_CONTINUE_SCAN 0 | | #define EOB_ACT_END_OF_FILE 1 | | #define EOB_ACT_LAST_MATCH 2 | | | | #define YY_LESS_LINENO(n) | | | | /* Return all but the first "n" matched characters back to the input stream. */ | | #define yyless(n) \ | | do \ | | { \ | | /* Undo effects of setting up yytext. */ \ | | int yyless_macro_arg = (n); \ | | YY_LESS_LINENO(yyless_macro_arg);\ | | *yy_cp = (yy_hold_char); \ | | YY_RESTORE_YY_MORE_OFFSET \ | | (yy_c_buf_p) = yy_cp = yy_bp + yyless_macro_arg - YY_MORE_ADJ; \ | | YY_DO_BEFORE_ACTION; /* set up yytext again */ \ | | } \ | | while ( 0 ) | | | | #define unput(c) yyunput( c, (yytext_ptr) ) | | | | #ifndef YY_STRUCT_YY_BUFFER_STATE | | #define YY_STRUCT_YY_BUFFER_STATE | | struct yy_buffer_state | | { | | FILE *yy_input_file; | | | | char *yy_ch_buf; /* input buffer */ | | char *yy_buf_pos; /* current position in input buffer */ | | | | /* Size of input buffer in bytes, not including room for EOB | | * characters. | | */ | | yy_size_t yy_buf_size; | | | | /* Number of characters read into yy_ch_buf, not including EOB | | * characters. | | */ | | yy_size_t yy_n_chars; | | | | /* Whether we "own" the buffer - i.e., we know we created it, | | * and can realloc() it to grow it, and should free() it to | | * delete it. | | */ | | int yy_is_our_buffer; | | | | /* Whether this is an "interactive" input source; if so, and | | * if we're using stdio for input, then we want to use getc() | | * instead of fread(), to make sure we stop fetching input after | | * each newline. | | */ | | int yy_is_interactive; | | | | /* Whether we're considered to be at the beginning of a line. | | * If so, '^' rules will be active on the next match, otherwise | | * not. | | */ | | int yy_at_bol; | | | | int yy_bs_lineno; /**< The line count. */ | | int yy_bs_column; /**< The column count. */ | | | | /* Whether to try to fill the input buffer when we reach the | | * end of it. | | */ | | int yy_fill_buffer; | | | | int yy_buffer_status; | | | | #define YY_BUFFER_NEW 0 | | #define YY_BUFFER_NORMAL 1 | | /* When an EOF's been seen but there's still some text to process | | * then we mark the buffer as YY_EOF_PENDING, to indicate that we | | * shouldn't try reading from the input source any more. We might | | * still have a bunch of tokens to match, though, because of | | * possible backing-up. | | * | | * When we actually see the EOF, we change the status to "new" | | * (via yyrestart()), so that the user can continue scanning by | | * just pointing yyin at a new input file. | | */ | | #define YY_BUFFER_EOF_PENDING 2 | | | | }; | | #endif /* !YY_STRUCT_YY_BUFFER_STATE */ | | | | /* Stack of input buffers. */ | | static size_t yy_buffer_stack_top = 0; /**< index of top of stack. */ | | static size_t yy_buffer_stack_max = 0; /**< capacity of stack. */ | | static YY_BUFFER_STATE * yy_buffer_stack = 0; /**< Stack as an array. */ | | | | /* We provide macros for accessing buffer states in case in the | | * future we want to put the buffer states in a more general | | * "scanner state". | | * | | * Returns the top of the stack, or NULL. | | */ | | #define YY_CURRENT_BUFFER ( (yy_buffer_stack) \ | | ? (yy_buffer_stack)[(yy_buffer_stack_top)] \ | | : NULL) | | | | /* Same as previous macro, but useful when we know that the buffer stack is not | | * NULL or when we need an lvalue. For internal use only. | | */ | | #define YY_CURRENT_BUFFER_LVALUE (yy_buffer_stack)[(yy_buffer_stack_top)] | | | | /* yy_hold_char holds the character lost when yytext is formed. */ | | static char yy_hold_char; | | static yy_size_t yy_n_chars; /* number of characters read into yy_ch_buf */ | | yy_size_t yyleng; | | | | /* Points to current character in buffer. */ | | static char *yy_c_buf_p = (char *) 0; | | static int yy_init = 0; /* whether we need to initialize */ | | static int yy_start = 0; /* start state number */ | | | | /* Flag which is used to allow yywrap()'s to do buffer switches | | * instead of setting up a fresh yyin. A bit of a hack ... | | */ | | static int yy_did_buffer_switch_on_eof; | | | | void yyrestart (FILE *input_file ); | | void yy_switch_to_buffer (YY_BUFFER_STATE new_buffer ); | | YY_BUFFER_STATE yy_create_buffer (FILE *file,int size ); | | void yy_delete_buffer (YY_BUFFER_STATE b ); | | void yy_flush_buffer (YY_BUFFER_STATE b ); | | void yypush_buffer_state (YY_BUFFER_STATE new_buffer ); | | void yypop_buffer_state (void ); | | | | static void yyensure_buffer_stack (void ); | | static void yy_load_buffer_state (void ); | | static void yy_init_buffer (YY_BUFFER_STATE b,FILE *file ); | | | | #define YY_FLUSH_BUFFER yy_flush_buffer(YY_CURRENT_BUFFER ) | | | | YY_BUFFER_STATE yy_scan_buffer (char *base,yy_size_t size ); | | YY_BUFFER_STATE yy_scan_string (yyconst char *yy_str ); | | YY_BUFFER_STATE yy_scan_bytes (yyconst char *bytes,yy_size_t len ); | | | | void *yyalloc (yy_size_t ); | | void *yyrealloc (void *,yy_size_t ); | | void yyfree (void * ); | | | | #define yy_new_buffer yy_create_buffer | | | | #define yy_set_interactive(is_interactive) \ | | { \ | | if ( ! YY_CURRENT_BUFFER ){ \ | | yyensure_buffer_stack (); \ | | YY_CURRENT_BUFFER_LVALUE = \ | | yy_create_buffer(yyin,YY_BUF_SIZE ); \ | | } \ | | YY_CURRENT_BUFFER_LVALUE->yy_is_interactive = is_interactive; \ | | } | | | | #define yy_set_bol(at_bol) \ | | { \ | | if ( ! YY_CURRENT_BUFFER ){\ | | yyensure_buffer_stack (); \ | | YY_CURRENT_BUFFER_LVALUE = \ | | yy_create_buffer(yyin,YY_BUF_SIZE ); \ | | } \ | | YY_CURRENT_BUFFER_LVALUE->yy_at_bol = at_bol; \ | | } | | | | #define YY_AT_BOL() (YY_CURRENT_BUFFER_LVALUE->yy_at_bol) | | | | /* Begin user sect3 */ | | | | typedef unsigned char YY_CHAR; | | | | FILE *yyin = (FILE *) 0, *yyout = (FILE *) 0; | | | | typedef int yy_state_type; | | | | extern int yylineno; | | | | int yylineno = 1; | | | | extern char *yytext; | | #define yytext_ptr yytext | | | | static yy_state_type yy_get_previous_state (void ); | | static yy_state_type yy_try_NUL_trans (yy_state_type current_state ); | | static int yy_get_next_buffer (void ); | | static void yy_fatal_error (yyconst char msg[] ); | | | | /* Done after the current pattern has been matched and before the | | * corresponding action - sets up yytext. | | */ | | #define YY_DO_BEFORE_ACTION \ | | (yytext_ptr) = yy_bp; \ | | (yytext_ptr) -= (yy_more_len); \ | | yyleng = (yy_size_t) (yy_cp - (yytext_ptr)); \ | | (yy_hold_char) = *yy_cp; \ | | *yy_cp = '\0'; \ | | (yy_c_buf_p) = yy_cp; | | | | #define YY_NUM_RULES 8 | | #define YY_END_OF_BUFFER 9 | | /* This struct is not used in this scanner, | | but its presence is necessary. */ | | struct yy_trans_info | | { | | flex_int32_t yy_verify; | | flex_int32_t yy_nxt; | | }; | | static yyconst flex_int16_t yy_acclist[23] = | | { 0, | | 9, 7, 8, 8, 1, 7, 8, 2, 7, 8, | | 3, 7, 8, 4, 7, 8, 5, 7, 8, 6, | | 7, 8 | | } ; | | | | static yyconst flex_int16_t yy_accept[14] = | | { 0, | | 1, 1, 1, 2, 4, 5, 8, 11, 14, 17, | | 20, 23, 23 | | } ; | | | | static yyconst flex_int32_t yy_ec[256] = | | { 0, | | 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, | | 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, | | 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, | | 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, | | 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, | | 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, | | 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, | | 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, | | 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, | | 1, 1, 1, 1, 1, 1, 3, 4, 5, 6, | | | | 7, 8, 1, 1, 1, 1, 1, 1, 1, 1, | | 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, | | 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, | | 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, | | 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, | | 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, | | 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, | | 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, | | 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, | | 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, | | | | 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, | | 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, | | 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, | | 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, | | 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, | | 1, 1, 1, 1, 1 | | } ; | | | | static yyconst flex_int32_t yy_meta[9] = | | { 0, | | 1, 1, 1, 1, 1, 1, 1, 1 | | } ; | | | | static yyconst flex_int16_t yy_base[13] = | | { 0, | | 0, 0, 9, 10, 10, 10, 10, 10, 10, 10, | | 10, 10 | | } ; | | | | static yyconst flex_int16_t yy_def[13] = | | { 0, | | 12, 1, 12, 12, 12, 12, 12, 12, 12, 12, | | 12, 0 | | } ; | | | | static yyconst flex_int16_t yy_nxt[19] = | | { 0, | | 4, 5, 6, 7, 8, 9, 10, 11, 12, 3, | | 12, 12, 12, 12, 12, 12, 12, 12 | | } ; | | | | static yyconst flex_int16_t yy_chk[19] = | | { 0, | | 1, 1, 1, 1, 1, 1, 1, 1, 3, 12, | | 12, 12, 12, 12, 12, 12, 12, 12 | | } ; | | | | extern int yy_flex_debug; | | int yy_flex_debug = 0; | | | | static yy_state_type *yy_state_buf=0, *yy_state_ptr=0; | | static char *yy_full_match; | | static int yy_lp; | | #define REJECT \ | | { \ | | *yy_cp = (yy_hold_char); /* undo effects of setting up yytext */ \ | | yy_cp = (yy_full_match); /* restore poss. backed-over text */ \ | | ++(yy_lp); \ | | goto find_rule; \ | | } | | | | static int yy_more_flag = 0; | | static int yy_more_len = 0; | | #define yymore() ((yy_more_flag) = 1) | | #define YY_MORE_ADJ (yy_more_len) | | #define YY_RESTORE_YY_MORE_OFFSET | | char *yytext; | | #line 1 "conftest.l" | | #line 469 "lex.yy.c" | | | | #define INITIAL 0 | | | | #ifndef YY_NO_UNISTD_H | | /* Special case for "unistd.h", since it is non-ANSI. We include it way | | * down here because we want the user's section 1 to have been scanned first. | | * The user has a chance to override it with an option. | | */ | | #include | | #endif | | | | #ifndef YY_EXTRA_TYPE | | #define YY_EXTRA_TYPE void * | | #endif | | | | static int yy_init_globals (void ); | | | | /* Accessor methods to globals. | | These are made visible to non-reentrant scanners for convenience. */ | | | | int yylex_destroy (void ); | | | | int yyget_debug (void ); | | | | void yyset_debug (int debug_flag ); | | | | YY_EXTRA_TYPE yyget_extra (void ); | | | | void yyset_extra (YY_EXTRA_TYPE user_defined ); | | | | FILE *yyget_in (void ); | | | | void yyset_in (FILE * in_str ); | | | | FILE *yyget_out (void ); | | | | void yyset_out (FILE * out_str ); | | | | yy_size_t yyget_leng (void ); | | | | char *yyget_text (void ); | | | | int yyget_lineno (void ); | | | | void yyset_lineno (int line_number ); | | | | /* Macros after this point can all be overridden by user definitions in | | * section 1. | | */ | | | | #ifndef YY_SKIP_YYWRAP | | #ifdef __cplusplus | | extern "C" int yywrap (void ); | | #else | | extern int yywrap (void ); | | #endif | | #endif | | | | static void yyunput (int c,char *buf_ptr ); | | | | #ifndef yytext_ptr | | static void yy_flex_strncpy (char *,yyconst char *,int ); | | #endif | | | | #ifdef YY_NEED_STRLEN | | static int yy_flex_strlen (yyconst char * ); | | #endif | | | | #ifndef YY_NO_INPUT | | | | #ifdef __cplusplus | | static int yyinput (void ); | | #else | | static int input (void ); | | #endif | | | | #endif | | | | /* Amount of stuff to slurp up with each read. */ | | #ifndef YY_READ_BUF_SIZE | | #define YY_READ_BUF_SIZE 8192 | | #endif | | | | /* Copy whatever the last rule matched to the standard output. */ | | #ifndef ECHO | | /* This used to be an fputs(), but since the string might contain NUL's, | | * we now use fwrite(). | | */ | | #define ECHO fwrite( yytext, yyleng, 1, yyout ) | | #endif | | | | /* Gets input and stuffs it into "buf". number of characters read, or YY_NULL, | | * is returned in "result". | | */ | | #ifndef YY_INPUT | | #define YY_INPUT(buf,result,max_size) \ | | if ( YY_CURRENT_BUFFER_LVALUE->yy_is_interactive ) \ | | { \ | | int c = '*'; \ | | yy_size_t n; \ | | for ( n = 0; n < max_size && \ | | (c = getc( yyin )) != EOF && c != '\n'; ++n ) \ | | buf[n] = (char) c; \ | | if ( c == '\n' ) \ | | buf[n++] = (char) c; \ | | if ( c == EOF && ferror( yyin ) ) \ | | YY_FATAL_ERROR( "input in flex scanner failed" ); \ | | result = n; \ | | } \ | | else \ | | { \ | | errno=0; \ | | while ( (result = fread(buf, 1, max_size, yyin))==0 && ferror(yyin)) \ | | { \ | | if( errno != EINTR) \ | | { \ | | YY_FATAL_ERROR( "input in flex scanner failed" ); \ | | break; \ | | } \ | | errno=0; \ | | clearerr(yyin); \ | | } \ | | }\ | | \ | | | | #endif | | | | /* No semi-colon after return; correct usage is to write "yyterminate();" - | | * we don't want an extra ';' after the "return" because that will cause | | * some compilers to complain about unreachable statements. | | */ | | #ifndef yyterminate | | #define yyterminate() return YY_NULL | | #endif | | | | /* Number of entries by which start-condition stack grows. */ | | #ifndef YY_START_STACK_INCR | | #define YY_START_STACK_INCR 25 | | #endif | | | | /* Report a fatal error. */ | | #ifndef YY_FATAL_ERROR | | #define YY_FATAL_ERROR(msg) yy_fatal_error( msg ) | | #endif | | | | /* end tables serialization structures and prototypes */ | | | | /* Default declaration of generated scanner - a define so the user can | | * easily add parameters. | | */ | | #ifndef YY_DECL | | #define YY_DECL_IS_OURS 1 | | | | extern int yylex (void); | | | | #define YY_DECL int yylex (void) | | #endif /* !YY_DECL */ | | | | /* Code executed at the beginning of each rule, after yytext and yyleng | | * have been set up. | | */ | | #ifndef YY_USER_ACTION | | #define YY_USER_ACTION | | #endif | | | | /* Code executed at the end of each rule. */ | | #ifndef YY_BREAK | | #define YY_BREAK break; | | #endif | | | | #define YY_RULE_SETUP \ | | YY_USER_ACTION | | | | /** The main scanner function which does all the work. | | */ | | YY_DECL | | { | | register yy_state_type yy_current_state; | | register char *yy_cp, *yy_bp; | | register int yy_act; | | | | #line 1 "conftest.l" | | | | #line 653 "lex.yy.c" | | | | if ( !(yy_init) ) | | { | | (yy_init) = 1; | | | | #ifdef YY_USER_INIT | | YY_USER_INIT; | | #endif | | | | /* Create the reject buffer large enough to save one state per allowed character. */ | | if ( ! (yy_state_buf) ) | | (yy_state_buf) = (yy_state_type *)yyalloc(YY_STATE_BUF_SIZE ); | | if ( ! (yy_state_buf) ) | | YY_FATAL_ERROR( "out of dynamic memory in yylex()" ); | | | | if ( ! (yy_start) ) | | (yy_start) = 1; /* first start state */ | | | | if ( ! yyin ) | | yyin = stdin; | | | | if ( ! yyout ) | | yyout = stdout; | | | | if ( ! YY_CURRENT_BUFFER ) { | | yyensure_buffer_stack (); | | YY_CURRENT_BUFFER_LVALUE = | | yy_create_buffer(yyin,YY_BUF_SIZE ); | | } | | | | yy_load_buffer_state( ); | | } | | | | while ( 1 ) /* loops until end-of-file is reached */ | | { | | (yy_more_len) = 0; | | if ( (yy_more_flag) ) | | { | | (yy_more_len) = (yy_c_buf_p) - (yytext_ptr); | | (yy_more_flag) = 0; | | } | | yy_cp = (yy_c_buf_p); | | | | /* Support of yytext. */ | | *yy_cp = (yy_hold_char); | | | | /* yy_bp points to the position in yy_ch_buf of the start of | | * the current run. | | */ | | yy_bp = yy_cp; | | | | yy_current_state = (yy_start); | | | | (yy_state_ptr) = (yy_state_buf); | | *(yy_state_ptr)++ = yy_current_state; | | | | yy_match: | | do | | { | | register YY_CHAR yy_c = yy_ec[YY_SC_TO_UI(*yy_cp)]; | | while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state ) | | { | | yy_current_state = (int) yy_def[yy_current_state]; | | if ( yy_current_state >= 13 ) | | yy_c = yy_meta[(unsigned int) yy_c]; | | } | | yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c]; | | *(yy_state_ptr)++ = yy_current_state; | | ++yy_cp; | | } | | while ( yy_base[yy_current_state] != 10 ); | | | | yy_find_action: | | yy_current_state = *--(yy_state_ptr); | | (yy_lp) = yy_accept[yy_current_state]; | | goto find_rule; /* Shut up GCC warning -Wall */ | | find_rule: /* we branch to this label when backing up */ | | for ( ; ; ) /* until we find what rule we matched */ | | { | | if ( (yy_lp) && (yy_lp) < yy_accept[yy_current_state + 1] ) | | { | | yy_act = yy_acclist[(yy_lp)]; | | { | | (yy_full_match) = yy_cp; | | break; | | } | | } | | --yy_cp; | | yy_current_state = *--(yy_state_ptr); | | (yy_lp) = yy_accept[yy_current_state]; | | } | | | | YY_DO_BEFORE_ACTION; | | | | do_action: /* This label is used only to access EOF actions. */ | | | | switch ( yy_act ) | | { /* beginning of action switch */ | | case 1: | | YY_RULE_SETUP | | #line 2 "conftest.l" | | { ECHO; } | | YY_BREAK | | case 2: | | YY_RULE_SETUP | | #line 3 "conftest.l" | | { REJECT; } | | YY_BREAK | | case 3: | | YY_RULE_SETUP | | #line 4 "conftest.l" | | { yymore (); } | | YY_BREAK | | case 4: | | YY_RULE_SETUP | | #line 5 "conftest.l" | | { yyless (1); } | | YY_BREAK | | case 5: | | YY_RULE_SETUP | | #line 6 "conftest.l" | | { /* IRIX 6.5 flex 2.5.4 underquotes its yyless argument. */ | | yyless ((input () != 0)); } | | YY_BREAK | | case 6: | | YY_RULE_SETUP | | #line 8 "conftest.l" | | { unput (yytext[0]); } | | YY_BREAK | | case 7: | | YY_RULE_SETUP | | #line 9 "conftest.l" | | { BEGIN INITIAL; } | | YY_BREAK | | case 8: | | YY_RULE_SETUP | | #line 10 "conftest.l" | | ECHO; | | YY_BREAK | | #line 793 "lex.yy.c" | | case YY_STATE_EOF(INITIAL): | | yyterminate(); | | | | case YY_END_OF_BUFFER: | | { | | /* Amount of text matched not including the EOB char. */ | | int yy_amount_of_matched_text = (int) (yy_cp - (yytext_ptr)) - 1; | | | | /* Undo the effects of YY_DO_BEFORE_ACTION. */ | | *yy_cp = (yy_hold_char); | | YY_RESTORE_YY_MORE_OFFSET | | | | if ( YY_CURRENT_BUFFER_LVALUE->yy_buffer_status == YY_BUFFER_NEW ) | | { | | /* We're scanning a new file or input source. It's | | * possible that this happened because the user | | * just pointed yyin at a new source and called | | * yylex(). If so, then we have to assure | | * consistency between YY_CURRENT_BUFFER and our | | * globals. Here is the right place to do so, because | | * this is the first action (other than possibly a | | * back-up) that will match for the new input source. | | */ | | (yy_n_chars) = YY_CURRENT_BUFFER_LVALUE->yy_n_chars; | | YY_CURRENT_BUFFER_LVALUE->yy_input_file = yyin; | | YY_CURRENT_BUFFER_LVALUE->yy_buffer_status = YY_BUFFER_NORMAL; | | } | | | | /* Note that here we test for yy_c_buf_p "<=" to the position | | * of the first EOB in the buffer, since yy_c_buf_p will | | * already have been incremented past the NUL character | | * (since all states make transitions on EOB to the | | * end-of-buffer state). Contrast this with the test | | * in input(). | | */ | | if ( (yy_c_buf_p) <= &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars)] ) | | { /* This was really a NUL. */ | | yy_state_type yy_next_state; | | | | (yy_c_buf_p) = (yytext_ptr) + yy_amount_of_matched_text; | | | | yy_current_state = yy_get_previous_state( ); | | | | /* Okay, we're now positioned to make the NUL | | * transition. We couldn't have | | * yy_get_previous_state() go ahead and do it | | * for us because it doesn't know how to deal | | * with the possibility of jamming (and we don't | | * want to build jamming into it because then it | | * will run more slowly). | | */ | | | | yy_next_state = yy_try_NUL_trans( yy_current_state ); | | | | yy_bp = (yytext_ptr) + YY_MORE_ADJ; | | | | if ( yy_next_state ) | | { | | /* Consume the NUL. */ | | yy_cp = ++(yy_c_buf_p); | | yy_current_state = yy_next_state; | | goto yy_match; | | } | | | | else | | { | | yy_cp = (yy_c_buf_p); | | goto yy_find_action; | | } | | } | | | | else switch ( yy_get_next_buffer( ) ) | | { | | case EOB_ACT_END_OF_FILE: | | { | | (yy_did_buffer_switch_on_eof) = 0; | | | | if ( yywrap( ) ) | | { | | /* Note: because we've taken care in | | * yy_get_next_buffer() to have set up | | * yytext, we can now set up | | * yy_c_buf_p so that if some total | | * hoser (like flex itself) wants to | | * call the scanner after we return the | | * YY_NULL, it'll still work - another | | * YY_NULL will get returned. | | */ | | (yy_c_buf_p) = (yytext_ptr) + YY_MORE_ADJ; | | | | yy_act = YY_STATE_EOF(YY_START); | | goto do_action; | | } | | | | else | | { | | if ( ! (yy_did_buffer_switch_on_eof) ) | | YY_NEW_FILE; | | } | | break; | | } | | | | case EOB_ACT_CONTINUE_SCAN: | | (yy_c_buf_p) = | | (yytext_ptr) + yy_amount_of_matched_text; | | | | yy_current_state = yy_get_previous_state( ); | | | | yy_cp = (yy_c_buf_p); | | yy_bp = (yytext_ptr) + YY_MORE_ADJ; | | goto yy_match; | | | | case EOB_ACT_LAST_MATCH: | | (yy_c_buf_p) = | | &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars)]; | | | | yy_current_state = yy_get_previous_state( ); | | | | yy_cp = (yy_c_buf_p); | | yy_bp = (yytext_ptr) + YY_MORE_ADJ; | | goto yy_find_action; | | } | | break; | | } | | | | default: | | YY_FATAL_ERROR( | | "fatal flex scanner internal error--no action found" ); | | } /* end of action switch */ | | } /* end of scanning one token */ | | } /* end of yylex */ | | | | /* yy_get_next_buffer - try to read in a new buffer | | * | | * Returns a code representing an action: | | * EOB_ACT_LAST_MATCH - | | * EOB_ACT_CONTINUE_SCAN - continue scanning from current position | | * EOB_ACT_END_OF_FILE - end of file | | */ | | static int yy_get_next_buffer (void) | | { | | register char *dest = YY_CURRENT_BUFFER_LVALUE->yy_ch_buf; | | register char *source = (yytext_ptr); | | register int number_to_move, i; | | int ret_val; | | | | if ( (yy_c_buf_p) > &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars) + 1] ) | | YY_FATAL_ERROR( | | "fatal flex scanner internal error--end of buffer missed" ); | | | | if ( YY_CURRENT_BUFFER_LVALUE->yy_fill_buffer == 0 ) | | { /* Don't try to fill the buffer, so this is an EOF. */ | | if ( (yy_c_buf_p) - (yytext_ptr) - YY_MORE_ADJ == 1 ) | | { | | /* We matched a single character, the EOB, so | | * treat this as a final EOF. | | */ | | return EOB_ACT_END_OF_FILE; | | } | | | | else | | { | | /* We matched some text prior to the EOB, first | | * process it. | | */ | | return EOB_ACT_LAST_MATCH; | | } | | } | | | | /* Try to read more data. */ | | | | /* First move last chars to start of buffer. */ | | number_to_move = (int) ((yy_c_buf_p) - (yytext_ptr)) - 1; | | | | for ( i = 0; i < number_to_move; ++i ) | | *(dest++) = *(source++); | | | | if ( YY_CURRENT_BUFFER_LVALUE->yy_buffer_status == YY_BUFFER_EOF_PENDING ) | | /* don't do the read, it's not guaranteed to return an EOF, | | * just force an EOF | | */ | | YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars) = 0; | | | | else | | { | | yy_size_t num_to_read = | | YY_CURRENT_BUFFER_LVALUE->yy_buf_size - number_to_move - 1; | | | | while ( num_to_read <= 0 ) | | { /* Not enough room in the buffer - grow it. */ | | | | YY_FATAL_ERROR( | | "input buffer overflow, can't enlarge buffer because scanner uses REJECT" ); | | | | } | | | | if ( num_to_read > YY_READ_BUF_SIZE ) | | num_to_read = YY_READ_BUF_SIZE; | | | | /* Read in more data. */ | | YY_INPUT( (&YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[number_to_move]), | | (yy_n_chars), num_to_read ); | | | | YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars); | | } | | | | if ( (yy_n_chars) == 0 ) | | { | | if ( number_to_move == YY_MORE_ADJ ) | | { | | ret_val = EOB_ACT_END_OF_FILE; | | yyrestart(yyin ); | | } | | | | else | | { | | ret_val = EOB_ACT_LAST_MATCH; | | YY_CURRENT_BUFFER_LVALUE->yy_buffer_status = | | YY_BUFFER_EOF_PENDING; | | } | | } | | | | else | | ret_val = EOB_ACT_CONTINUE_SCAN; | | | | if ((yy_size_t) ((yy_n_chars) + number_to_move) > YY_CURRENT_BUFFER_LVALUE->yy_buf_size) { | | /* Extend the array by 50%, plus the number we really need. */ | | yy_size_t new_size = (yy_n_chars) + number_to_move + ((yy_n_chars) >> 1); | | YY_CURRENT_BUFFER_LVALUE->yy_ch_buf = (char *) yyrealloc((void *) YY_CURRENT_BUFFER_LVALUE->yy_ch_buf,new_size ); | | if ( ! YY_CURRENT_BUFFER_LVALUE->yy_ch_buf ) | | YY_FATAL_ERROR( "out of dynamic memory in yy_get_next_buffer()" ); | | } | | | | (yy_n_chars) += number_to_move; | | YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars)] = YY_END_OF_BUFFER_CHAR; | | YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars) + 1] = YY_END_OF_BUFFER_CHAR; | | | | (yytext_ptr) = &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[0]; | | | | return ret_val; | | } | | | | /* yy_get_previous_state - get the state just before the EOB char was reached */ | | | | static yy_state_type yy_get_previous_state (void) | | { | | register yy_state_type yy_current_state; | | register char *yy_cp; | | | | yy_current_state = (yy_start); | | | | (yy_state_ptr) = (yy_state_buf); | | *(yy_state_ptr)++ = yy_current_state; | | | | for ( yy_cp = (yytext_ptr) + YY_MORE_ADJ; yy_cp < (yy_c_buf_p); ++yy_cp ) | | { | | register YY_CHAR yy_c = (*yy_cp ? yy_ec[YY_SC_TO_UI(*yy_cp)] : 1); | | while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state ) | | { | | yy_current_state = (int) yy_def[yy_current_state]; | | if ( yy_current_state >= 13 ) | | yy_c = yy_meta[(unsigned int) yy_c]; | | } | | yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c]; | | *(yy_state_ptr)++ = yy_current_state; | | } | | | | return yy_current_state; | | } | | | | /* yy_try_NUL_trans - try to make a transition on the NUL character | | * | | * synopsis | | * next_state = yy_try_NUL_trans( current_state ); | | */ | | static yy_state_type yy_try_NUL_trans (yy_state_type yy_current_state ) | | { | | register int yy_is_jam; | | | | register YY_CHAR yy_c = 1; | | while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state ) | | { | | yy_current_state = (int) yy_def[yy_current_state]; | | if ( yy_current_state >= 13 ) | | yy_c = yy_meta[(unsigned int) yy_c]; | | } | | yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c]; | | yy_is_jam = (yy_current_state == 12); | | if ( ! yy_is_jam ) | | *(yy_state_ptr)++ = yy_current_state; | | | | return yy_is_jam ? 0 : yy_current_state; | | } | | | | static void yyunput (int c, register char * yy_bp ) | | { | | register char *yy_cp; | | | | yy_cp = (yy_c_buf_p); | | | | /* undo effects of setting up yytext */ | | *yy_cp = (yy_hold_char); | | | | if ( yy_cp < YY_CURRENT_BUFFER_LVALUE->yy_ch_buf + 2 ) | | { /* need to shift things up to make room */ | | /* +2 for EOB chars. */ | | register yy_size_t number_to_move = (yy_n_chars) + 2; | | register char *dest = &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[ | | YY_CURRENT_BUFFER_LVALUE->yy_buf_size + 2]; | | register char *source = | | &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[number_to_move]; | | | | while ( source > YY_CURRENT_BUFFER_LVALUE->yy_ch_buf ) | | *--dest = *--source; | | | | yy_cp += (int) (dest - source); | | yy_bp += (int) (dest - source); | | YY_CURRENT_BUFFER_LVALUE->yy_n_chars = | | (yy_n_chars) = YY_CURRENT_BUFFER_LVALUE->yy_buf_size; | | | | if ( yy_cp < YY_CURRENT_BUFFER_LVALUE->yy_ch_buf + 2 ) | | YY_FATAL_ERROR( "flex scanner push-back overflow" ); | | } | | | | *--yy_cp = (char) c; | | | | (yytext_ptr) = yy_bp; | | (yy_hold_char) = *yy_cp; | | (yy_c_buf_p) = yy_cp; | | } | | | | #ifndef YY_NO_INPUT | | #ifdef __cplusplus | | static int yyinput (void) | | #else | | static int input (void) | | #endif | | | | { | | int c; | | | | *(yy_c_buf_p) = (yy_hold_char); | | | | if ( *(yy_c_buf_p) == YY_END_OF_BUFFER_CHAR ) | | { | | /* yy_c_buf_p now points to the character we want to return. | | * If this occurs *before* the EOB characters, then it's a | | * valid NUL; if not, then we've hit the end of the buffer. | | */ | | if ( (yy_c_buf_p) < &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars)] ) | | /* This was really a NUL. */ | | *(yy_c_buf_p) = '\0'; | | | | else | | { /* need more input */ | | yy_size_t offset = (yy_c_buf_p) - (yytext_ptr); | | ++(yy_c_buf_p); | | | | switch ( yy_get_next_buffer( ) ) | | { | | case EOB_ACT_LAST_MATCH: | | /* This happens because yy_g_n_b() | | * sees that we've accumulated a | | * token and flags that we need to | | * try matching the token before | | * proceeding. But for input(), | | * there's no matching to consider. | | * So convert the EOB_ACT_LAST_MATCH | | * to EOB_ACT_END_OF_FILE. | | */ | | | | /* Reset buffer status. */ | | yyrestart(yyin ); | | | | /*FALLTHROUGH*/ | | | | case EOB_ACT_END_OF_FILE: | | { | | if ( yywrap( ) ) | | return 0; | | | | if ( ! (yy_did_buffer_switch_on_eof) ) | | YY_NEW_FILE; | | #ifdef __cplusplus | | return yyinput(); | | #else | | return input(); | | #endif | | } | | | | case EOB_ACT_CONTINUE_SCAN: | | (yy_c_buf_p) = (yytext_ptr) + offset; | | break; | | } | | } | | } | | | | c = *(unsigned char *) (yy_c_buf_p); /* cast for 8-bit char's */ | | *(yy_c_buf_p) = '\0'; /* preserve yytext */ | | (yy_hold_char) = *++(yy_c_buf_p); | | | | return c; | | } | | #endif /* ifndef YY_NO_INPUT */ | | | | /** Immediately switch to a different input stream. | | * @param input_file A readable stream. | | * | | * @note This function does not reset the start condition to @c INITIAL . | | */ | | void yyrestart (FILE * input_file ) | | { | | | | if ( ! YY_CURRENT_BUFFER ){ | | yyensure_buffer_stack (); | | YY_CURRENT_BUFFER_LVALUE = | | yy_create_buffer(yyin,YY_BUF_SIZE ); | | } | | | | yy_init_buffer(YY_CURRENT_BUFFER,input_file ); | | yy_load_buffer_state( ); | | } | | | | /** Switch to a different input buffer. | | * @param new_buffer The new input buffer. | | * | | */ | | void yy_switch_to_buffer (YY_BUFFER_STATE new_buffer ) | | { | | | | /* TODO. We should be able to replace this entire function body | | * with | | * yypop_buffer_state(); | | * yypush_buffer_state(new_buffer); | | */ | | yyensure_buffer_stack (); | | if ( YY_CURRENT_BUFFER == new_buffer ) | | return; | | | | if ( YY_CURRENT_BUFFER ) | | { | | /* Flush out information for old buffer. */ | | *(yy_c_buf_p) = (yy_hold_char); | | YY_CURRENT_BUFFER_LVALUE->yy_buf_pos = (yy_c_buf_p); | | YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars); | | } | | | | YY_CURRENT_BUFFER_LVALUE = new_buffer; | | yy_load_buffer_state( ); | | | | /* We don't actually know whether we did this switch during | | * EOF (yywrap()) processing, but the only time this flag | | * is looked at is after yywrap() is called, so it's safe | | * to go ahead and always set it. | | */ | | (yy_did_buffer_switch_on_eof) = 1; | | } | | | | static void yy_load_buffer_state (void) | | { | | (yy_n_chars) = YY_CURRENT_BUFFER_LVALUE->yy_n_chars; | | (yytext_ptr) = (yy_c_buf_p) = YY_CURRENT_BUFFER_LVALUE->yy_buf_pos; | | yyin = YY_CURRENT_BUFFER_LVALUE->yy_input_file; | | (yy_hold_char) = *(yy_c_buf_p); | | } | | | | /** Allocate and initialize an input buffer state. | | * @param file A readable stream. | | * @param size The character buffer size in bytes. When in doubt, use @c YY_BUF_SIZE. | | * | | * @return the allocated buffer state. | | */ | | YY_BUFFER_STATE yy_create_buffer (FILE * file, int size ) | | { | | YY_BUFFER_STATE b; | | | | b = (YY_BUFFER_STATE) yyalloc(sizeof( struct yy_buffer_state ) ); | | if ( ! b ) | | YY_FATAL_ERROR( "out of dynamic memory in yy_create_buffer()" ); | | | | b->yy_buf_size = size; | | | | /* yy_ch_buf has to be 2 characters longer than the size given because | | * we need to put in 2 end-of-buffer characters. | | */ | | b->yy_ch_buf = (char *) yyalloc(b->yy_buf_size + 2 ); | | if ( ! b->yy_ch_buf ) | | YY_FATAL_ERROR( "out of dynamic memory in yy_create_buffer()" ); | | | | b->yy_is_our_buffer = 1; | | | | yy_init_buffer(b,file ); | | | | return b; | | } | | | | /** Destroy the buffer. | | * @param b a buffer created with yy_create_buffer() | | * | | */ | | void yy_delete_buffer (YY_BUFFER_STATE b ) | | { | | | | if ( ! b ) | | return; | | | | if ( b == YY_CURRENT_BUFFER ) /* Not sure if we should pop here. */ | | YY_CURRENT_BUFFER_LVALUE = (YY_BUFFER_STATE) 0; | | | | if ( b->yy_is_our_buffer ) | | yyfree((void *) b->yy_ch_buf ); | | | | yyfree((void *) b ); | | } | | | | #ifndef __cplusplus | | extern int isatty (int ); | | #endif /* __cplusplus */ | | | | /* Initializes or reinitializes a buffer. | | * This function is sometimes called more than once on the same buffer, | | * such as during a yyrestart() or at EOF. | | */ | | static void yy_init_buffer (YY_BUFFER_STATE b, FILE * file ) | | | | { | | int oerrno = errno; | | | | yy_flush_buffer(b ); | | | | b->yy_input_file = file; | | b->yy_fill_buffer = 1; | | | | /* If b is the current buffer, then yy_init_buffer was _probably_ | | * called from yyrestart() or through yy_get_next_buffer. | | * In that case, we don't want to reset the lineno or column. | | */ | | if (b != YY_CURRENT_BUFFER){ | | b->yy_bs_lineno = 1; | | b->yy_bs_column = 0; | | } | | | | b->yy_is_interactive = file ? (isatty( fileno(file) ) > 0) : 0; | | | | errno = oerrno; | | } | | | | /** Discard all buffered characters. On the next scan, YY_INPUT will be called. | | * @param b the buffer state to be flushed, usually @c YY_CURRENT_BUFFER. | | * | | */ | | void yy_flush_buffer (YY_BUFFER_STATE b ) | | { | | if ( ! b ) | | return; | | | | b->yy_n_chars = 0; | | | | /* We always need two end-of-buffer characters. The first causes | | * a transition to the end-of-buffer state. The second causes | | * a jam in that state. | | */ | | b->yy_ch_buf[0] = YY_END_OF_BUFFER_CHAR; | | b->yy_ch_buf[1] = YY_END_OF_BUFFER_CHAR; | | | | b->yy_buf_pos = &b->yy_ch_buf[0]; | | | | b->yy_at_bol = 1; | | b->yy_buffer_status = YY_BUFFER_NEW; | | | | if ( b == YY_CURRENT_BUFFER ) | | yy_load_buffer_state( ); | | } | | | | /** Pushes the new state onto the stack. The new state becomes | | * the current state. This function will allocate the stack | | * if necessary. | | * @param new_buffer The new state. | | * | | */ | | void yypush_buffer_state (YY_BUFFER_STATE new_buffer ) | | { | | if (new_buffer == NULL) | | return; | | | | yyensure_buffer_stack(); | | | | /* This block is copied from yy_switch_to_buffer. */ | | if ( YY_CURRENT_BUFFER ) | | { | | /* Flush out information for old buffer. */ | | *(yy_c_buf_p) = (yy_hold_char); | | YY_CURRENT_BUFFER_LVALUE->yy_buf_pos = (yy_c_buf_p); | | YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars); | | } | | | | /* Only push if top exists. Otherwise, replace top. */ | | if (YY_CURRENT_BUFFER) | | (yy_buffer_stack_top)++; | | YY_CURRENT_BUFFER_LVALUE = new_buffer; | | | | /* copied from yy_switch_to_buffer. */ | | yy_load_buffer_state( ); | | (yy_did_buffer_switch_on_eof) = 1; | | } | | | | /** Removes and deletes the top of the stack, if present. | | * The next element becomes the new top. | | * | | */ | | void yypop_buffer_state (void) | | { | | if (!YY_CURRENT_BUFFER) | | return; | | | | yy_delete_buffer(YY_CURRENT_BUFFER ); | | YY_CURRENT_BUFFER_LVALUE = NULL; | | if ((yy_buffer_stack_top) > 0) | | --(yy_buffer_stack_top); | | | | if (YY_CURRENT_BUFFER) { | | yy_load_buffer_state( ); | | (yy_did_buffer_switch_on_eof) = 1; | | } | | } | | | | /* Allocates the stack if it does not exist. | | * Guarantees space for at least one push. | | */ | | static void yyensure_buffer_stack (void) | | { | | yy_size_t num_to_alloc; | | | | if (!(yy_buffer_stack)) { | | | | /* First allocation is just for 2 elements, since we don't know if this | | * scanner will even need a stack. We use 2 instead of 1 to avoid an | | * immediate realloc on the next call. | | */ | | num_to_alloc = 1; | | (yy_buffer_stack) = (struct yy_buffer_state**)yyalloc | | (num_to_alloc * sizeof(struct yy_buffer_state*) | | ); | | if ( ! (yy_buffer_stack) ) | | YY_FATAL_ERROR( "out of dynamic memory in yyensure_buffer_stack()" ); | | | | memset((yy_buffer_stack), 0, num_to_alloc * sizeof(struct yy_buffer_state*)); | | | | (yy_buffer_stack_max) = num_to_alloc; | | (yy_buffer_stack_top) = 0; | | return; | | } | | | | if ((yy_buffer_stack_top) >= ((yy_buffer_stack_max)) - 1){ | | | | /* Increase the buffer to prepare for a possible push. */ | | int grow_size = 8 /* arbitrary grow size */; | | | | num_to_alloc = (yy_buffer_stack_max) + grow_size; | | (yy_buffer_stack) = (struct yy_buffer_state**)yyrealloc | | ((yy_buffer_stack), | | num_to_alloc * sizeof(struct yy_buffer_state*) | | ); | | if ( ! (yy_buffer_stack) ) | | YY_FATAL_ERROR( "out of dynamic memory in yyensure_buffer_stack()" ); | | | | /* zero only the new slots.*/ | | memset((yy_buffer_stack) + (yy_buffer_stack_max), 0, grow_size * sizeof(struct yy_buffer_state*)); | | (yy_buffer_stack_max) = num_to_alloc; | | } | | } | | | | /** Setup the input buffer state to scan directly from a user-specified character buffer. | | * @param base the character buffer | | * @param size the size in bytes of the character buffer | | * | | * @return the newly allocated buffer state object. | | */ | | YY_BUFFER_STATE yy_scan_buffer (char * base, yy_size_t size ) | | { | | YY_BUFFER_STATE b; | | | | if ( size < 2 || | | base[size-2] != YY_END_OF_BUFFER_CHAR || | | base[size-1] != YY_END_OF_BUFFER_CHAR ) | | /* They forgot to leave room for the EOB's. */ | | return 0; | | | | b = (YY_BUFFER_STATE) yyalloc(sizeof( struct yy_buffer_state ) ); | | if ( ! b ) | | YY_FATAL_ERROR( "out of dynamic memory in yy_scan_buffer()" ); | | | | b->yy_buf_size = size - 2; /* "- 2" to take care of EOB's */ | | b->yy_buf_pos = b->yy_ch_buf = base; | | b->yy_is_our_buffer = 0; | | b->yy_input_file = 0; | | b->yy_n_chars = b->yy_buf_size; | | b->yy_is_interactive = 0; | | b->yy_at_bol = 1; | | b->yy_fill_buffer = 0; | | b->yy_buffer_status = YY_BUFFER_NEW; | | | | yy_switch_to_buffer(b ); | | | | return b; | | } | | | | /** Setup the input buffer state to scan a string. The next call to yylex() will | | * scan from a @e copy of @a str. | | * @param yystr a NUL-terminated string to scan | | * | | * @return the newly allocated buffer state object. | | * @note If you want to scan bytes that may contain NUL values, then use | | * yy_scan_bytes() instead. | | */ | | YY_BUFFER_STATE yy_scan_string (yyconst char * yystr ) | | { | | | | return yy_scan_bytes(yystr,strlen(yystr) ); | | } | | | | /** Setup the input buffer state to scan the given bytes. The next call to yylex() will | | * scan from a @e copy of @a bytes. | | * @param bytes the byte buffer to scan | | * @param len the number of bytes in the buffer pointed to by @a bytes. | | * | | * @return the newly allocated buffer state object. | | */ | | YY_BUFFER_STATE yy_scan_bytes (yyconst char * yybytes, yy_size_t _yybytes_len ) | | { | | YY_BUFFER_STATE b; | | char *buf; | | yy_size_t n, i; | | | | /* Get memory for full buffer, including space for trailing EOB's. */ | | n = _yybytes_len + 2; | | buf = (char *) yyalloc(n ); | | if ( ! buf ) | | YY_FATAL_ERROR( "out of dynamic memory in yy_scan_bytes()" ); | | | | for ( i = 0; i < _yybytes_len; ++i ) | | buf[i] = yybytes[i]; | | | | buf[_yybytes_len] = buf[_yybytes_len+1] = YY_END_OF_BUFFER_CHAR; | | | | b = yy_scan_buffer(buf,n ); | | if ( ! b ) | | YY_FATAL_ERROR( "bad buffer in yy_scan_bytes()" ); | | | | /* It's okay to grow etc. this buffer, and we should throw it | | * away when we're done. | | */ | | b->yy_is_our_buffer = 1; | | | | return b; | | } | | | | #ifndef YY_EXIT_FAILURE | | #define YY_EXIT_FAILURE 2 | | #endif | | | | static void yy_fatal_error (yyconst char* msg ) | | { | | (void) fprintf( stderr, "%s\n", msg ); | | exit( YY_EXIT_FAILURE ); | | } | | | | /* Redefine yyless() so it works in section 3 code. */ | | | | #undef yyless | | #define yyless(n) \ | | do \ | | { \ | | /* Undo effects of setting up yytext. */ \ | | int yyless_macro_arg = (n); \ | | YY_LESS_LINENO(yyless_macro_arg);\ | | yytext[yyleng] = (yy_hold_char); \ | | (yy_c_buf_p) = yytext + yyless_macro_arg; \ | | (yy_hold_char) = *(yy_c_buf_p); \ | | *(yy_c_buf_p) = '\0'; \ | | yyleng = yyless_macro_arg; \ | | } \ | | while ( 0 ) | | | | /* Accessor methods (get/set functions) to struct members. */ | | | | /** Get the current line number. | | * | | */ | | int yyget_lineno (void) | | { | | | | return yylineno; | | } | | | | /** Get the input stream. | | * | | */ | | FILE *yyget_in (void) | | { | | return yyin; | | } | | | | /** Get the output stream. | | * | | */ | | FILE *yyget_out (void) | | { | | return yyout; | | } | | | | /** Get the length of the current token. | | * | | */ | | yy_size_t yyget_leng (void) | | { | | return yyleng; | | } | | | | /** Get the current token. | | * | | */ | | | | char *yyget_text (void) | | { | | return yytext; | | } | | | | /** Set the current line number. | | * @param line_number | | * | | */ | | void yyset_lineno (int line_number ) | | { | | | | yylineno = line_number; | | } | | | | /** Set the input stream. This does not discard the current | | * input buffer. | | * @param in_str A readable stream. | | * | | * @see yy_switch_to_buffer | | */ | | void yyset_in (FILE * in_str ) | | { | | yyin = in_str ; | | } | | | | void yyset_out (FILE * out_str ) | | { | | yyout = out_str ; | | } | | | | int yyget_debug (void) | | { | | return yy_flex_debug; | | } | | | | void yyset_debug (int bdebug ) | | { | | yy_flex_debug = bdebug ; | | } | | | | static int yy_init_globals (void) | | { | | /* Initialization is the same as for the non-reentrant scanner. | | * This function is called from yylex_destroy(), so don't allocate here. | | */ | | | | (yy_buffer_stack) = 0; | | (yy_buffer_stack_top) = 0; | | (yy_buffer_stack_max) = 0; | | (yy_c_buf_p) = (char *) 0; | | (yy_init) = 0; | | (yy_start) = 0; | | | | (yy_state_buf) = 0; | | (yy_state_ptr) = 0; | | (yy_full_match) = 0; | | (yy_lp) = 0; | | | | /* Defined in main.c */ | | #ifdef YY_STDINIT | | yyin = stdin; | | yyout = stdout; | | #else | | yyin = (FILE *) 0; | | yyout = (FILE *) 0; | | #endif | | | | /* For future reference: Set errno on error, since we are called by | | * yylex_init() | | */ | | return 0; | | } | | | | /* yylex_destroy is for both reentrant and non-reentrant scanners. */ | | int yylex_destroy (void) | | { | | | | /* Pop the buffer stack, destroying each element. */ | | while(YY_CURRENT_BUFFER){ | | yy_delete_buffer(YY_CURRENT_BUFFER ); | | YY_CURRENT_BUFFER_LVALUE = NULL; | | yypop_buffer_state(); | | } | | | | /* Destroy the stack itself. */ | | yyfree((yy_buffer_stack) ); | | (yy_buffer_stack) = NULL; | | | | yyfree ( (yy_state_buf) ); | | (yy_state_buf) = NULL; | | | | /* Reset the globals. This is important in a non-reentrant scanner so the next time | | * yylex() is called, initialization will occur. */ | | yy_init_globals( ); | | | | return 0; | | } | | | | /* | | * Internal utility routines. | | */ | | | | #ifndef yytext_ptr | | static void yy_flex_strncpy (char* s1, yyconst char * s2, int n ) | | { | | register int i; | | for ( i = 0; i < n; ++i ) | | s1[i] = s2[i]; | | } | | #endif | | | | #ifdef YY_NEED_STRLEN | | static int yy_flex_strlen (yyconst char * s ) | | { | | register int n; | | for ( n = 0; s[n]; ++n ) | | ; | | | | return n; | | } | | #endif | | | | void *yyalloc (yy_size_t size ) | | { | | return (void *) malloc( size ); | | } | | | | void *yyrealloc (void * ptr, yy_size_t size ) | | { | | /* The cast to (char *) in the following accommodates both | | * implementations that use char* generic pointers, and those | | * that use void* generic pointers. It works with the latter | | * because both ANSI C and C++ allow castless assignment from | | * any pointer type to void*, and deal with argument conversions | | * as though doing an assignment. | | */ | | return (void *) realloc( (char *) ptr, size ); | | } | | | | void yyfree (void * ptr ) | | { | | free( (char *) ptr ); /* see yyrealloc() for (char *) cast */ | | } | | | | #define YYTABLES_NAME "yytables" | | | | #line 10 "conftest.l" | | | | | | #ifdef YYTEXT_POINTER | | extern char *yytext; | | #endif | | int | | main (void) | | { | | return ! yylex () + ! yywrap (); | | } | configure:17329: gcc -o conftest -g -O2 conftest.c -lfl >&5 | ld: library not found for -lfl | clang: error: linker command failed with exit code 1 (use -v to see invocation) | configure:17329: $? = 1 | configure: failed program was: | | /* confdefs.h */ | | #define PACKAGE_NAME "bes" | | #define PACKAGE_TARNAME "bes" | | #define PACKAGE_VERSION "3.19.1" | | #define PACKAGE_STRING "bes 3.19.1" | | #define PACKAGE_BUGREPORT "support@opendap.org" | | #define PACKAGE_URL "" | | #define PACKAGE "bes" | | #define VERSION "3.19.1" | | #define STDC_HEADERS 1 | | #define HAVE_SYS_TYPES_H 1 | | #define HAVE_SYS_STAT_H 1 | | #define HAVE_STDLIB_H 1 | | #define HAVE_STRING_H 1 | | #define HAVE_MEMORY_H 1 | | #define HAVE_STRINGS_H 1 | | #define HAVE_INTTYPES_H 1 | | #define HAVE_STDINT_H 1 | | #define HAVE_UNISTD_H 1 | | #define HAVE_DLFCN_H 1 | | #define LT_OBJDIR ".libs/" | | #define DAPREADER_PACKAGE "dapreader_module" | | #define DAPREADER_VERSION "0.0.1" | | /* end confdefs.h. */ | | | | #line 3 "lex.yy.c" | | | | #define YY_INT_ALIGNED short int | | | | /* A lexical scanner generated by flex */ | | | | #define FLEX_SCANNER | | #define YY_FLEX_MAJOR_VERSION 2 | | #define YY_FLEX_MINOR_VERSION 5 | | #define YY_FLEX_SUBMINOR_VERSION 35 | | #if YY_FLEX_SUBMINOR_VERSION > 0 | | #define FLEX_BETA | | #endif | | | | /* First, we deal with platform-specific or compiler-specific issues. */ | | | | /* begin standard C headers. */ | | #include | | #include | | #include | | #include | | | | /* end standard C headers. */ | | | | /* flex integer type definitions */ | | | | #ifndef FLEXINT_H | | #define FLEXINT_H | | | | /* C99 systems have . Non-C99 systems may or may not. */ | | | | #if defined (__STDC_VERSION__) && __STDC_VERSION__ >= 199901L | | | | /* C99 says to define __STDC_LIMIT_MACROS before including stdint.h, | | * if you want the limit (max/min) macros for int types. | | */ | | #ifndef __STDC_LIMIT_MACROS | | #define __STDC_LIMIT_MACROS 1 | | #endif | | | | #include | | typedef int8_t flex_int8_t; | | typedef uint8_t flex_uint8_t; | | typedef int16_t flex_int16_t; | | typedef uint16_t flex_uint16_t; | | typedef int32_t flex_int32_t; | | typedef uint32_t flex_uint32_t; | | typedef uint64_t flex_uint64_t; | | #else | | typedef signed char flex_int8_t; | | typedef short int flex_int16_t; | | typedef int flex_int32_t; | | typedef unsigned char flex_uint8_t; | | typedef unsigned short int flex_uint16_t; | | typedef unsigned int flex_uint32_t; | | #endif /* ! C99 */ | | | | /* Limits of integral types. */ | | #ifndef INT8_MIN | | #define INT8_MIN (-128) | | #endif | | #ifndef INT16_MIN | | #define INT16_MIN (-32767-1) | | #endif | | #ifndef INT32_MIN | | #define INT32_MIN (-2147483647-1) | | #endif | | #ifndef INT8_MAX | | #define INT8_MAX (127) | | #endif | | #ifndef INT16_MAX | | #define INT16_MAX (32767) | | #endif | | #ifndef INT32_MAX | | #define INT32_MAX (2147483647) | | #endif | | #ifndef UINT8_MAX | | #define UINT8_MAX (255U) | | #endif | | #ifndef UINT16_MAX | | #define UINT16_MAX (65535U) | | #endif | | #ifndef UINT32_MAX | | #define UINT32_MAX (4294967295U) | | #endif | | | | #endif /* ! FLEXINT_H */ | | | | #ifdef __cplusplus | | | | /* The "const" storage-class-modifier is valid. */ | | #define YY_USE_CONST | | | | #else /* ! __cplusplus */ | | | | /* C99 requires __STDC__ to be defined as 1. */ | | #if defined (__STDC__) | | | | #define YY_USE_CONST | | | | #endif /* defined (__STDC__) */ | | #endif /* ! __cplusplus */ | | | | #ifdef YY_USE_CONST | | #define yyconst const | | #else | | #define yyconst | | #endif | | | | /* Returned upon end-of-file. */ | | #define YY_NULL 0 | | | | /* Promotes a possibly negative, possibly signed char to an unsigned | | * integer for use as an array index. If the signed char is negative, | | * we want to instead treat it as an 8-bit unsigned char, hence the | | * double cast. | | */ | | #define YY_SC_TO_UI(c) ((unsigned int) (unsigned char) c) | | | | /* Enter a start condition. This macro really ought to take a parameter, | | * but we do it the disgusting crufty way forced on us by the ()-less | | * definition of BEGIN. | | */ | | #define BEGIN (yy_start) = 1 + 2 * | | | | /* Translate the current start state into a value that can be later handed | | * to BEGIN to return to the state. The YYSTATE alias is for lex | | * compatibility. | | */ | | #define YY_START (((yy_start) - 1) / 2) | | #define YYSTATE YY_START | | | | /* Action number for EOF rule of a given start state. */ | | #define YY_STATE_EOF(state) (YY_END_OF_BUFFER + state + 1) | | | | /* Special action meaning "start processing a new file". */ | | #define YY_NEW_FILE yyrestart(yyin ) | | | | #define YY_END_OF_BUFFER_CHAR 0 | | | | /* Size of default input buffer. */ | | #ifndef YY_BUF_SIZE | | #define YY_BUF_SIZE 16384 | | #endif | | | | /* The state buf must be large enough to hold one state per character in the main buffer. | | */ | | #define YY_STATE_BUF_SIZE ((YY_BUF_SIZE + 2) * sizeof(yy_state_type)) | | | | #ifndef YY_TYPEDEF_YY_BUFFER_STATE | | #define YY_TYPEDEF_YY_BUFFER_STATE | | typedef struct yy_buffer_state *YY_BUFFER_STATE; | | #endif | | | | #ifndef YY_TYPEDEF_YY_SIZE_T | | #define YY_TYPEDEF_YY_SIZE_T | | typedef size_t yy_size_t; | | #endif | | | | extern yy_size_t yyleng; | | | | extern FILE *yyin, *yyout; | | | | #define EOB_ACT_CONTINUE_SCAN 0 | | #define EOB_ACT_END_OF_FILE 1 | | #define EOB_ACT_LAST_MATCH 2 | | | | #define YY_LESS_LINENO(n) | | | | /* Return all but the first "n" matched characters back to the input stream. */ | | #define yyless(n) \ | | do \ | | { \ | | /* Undo effects of setting up yytext. */ \ | | int yyless_macro_arg = (n); \ | | YY_LESS_LINENO(yyless_macro_arg);\ | | *yy_cp = (yy_hold_char); \ | | YY_RESTORE_YY_MORE_OFFSET \ | | (yy_c_buf_p) = yy_cp = yy_bp + yyless_macro_arg - YY_MORE_ADJ; \ | | YY_DO_BEFORE_ACTION; /* set up yytext again */ \ | | } \ | | while ( 0 ) | | | | #define unput(c) yyunput( c, (yytext_ptr) ) | | | | #ifndef YY_STRUCT_YY_BUFFER_STATE | | #define YY_STRUCT_YY_BUFFER_STATE | | struct yy_buffer_state | | { | | FILE *yy_input_file; | | | | char *yy_ch_buf; /* input buffer */ | | char *yy_buf_pos; /* current position in input buffer */ | | | | /* Size of input buffer in bytes, not including room for EOB | | * characters. | | */ | | yy_size_t yy_buf_size; | | | | /* Number of characters read into yy_ch_buf, not including EOB | | * characters. | | */ | | yy_size_t yy_n_chars; | | | | /* Whether we "own" the buffer - i.e., we know we created it, | | * and can realloc() it to grow it, and should free() it to | | * delete it. | | */ | | int yy_is_our_buffer; | | | | /* Whether this is an "interactive" input source; if so, and | | * if we're using stdio for input, then we want to use getc() | | * instead of fread(), to make sure we stop fetching input after | | * each newline. | | */ | | int yy_is_interactive; | | | | /* Whether we're considered to be at the beginning of a line. | | * If so, '^' rules will be active on the next match, otherwise | | * not. | | */ | | int yy_at_bol; | | | | int yy_bs_lineno; /**< The line count. */ | | int yy_bs_column; /**< The column count. */ | | | | /* Whether to try to fill the input buffer when we reach the | | * end of it. | | */ | | int yy_fill_buffer; | | | | int yy_buffer_status; | | | | #define YY_BUFFER_NEW 0 | | #define YY_BUFFER_NORMAL 1 | | /* When an EOF's been seen but there's still some text to process | | * then we mark the buffer as YY_EOF_PENDING, to indicate that we | | * shouldn't try reading from the input source any more. We might | | * still have a bunch of tokens to match, though, because of | | * possible backing-up. | | * | | * When we actually see the EOF, we change the status to "new" | | * (via yyrestart()), so that the user can continue scanning by | | * just pointing yyin at a new input file. | | */ | | #define YY_BUFFER_EOF_PENDING 2 | | | | }; | | #endif /* !YY_STRUCT_YY_BUFFER_STATE */ | | | | /* Stack of input buffers. */ | | static size_t yy_buffer_stack_top = 0; /**< index of top of stack. */ | | static size_t yy_buffer_stack_max = 0; /**< capacity of stack. */ | | static YY_BUFFER_STATE * yy_buffer_stack = 0; /**< Stack as an array. */ | | | | /* We provide macros for accessing buffer states in case in the | | * future we want to put the buffer states in a more general | | * "scanner state". | | * | | * Returns the top of the stack, or NULL. | | */ | | #define YY_CURRENT_BUFFER ( (yy_buffer_stack) \ | | ? (yy_buffer_stack)[(yy_buffer_stack_top)] \ | | : NULL) | | | | /* Same as previous macro, but useful when we know that the buffer stack is not | | * NULL or when we need an lvalue. For internal use only. | | */ | | #define YY_CURRENT_BUFFER_LVALUE (yy_buffer_stack)[(yy_buffer_stack_top)] | | | | /* yy_hold_char holds the character lost when yytext is formed. */ | | static char yy_hold_char; | | static yy_size_t yy_n_chars; /* number of characters read into yy_ch_buf */ | | yy_size_t yyleng; | | | | /* Points to current character in buffer. */ | | static char *yy_c_buf_p = (char *) 0; | | static int yy_init = 0; /* whether we need to initialize */ | | static int yy_start = 0; /* start state number */ | | | | /* Flag which is used to allow yywrap()'s to do buffer switches | | * instead of setting up a fresh yyin. A bit of a hack ... | | */ | | static int yy_did_buffer_switch_on_eof; | | | | void yyrestart (FILE *input_file ); | | void yy_switch_to_buffer (YY_BUFFER_STATE new_buffer ); | | YY_BUFFER_STATE yy_create_buffer (FILE *file,int size ); | | void yy_delete_buffer (YY_BUFFER_STATE b ); | | void yy_flush_buffer (YY_BUFFER_STATE b ); | | void yypush_buffer_state (YY_BUFFER_STATE new_buffer ); | | void yypop_buffer_state (void ); | | | | static void yyensure_buffer_stack (void ); | | static void yy_load_buffer_state (void ); | | static void yy_init_buffer (YY_BUFFER_STATE b,FILE *file ); | | | | #define YY_FLUSH_BUFFER yy_flush_buffer(YY_CURRENT_BUFFER ) | | | | YY_BUFFER_STATE yy_scan_buffer (char *base,yy_size_t size ); | | YY_BUFFER_STATE yy_scan_string (yyconst char *yy_str ); | | YY_BUFFER_STATE yy_scan_bytes (yyconst char *bytes,yy_size_t len ); | | | | void *yyalloc (yy_size_t ); | | void *yyrealloc (void *,yy_size_t ); | | void yyfree (void * ); | | | | #define yy_new_buffer yy_create_buffer | | | | #define yy_set_interactive(is_interactive) \ | | { \ | | if ( ! YY_CURRENT_BUFFER ){ \ | | yyensure_buffer_stack (); \ | | YY_CURRENT_BUFFER_LVALUE = \ | | yy_create_buffer(yyin,YY_BUF_SIZE ); \ | | } \ | | YY_CURRENT_BUFFER_LVALUE->yy_is_interactive = is_interactive; \ | | } | | | | #define yy_set_bol(at_bol) \ | | { \ | | if ( ! YY_CURRENT_BUFFER ){\ | | yyensure_buffer_stack (); \ | | YY_CURRENT_BUFFER_LVALUE = \ | | yy_create_buffer(yyin,YY_BUF_SIZE ); \ | | } \ | | YY_CURRENT_BUFFER_LVALUE->yy_at_bol = at_bol; \ | | } | | | | #define YY_AT_BOL() (YY_CURRENT_BUFFER_LVALUE->yy_at_bol) | | | | /* Begin user sect3 */ | | | | typedef unsigned char YY_CHAR; | | | | FILE *yyin = (FILE *) 0, *yyout = (FILE *) 0; | | | | typedef int yy_state_type; | | | | extern int yylineno; | | | | int yylineno = 1; | | | | extern char *yytext; | | #define yytext_ptr yytext | | | | static yy_state_type yy_get_previous_state (void ); | | static yy_state_type yy_try_NUL_trans (yy_state_type current_state ); | | static int yy_get_next_buffer (void ); | | static void yy_fatal_error (yyconst char msg[] ); | | | | /* Done after the current pattern has been matched and before the | | * corresponding action - sets up yytext. | | */ | | #define YY_DO_BEFORE_ACTION \ | | (yytext_ptr) = yy_bp; \ | | (yytext_ptr) -= (yy_more_len); \ | | yyleng = (yy_size_t) (yy_cp - (yytext_ptr)); \ | | (yy_hold_char) = *yy_cp; \ | | *yy_cp = '\0'; \ | | (yy_c_buf_p) = yy_cp; | | | | #define YY_NUM_RULES 8 | | #define YY_END_OF_BUFFER 9 | | /* This struct is not used in this scanner, | | but its presence is necessary. */ | | struct yy_trans_info | | { | | flex_int32_t yy_verify; | | flex_int32_t yy_nxt; | | }; | | static yyconst flex_int16_t yy_acclist[23] = | | { 0, | | 9, 7, 8, 8, 1, 7, 8, 2, 7, 8, | | 3, 7, 8, 4, 7, 8, 5, 7, 8, 6, | | 7, 8 | | } ; | | | | static yyconst flex_int16_t yy_accept[14] = | | { 0, | | 1, 1, 1, 2, 4, 5, 8, 11, 14, 17, | | 20, 23, 23 | | } ; | | | | static yyconst flex_int32_t yy_ec[256] = | | { 0, | | 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, | | 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, | | 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, | | 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, | | 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, | | 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, | | 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, | | 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, | | 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, | | 1, 1, 1, 1, 1, 1, 3, 4, 5, 6, | | | | 7, 8, 1, 1, 1, 1, 1, 1, 1, 1, | | 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, | | 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, | | 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, | | 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, | | 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, | | 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, | | 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, | | 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, | | 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, | | | | 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, | | 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, | | 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, | | 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, | | 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, | | 1, 1, 1, 1, 1 | | } ; | | | | static yyconst flex_int32_t yy_meta[9] = | | { 0, | | 1, 1, 1, 1, 1, 1, 1, 1 | | } ; | | | | static yyconst flex_int16_t yy_base[13] = | | { 0, | | 0, 0, 9, 10, 10, 10, 10, 10, 10, 10, | | 10, 10 | | } ; | | | | static yyconst flex_int16_t yy_def[13] = | | { 0, | | 12, 1, 12, 12, 12, 12, 12, 12, 12, 12, | | 12, 0 | | } ; | | | | static yyconst flex_int16_t yy_nxt[19] = | | { 0, | | 4, 5, 6, 7, 8, 9, 10, 11, 12, 3, | | 12, 12, 12, 12, 12, 12, 12, 12 | | } ; | | | | static yyconst flex_int16_t yy_chk[19] = | | { 0, | | 1, 1, 1, 1, 1, 1, 1, 1, 3, 12, | | 12, 12, 12, 12, 12, 12, 12, 12 | | } ; | | | | extern int yy_flex_debug; | | int yy_flex_debug = 0; | | | | static yy_state_type *yy_state_buf=0, *yy_state_ptr=0; | | static char *yy_full_match; | | static int yy_lp; | | #define REJECT \ | | { \ | | *yy_cp = (yy_hold_char); /* undo effects of setting up yytext */ \ | | yy_cp = (yy_full_match); /* restore poss. backed-over text */ \ | | ++(yy_lp); \ | | goto find_rule; \ | | } | | | | static int yy_more_flag = 0; | | static int yy_more_len = 0; | | #define yymore() ((yy_more_flag) = 1) | | #define YY_MORE_ADJ (yy_more_len) | | #define YY_RESTORE_YY_MORE_OFFSET | | char *yytext; | | #line 1 "conftest.l" | | #line 469 "lex.yy.c" | | | | #define INITIAL 0 | | | | #ifndef YY_NO_UNISTD_H | | /* Special case for "unistd.h", since it is non-ANSI. We include it way | | * down here because we want the user's section 1 to have been scanned first. | | * The user has a chance to override it with an option. | | */ | | #include | | #endif | | | | #ifndef YY_EXTRA_TYPE | | #define YY_EXTRA_TYPE void * | | #endif | | | | static int yy_init_globals (void ); | | | | /* Accessor methods to globals. | | These are made visible to non-reentrant scanners for convenience. */ | | | | int yylex_destroy (void ); | | | | int yyget_debug (void ); | | | | void yyset_debug (int debug_flag ); | | | | YY_EXTRA_TYPE yyget_extra (void ); | | | | void yyset_extra (YY_EXTRA_TYPE user_defined ); | | | | FILE *yyget_in (void ); | | | | void yyset_in (FILE * in_str ); | | | | FILE *yyget_out (void ); | | | | void yyset_out (FILE * out_str ); | | | | yy_size_t yyget_leng (void ); | | | | char *yyget_text (void ); | | | | int yyget_lineno (void ); | | | | void yyset_lineno (int line_number ); | | | | /* Macros after this point can all be overridden by user definitions in | | * section 1. | | */ | | | | #ifndef YY_SKIP_YYWRAP | | #ifdef __cplusplus | | extern "C" int yywrap (void ); | | #else | | extern int yywrap (void ); | | #endif | | #endif | | | | static void yyunput (int c,char *buf_ptr ); | | | | #ifndef yytext_ptr | | static void yy_flex_strncpy (char *,yyconst char *,int ); | | #endif | | | | #ifdef YY_NEED_STRLEN | | static int yy_flex_strlen (yyconst char * ); | | #endif | | | | #ifndef YY_NO_INPUT | | | | #ifdef __cplusplus | | static int yyinput (void ); | | #else | | static int input (void ); | | #endif | | | | #endif | | | | /* Amount of stuff to slurp up with each read. */ | | #ifndef YY_READ_BUF_SIZE | | #define YY_READ_BUF_SIZE 8192 | | #endif | | | | /* Copy whatever the last rule matched to the standard output. */ | | #ifndef ECHO | | /* This used to be an fputs(), but since the string might contain NUL's, | | * we now use fwrite(). | | */ | | #define ECHO fwrite( yytext, yyleng, 1, yyout ) | | #endif | | | | /* Gets input and stuffs it into "buf". number of characters read, or YY_NULL, | | * is returned in "result". | | */ | | #ifndef YY_INPUT | | #define YY_INPUT(buf,result,max_size) \ | | if ( YY_CURRENT_BUFFER_LVALUE->yy_is_interactive ) \ | | { \ | | int c = '*'; \ | | yy_size_t n; \ | | for ( n = 0; n < max_size && \ | | (c = getc( yyin )) != EOF && c != '\n'; ++n ) \ | | buf[n] = (char) c; \ | | if ( c == '\n' ) \ | | buf[n++] = (char) c; \ | | if ( c == EOF && ferror( yyin ) ) \ | | YY_FATAL_ERROR( "input in flex scanner failed" ); \ | | result = n; \ | | } \ | | else \ | | { \ | | errno=0; \ | | while ( (result = fread(buf, 1, max_size, yyin))==0 && ferror(yyin)) \ | | { \ | | if( errno != EINTR) \ | | { \ | | YY_FATAL_ERROR( "input in flex scanner failed" ); \ | | break; \ | | } \ | | errno=0; \ | | clearerr(yyin); \ | | } \ | | }\ | | \ | | | | #endif | | | | /* No semi-colon after return; correct usage is to write "yyterminate();" - | | * we don't want an extra ';' after the "return" because that will cause | | * some compilers to complain about unreachable statements. | | */ | | #ifndef yyterminate | | #define yyterminate() return YY_NULL | | #endif | | | | /* Number of entries by which start-condition stack grows. */ | | #ifndef YY_START_STACK_INCR | | #define YY_START_STACK_INCR 25 | | #endif | | | | /* Report a fatal error. */ | | #ifndef YY_FATAL_ERROR | | #define YY_FATAL_ERROR(msg) yy_fatal_error( msg ) | | #endif | | | | /* end tables serialization structures and prototypes */ | | | | /* Default declaration of generated scanner - a define so the user can | | * easily add parameters. | | */ | | #ifndef YY_DECL | | #define YY_DECL_IS_OURS 1 | | | | extern int yylex (void); | | | | #define YY_DECL int yylex (void) | | #endif /* !YY_DECL */ | | | | /* Code executed at the beginning of each rule, after yytext and yyleng | | * have been set up. | | */ | | #ifndef YY_USER_ACTION | | #define YY_USER_ACTION | | #endif | | | | /* Code executed at the end of each rule. */ | | #ifndef YY_BREAK | | #define YY_BREAK break; | | #endif | | | | #define YY_RULE_SETUP \ | | YY_USER_ACTION | | | | /** The main scanner function which does all the work. | | */ | | YY_DECL | | { | | register yy_state_type yy_current_state; | | register char *yy_cp, *yy_bp; | | register int yy_act; | | | | #line 1 "conftest.l" | | | | #line 653 "lex.yy.c" | | | | if ( !(yy_init) ) | | { | | (yy_init) = 1; | | | | #ifdef YY_USER_INIT | | YY_USER_INIT; | | #endif | | | | /* Create the reject buffer large enough to save one state per allowed character. */ | | if ( ! (yy_state_buf) ) | | (yy_state_buf) = (yy_state_type *)yyalloc(YY_STATE_BUF_SIZE ); | | if ( ! (yy_state_buf) ) | | YY_FATAL_ERROR( "out of dynamic memory in yylex()" ); | | | | if ( ! (yy_start) ) | | (yy_start) = 1; /* first start state */ | | | | if ( ! yyin ) | | yyin = stdin; | | | | if ( ! yyout ) | | yyout = stdout; | | | | if ( ! YY_CURRENT_BUFFER ) { | | yyensure_buffer_stack (); | | YY_CURRENT_BUFFER_LVALUE = | | yy_create_buffer(yyin,YY_BUF_SIZE ); | | } | | | | yy_load_buffer_state( ); | | } | | | | while ( 1 ) /* loops until end-of-file is reached */ | | { | | (yy_more_len) = 0; | | if ( (yy_more_flag) ) | | { | | (yy_more_len) = (yy_c_buf_p) - (yytext_ptr); | | (yy_more_flag) = 0; | | } | | yy_cp = (yy_c_buf_p); | | | | /* Support of yytext. */ | | *yy_cp = (yy_hold_char); | | | | /* yy_bp points to the position in yy_ch_buf of the start of | | * the current run. | | */ | | yy_bp = yy_cp; | | | | yy_current_state = (yy_start); | | | | (yy_state_ptr) = (yy_state_buf); | | *(yy_state_ptr)++ = yy_current_state; | | | | yy_match: | | do | | { | | register YY_CHAR yy_c = yy_ec[YY_SC_TO_UI(*yy_cp)]; | | while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state ) | | { | | yy_current_state = (int) yy_def[yy_current_state]; | | if ( yy_current_state >= 13 ) | | yy_c = yy_meta[(unsigned int) yy_c]; | | } | | yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c]; | | *(yy_state_ptr)++ = yy_current_state; | | ++yy_cp; | | } | | while ( yy_base[yy_current_state] != 10 ); | | | | yy_find_action: | | yy_current_state = *--(yy_state_ptr); | | (yy_lp) = yy_accept[yy_current_state]; | | goto find_rule; /* Shut up GCC warning -Wall */ | | find_rule: /* we branch to this label when backing up */ | | for ( ; ; ) /* until we find what rule we matched */ | | { | | if ( (yy_lp) && (yy_lp) < yy_accept[yy_current_state + 1] ) | | { | | yy_act = yy_acclist[(yy_lp)]; | | { | | (yy_full_match) = yy_cp; | | break; | | } | | } | | --yy_cp; | | yy_current_state = *--(yy_state_ptr); | | (yy_lp) = yy_accept[yy_current_state]; | | } | | | | YY_DO_BEFORE_ACTION; | | | | do_action: /* This label is used only to access EOF actions. */ | | | | switch ( yy_act ) | | { /* beginning of action switch */ | | case 1: | | YY_RULE_SETUP | | #line 2 "conftest.l" | | { ECHO; } | | YY_BREAK | | case 2: | | YY_RULE_SETUP | | #line 3 "conftest.l" | | { REJECT; } | | YY_BREAK | | case 3: | | YY_RULE_SETUP | | #line 4 "conftest.l" | | { yymore (); } | | YY_BREAK | | case 4: | | YY_RULE_SETUP | | #line 5 "conftest.l" | | { yyless (1); } | | YY_BREAK | | case 5: | | YY_RULE_SETUP | | #line 6 "conftest.l" | | { /* IRIX 6.5 flex 2.5.4 underquotes its yyless argument. */ | | yyless ((input () != 0)); } | | YY_BREAK | | case 6: | | YY_RULE_SETUP | | #line 8 "conftest.l" | | { unput (yytext[0]); } | | YY_BREAK | | case 7: | | YY_RULE_SETUP | | #line 9 "conftest.l" | | { BEGIN INITIAL; } | | YY_BREAK | | case 8: | | YY_RULE_SETUP | | #line 10 "conftest.l" | | ECHO; | | YY_BREAK | | #line 793 "lex.yy.c" | | case YY_STATE_EOF(INITIAL): | | yyterminate(); | | | | case YY_END_OF_BUFFER: | | { | | /* Amount of text matched not including the EOB char. */ | | int yy_amount_of_matched_text = (int) (yy_cp - (yytext_ptr)) - 1; | | | | /* Undo the effects of YY_DO_BEFORE_ACTION. */ | | *yy_cp = (yy_hold_char); | | YY_RESTORE_YY_MORE_OFFSET | | | | if ( YY_CURRENT_BUFFER_LVALUE->yy_buffer_status == YY_BUFFER_NEW ) | | { | | /* We're scanning a new file or input source. It's | | * possible that this happened because the user | | * just pointed yyin at a new source and called | | * yylex(). If so, then we have to assure | | * consistency between YY_CURRENT_BUFFER and our | | * globals. Here is the right place to do so, because | | * this is the first action (other than possibly a | | * back-up) that will match for the new input source. | | */ | | (yy_n_chars) = YY_CURRENT_BUFFER_LVALUE->yy_n_chars; | | YY_CURRENT_BUFFER_LVALUE->yy_input_file = yyin; | | YY_CURRENT_BUFFER_LVALUE->yy_buffer_status = YY_BUFFER_NORMAL; | | } | | | | /* Note that here we test for yy_c_buf_p "<=" to the position | | * of the first EOB in the buffer, since yy_c_buf_p will | | * already have been incremented past the NUL character | | * (since all states make transitions on EOB to the | | * end-of-buffer state). Contrast this with the test | | * in input(). | | */ | | if ( (yy_c_buf_p) <= &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars)] ) | | { /* This was really a NUL. */ | | yy_state_type yy_next_state; | | | | (yy_c_buf_p) = (yytext_ptr) + yy_amount_of_matched_text; | | | | yy_current_state = yy_get_previous_state( ); | | | | /* Okay, we're now positioned to make the NUL | | * transition. We couldn't have | | * yy_get_previous_state() go ahead and do it | | * for us because it doesn't know how to deal | | * with the possibility of jamming (and we don't | | * want to build jamming into it because then it | | * will run more slowly). | | */ | | | | yy_next_state = yy_try_NUL_trans( yy_current_state ); | | | | yy_bp = (yytext_ptr) + YY_MORE_ADJ; | | | | if ( yy_next_state ) | | { | | /* Consume the NUL. */ | | yy_cp = ++(yy_c_buf_p); | | yy_current_state = yy_next_state; | | goto yy_match; | | } | | | | else | | { | | yy_cp = (yy_c_buf_p); | | goto yy_find_action; | | } | | } | | | | else switch ( yy_get_next_buffer( ) ) | | { | | case EOB_ACT_END_OF_FILE: | | { | | (yy_did_buffer_switch_on_eof) = 0; | | | | if ( yywrap( ) ) | | { | | /* Note: because we've taken care in | | * yy_get_next_buffer() to have set up | | * yytext, we can now set up | | * yy_c_buf_p so that if some total | | * hoser (like flex itself) wants to | | * call the scanner after we return the | | * YY_NULL, it'll still work - another | | * YY_NULL will get returned. | | */ | | (yy_c_buf_p) = (yytext_ptr) + YY_MORE_ADJ; | | | | yy_act = YY_STATE_EOF(YY_START); | | goto do_action; | | } | | | | else | | { | | if ( ! (yy_did_buffer_switch_on_eof) ) | | YY_NEW_FILE; | | } | | break; | | } | | | | case EOB_ACT_CONTINUE_SCAN: | | (yy_c_buf_p) = | | (yytext_ptr) + yy_amount_of_matched_text; | | | | yy_current_state = yy_get_previous_state( ); | | | | yy_cp = (yy_c_buf_p); | | yy_bp = (yytext_ptr) + YY_MORE_ADJ; | | goto yy_match; | | | | case EOB_ACT_LAST_MATCH: | | (yy_c_buf_p) = | | &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars)]; | | | | yy_current_state = yy_get_previous_state( ); | | | | yy_cp = (yy_c_buf_p); | | yy_bp = (yytext_ptr) + YY_MORE_ADJ; | | goto yy_find_action; | | } | | break; | | } | | | | default: | | YY_FATAL_ERROR( | | "fatal flex scanner internal error--no action found" ); | | } /* end of action switch */ | | } /* end of scanning one token */ | | } /* end of yylex */ | | | | /* yy_get_next_buffer - try to read in a new buffer | | * | | * Returns a code representing an action: | | * EOB_ACT_LAST_MATCH - | | * EOB_ACT_CONTINUE_SCAN - continue scanning from current position | | * EOB_ACT_END_OF_FILE - end of file | | */ | | static int yy_get_next_buffer (void) | | { | | register char *dest = YY_CURRENT_BUFFER_LVALUE->yy_ch_buf; | | register char *source = (yytext_ptr); | | register int number_to_move, i; | | int ret_val; | | | | if ( (yy_c_buf_p) > &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars) + 1] ) | | YY_FATAL_ERROR( | | "fatal flex scanner internal error--end of buffer missed" ); | | | | if ( YY_CURRENT_BUFFER_LVALUE->yy_fill_buffer == 0 ) | | { /* Don't try to fill the buffer, so this is an EOF. */ | | if ( (yy_c_buf_p) - (yytext_ptr) - YY_MORE_ADJ == 1 ) | | { | | /* We matched a single character, the EOB, so | | * treat this as a final EOF. | | */ | | return EOB_ACT_END_OF_FILE; | | } | | | | else | | { | | /* We matched some text prior to the EOB, first | | * process it. | | */ | | return EOB_ACT_LAST_MATCH; | | } | | } | | | | /* Try to read more data. */ | | | | /* First move last chars to start of buffer. */ | | number_to_move = (int) ((yy_c_buf_p) - (yytext_ptr)) - 1; | | | | for ( i = 0; i < number_to_move; ++i ) | | *(dest++) = *(source++); | | | | if ( YY_CURRENT_BUFFER_LVALUE->yy_buffer_status == YY_BUFFER_EOF_PENDING ) | | /* don't do the read, it's not guaranteed to return an EOF, | | * just force an EOF | | */ | | YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars) = 0; | | | | else | | { | | yy_size_t num_to_read = | | YY_CURRENT_BUFFER_LVALUE->yy_buf_size - number_to_move - 1; | | | | while ( num_to_read <= 0 ) | | { /* Not enough room in the buffer - grow it. */ | | | | YY_FATAL_ERROR( | | "input buffer overflow, can't enlarge buffer because scanner uses REJECT" ); | | | | } | | | | if ( num_to_read > YY_READ_BUF_SIZE ) | | num_to_read = YY_READ_BUF_SIZE; | | | | /* Read in more data. */ | | YY_INPUT( (&YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[number_to_move]), | | (yy_n_chars), num_to_read ); | | | | YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars); | | } | | | | if ( (yy_n_chars) == 0 ) | | { | | if ( number_to_move == YY_MORE_ADJ ) | | { | | ret_val = EOB_ACT_END_OF_FILE; | | yyrestart(yyin ); | | } | | | | else | | { | | ret_val = EOB_ACT_LAST_MATCH; | | YY_CURRENT_BUFFER_LVALUE->yy_buffer_status = | | YY_BUFFER_EOF_PENDING; | | } | | } | | | | else | | ret_val = EOB_ACT_CONTINUE_SCAN; | | | | if ((yy_size_t) ((yy_n_chars) + number_to_move) > YY_CURRENT_BUFFER_LVALUE->yy_buf_size) { | | /* Extend the array by 50%, plus the number we really need. */ | | yy_size_t new_size = (yy_n_chars) + number_to_move + ((yy_n_chars) >> 1); | | YY_CURRENT_BUFFER_LVALUE->yy_ch_buf = (char *) yyrealloc((void *) YY_CURRENT_BUFFER_LVALUE->yy_ch_buf,new_size ); | | if ( ! YY_CURRENT_BUFFER_LVALUE->yy_ch_buf ) | | YY_FATAL_ERROR( "out of dynamic memory in yy_get_next_buffer()" ); | | } | | | | (yy_n_chars) += number_to_move; | | YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars)] = YY_END_OF_BUFFER_CHAR; | | YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars) + 1] = YY_END_OF_BUFFER_CHAR; | | | | (yytext_ptr) = &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[0]; | | | | return ret_val; | | } | | | | /* yy_get_previous_state - get the state just before the EOB char was reached */ | | | | static yy_state_type yy_get_previous_state (void) | | { | | register yy_state_type yy_current_state; | | register char *yy_cp; | | | | yy_current_state = (yy_start); | | | | (yy_state_ptr) = (yy_state_buf); | | *(yy_state_ptr)++ = yy_current_state; | | | | for ( yy_cp = (yytext_ptr) + YY_MORE_ADJ; yy_cp < (yy_c_buf_p); ++yy_cp ) | | { | | register YY_CHAR yy_c = (*yy_cp ? yy_ec[YY_SC_TO_UI(*yy_cp)] : 1); | | while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state ) | | { | | yy_current_state = (int) yy_def[yy_current_state]; | | if ( yy_current_state >= 13 ) | | yy_c = yy_meta[(unsigned int) yy_c]; | | } | | yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c]; | | *(yy_state_ptr)++ = yy_current_state; | | } | | | | return yy_current_state; | | } | | | | /* yy_try_NUL_trans - try to make a transition on the NUL character | | * | | * synopsis | | * next_state = yy_try_NUL_trans( current_state ); | | */ | | static yy_state_type yy_try_NUL_trans (yy_state_type yy_current_state ) | | { | | register int yy_is_jam; | | | | register YY_CHAR yy_c = 1; | | while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state ) | | { | | yy_current_state = (int) yy_def[yy_current_state]; | | if ( yy_current_state >= 13 ) | | yy_c = yy_meta[(unsigned int) yy_c]; | | } | | yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c]; | | yy_is_jam = (yy_current_state == 12); | | if ( ! yy_is_jam ) | | *(yy_state_ptr)++ = yy_current_state; | | | | return yy_is_jam ? 0 : yy_current_state; | | } | | | | static void yyunput (int c, register char * yy_bp ) | | { | | register char *yy_cp; | | | | yy_cp = (yy_c_buf_p); | | | | /* undo effects of setting up yytext */ | | *yy_cp = (yy_hold_char); | | | | if ( yy_cp < YY_CURRENT_BUFFER_LVALUE->yy_ch_buf + 2 ) | | { /* need to shift things up to make room */ | | /* +2 for EOB chars. */ | | register yy_size_t number_to_move = (yy_n_chars) + 2; | | register char *dest = &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[ | | YY_CURRENT_BUFFER_LVALUE->yy_buf_size + 2]; | | register char *source = | | &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[number_to_move]; | | | | while ( source > YY_CURRENT_BUFFER_LVALUE->yy_ch_buf ) | | *--dest = *--source; | | | | yy_cp += (int) (dest - source); | | yy_bp += (int) (dest - source); | | YY_CURRENT_BUFFER_LVALUE->yy_n_chars = | | (yy_n_chars) = YY_CURRENT_BUFFER_LVALUE->yy_buf_size; | | | | if ( yy_cp < YY_CURRENT_BUFFER_LVALUE->yy_ch_buf + 2 ) | | YY_FATAL_ERROR( "flex scanner push-back overflow" ); | | } | | | | *--yy_cp = (char) c; | | | | (yytext_ptr) = yy_bp; | | (yy_hold_char) = *yy_cp; | | (yy_c_buf_p) = yy_cp; | | } | | | | #ifndef YY_NO_INPUT | | #ifdef __cplusplus | | static int yyinput (void) | | #else | | static int input (void) | | #endif | | | | { | | int c; | | | | *(yy_c_buf_p) = (yy_hold_char); | | | | if ( *(yy_c_buf_p) == YY_END_OF_BUFFER_CHAR ) | | { | | /* yy_c_buf_p now points to the character we want to return. | | * If this occurs *before* the EOB characters, then it's a | | * valid NUL; if not, then we've hit the end of the buffer. | | */ | | if ( (yy_c_buf_p) < &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars)] ) | | /* This was really a NUL. */ | | *(yy_c_buf_p) = '\0'; | | | | else | | { /* need more input */ | | yy_size_t offset = (yy_c_buf_p) - (yytext_ptr); | | ++(yy_c_buf_p); | | | | switch ( yy_get_next_buffer( ) ) | | { | | case EOB_ACT_LAST_MATCH: | | /* This happens because yy_g_n_b() | | * sees that we've accumulated a | | * token and flags that we need to | | * try matching the token before | | * proceeding. But for input(), | | * there's no matching to consider. | | * So convert the EOB_ACT_LAST_MATCH | | * to EOB_ACT_END_OF_FILE. | | */ | | | | /* Reset buffer status. */ | | yyrestart(yyin ); | | | | /*FALLTHROUGH*/ | | | | case EOB_ACT_END_OF_FILE: | | { | | if ( yywrap( ) ) | | return 0; | | | | if ( ! (yy_did_buffer_switch_on_eof) ) | | YY_NEW_FILE; | | #ifdef __cplusplus | | return yyinput(); | | #else | | return input(); | | #endif | | } | | | | case EOB_ACT_CONTINUE_SCAN: | | (yy_c_buf_p) = (yytext_ptr) + offset; | | break; | | } | | } | | } | | | | c = *(unsigned char *) (yy_c_buf_p); /* cast for 8-bit char's */ | | *(yy_c_buf_p) = '\0'; /* preserve yytext */ | | (yy_hold_char) = *++(yy_c_buf_p); | | | | return c; | | } | | #endif /* ifndef YY_NO_INPUT */ | | | | /** Immediately switch to a different input stream. | | * @param input_file A readable stream. | | * | | * @note This function does not reset the start condition to @c INITIAL . | | */ | | void yyrestart (FILE * input_file ) | | { | | | | if ( ! YY_CURRENT_BUFFER ){ | | yyensure_buffer_stack (); | | YY_CURRENT_BUFFER_LVALUE = | | yy_create_buffer(yyin,YY_BUF_SIZE ); | | } | | | | yy_init_buffer(YY_CURRENT_BUFFER,input_file ); | | yy_load_buffer_state( ); | | } | | | | /** Switch to a different input buffer. | | * @param new_buffer The new input buffer. | | * | | */ | | void yy_switch_to_buffer (YY_BUFFER_STATE new_buffer ) | | { | | | | /* TODO. We should be able to replace this entire function body | | * with | | * yypop_buffer_state(); | | * yypush_buffer_state(new_buffer); | | */ | | yyensure_buffer_stack (); | | if ( YY_CURRENT_BUFFER == new_buffer ) | | return; | | | | if ( YY_CURRENT_BUFFER ) | | { | | /* Flush out information for old buffer. */ | | *(yy_c_buf_p) = (yy_hold_char); | | YY_CURRENT_BUFFER_LVALUE->yy_buf_pos = (yy_c_buf_p); | | YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars); | | } | | | | YY_CURRENT_BUFFER_LVALUE = new_buffer; | | yy_load_buffer_state( ); | | | | /* We don't actually know whether we did this switch during | | * EOF (yywrap()) processing, but the only time this flag | | * is looked at is after yywrap() is called, so it's safe | | * to go ahead and always set it. | | */ | | (yy_did_buffer_switch_on_eof) = 1; | | } | | | | static void yy_load_buffer_state (void) | | { | | (yy_n_chars) = YY_CURRENT_BUFFER_LVALUE->yy_n_chars; | | (yytext_ptr) = (yy_c_buf_p) = YY_CURRENT_BUFFER_LVALUE->yy_buf_pos; | | yyin = YY_CURRENT_BUFFER_LVALUE->yy_input_file; | | (yy_hold_char) = *(yy_c_buf_p); | | } | | | | /** Allocate and initialize an input buffer state. | | * @param file A readable stream. | | * @param size The character buffer size in bytes. When in doubt, use @c YY_BUF_SIZE. | | * | | * @return the allocated buffer state. | | */ | | YY_BUFFER_STATE yy_create_buffer (FILE * file, int size ) | | { | | YY_BUFFER_STATE b; | | | | b = (YY_BUFFER_STATE) yyalloc(sizeof( struct yy_buffer_state ) ); | | if ( ! b ) | | YY_FATAL_ERROR( "out of dynamic memory in yy_create_buffer()" ); | | | | b->yy_buf_size = size; | | | | /* yy_ch_buf has to be 2 characters longer than the size given because | | * we need to put in 2 end-of-buffer characters. | | */ | | b->yy_ch_buf = (char *) yyalloc(b->yy_buf_size + 2 ); | | if ( ! b->yy_ch_buf ) | | YY_FATAL_ERROR( "out of dynamic memory in yy_create_buffer()" ); | | | | b->yy_is_our_buffer = 1; | | | | yy_init_buffer(b,file ); | | | | return b; | | } | | | | /** Destroy the buffer. | | * @param b a buffer created with yy_create_buffer() | | * | | */ | | void yy_delete_buffer (YY_BUFFER_STATE b ) | | { | | | | if ( ! b ) | | return; | | | | if ( b == YY_CURRENT_BUFFER ) /* Not sure if we should pop here. */ | | YY_CURRENT_BUFFER_LVALUE = (YY_BUFFER_STATE) 0; | | | | if ( b->yy_is_our_buffer ) | | yyfree((void *) b->yy_ch_buf ); | | | | yyfree((void *) b ); | | } | | | | #ifndef __cplusplus | | extern int isatty (int ); | | #endif /* __cplusplus */ | | | | /* Initializes or reinitializes a buffer. | | * This function is sometimes called more than once on the same buffer, | | * such as during a yyrestart() or at EOF. | | */ | | static void yy_init_buffer (YY_BUFFER_STATE b, FILE * file ) | | | | { | | int oerrno = errno; | | | | yy_flush_buffer(b ); | | | | b->yy_input_file = file; | | b->yy_fill_buffer = 1; | | | | /* If b is the current buffer, then yy_init_buffer was _probably_ | | * called from yyrestart() or through yy_get_next_buffer. | | * In that case, we don't want to reset the lineno or column. | | */ | | if (b != YY_CURRENT_BUFFER){ | | b->yy_bs_lineno = 1; | | b->yy_bs_column = 0; | | } | | | | b->yy_is_interactive = file ? (isatty( fileno(file) ) > 0) : 0; | | | | errno = oerrno; | | } | | | | /** Discard all buffered characters. On the next scan, YY_INPUT will be called. | | * @param b the buffer state to be flushed, usually @c YY_CURRENT_BUFFER. | | * | | */ | | void yy_flush_buffer (YY_BUFFER_STATE b ) | | { | | if ( ! b ) | | return; | | | | b->yy_n_chars = 0; | | | | /* We always need two end-of-buffer characters. The first causes | | * a transition to the end-of-buffer state. The second causes | | * a jam in that state. | | */ | | b->yy_ch_buf[0] = YY_END_OF_BUFFER_CHAR; | | b->yy_ch_buf[1] = YY_END_OF_BUFFER_CHAR; | | | | b->yy_buf_pos = &b->yy_ch_buf[0]; | | | | b->yy_at_bol = 1; | | b->yy_buffer_status = YY_BUFFER_NEW; | | | | if ( b == YY_CURRENT_BUFFER ) | | yy_load_buffer_state( ); | | } | | | | /** Pushes the new state onto the stack. The new state becomes | | * the current state. This function will allocate the stack | | * if necessary. | | * @param new_buffer The new state. | | * | | */ | | void yypush_buffer_state (YY_BUFFER_STATE new_buffer ) | | { | | if (new_buffer == NULL) | | return; | | | | yyensure_buffer_stack(); | | | | /* This block is copied from yy_switch_to_buffer. */ | | if ( YY_CURRENT_BUFFER ) | | { | | /* Flush out information for old buffer. */ | | *(yy_c_buf_p) = (yy_hold_char); | | YY_CURRENT_BUFFER_LVALUE->yy_buf_pos = (yy_c_buf_p); | | YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars); | | } | | | | /* Only push if top exists. Otherwise, replace top. */ | | if (YY_CURRENT_BUFFER) | | (yy_buffer_stack_top)++; | | YY_CURRENT_BUFFER_LVALUE = new_buffer; | | | | /* copied from yy_switch_to_buffer. */ | | yy_load_buffer_state( ); | | (yy_did_buffer_switch_on_eof) = 1; | | } | | | | /** Removes and deletes the top of the stack, if present. | | * The next element becomes the new top. | | * | | */ | | void yypop_buffer_state (void) | | { | | if (!YY_CURRENT_BUFFER) | | return; | | | | yy_delete_buffer(YY_CURRENT_BUFFER ); | | YY_CURRENT_BUFFER_LVALUE = NULL; | | if ((yy_buffer_stack_top) > 0) | | --(yy_buffer_stack_top); | | | | if (YY_CURRENT_BUFFER) { | | yy_load_buffer_state( ); | | (yy_did_buffer_switch_on_eof) = 1; | | } | | } | | | | /* Allocates the stack if it does not exist. | | * Guarantees space for at least one push. | | */ | | static void yyensure_buffer_stack (void) | | { | | yy_size_t num_to_alloc; | | | | if (!(yy_buffer_stack)) { | | | | /* First allocation is just for 2 elements, since we don't know if this | | * scanner will even need a stack. We use 2 instead of 1 to avoid an | | * immediate realloc on the next call. | | */ | | num_to_alloc = 1; | | (yy_buffer_stack) = (struct yy_buffer_state**)yyalloc | | (num_to_alloc * sizeof(struct yy_buffer_state*) | | ); | | if ( ! (yy_buffer_stack) ) | | YY_FATAL_ERROR( "out of dynamic memory in yyensure_buffer_stack()" ); | | | | memset((yy_buffer_stack), 0, num_to_alloc * sizeof(struct yy_buffer_state*)); | | | | (yy_buffer_stack_max) = num_to_alloc; | | (yy_buffer_stack_top) = 0; | | return; | | } | | | | if ((yy_buffer_stack_top) >= ((yy_buffer_stack_max)) - 1){ | | | | /* Increase the buffer to prepare for a possible push. */ | | int grow_size = 8 /* arbitrary grow size */; | | | | num_to_alloc = (yy_buffer_stack_max) + grow_size; | | (yy_buffer_stack) = (struct yy_buffer_state**)yyrealloc | | ((yy_buffer_stack), | | num_to_alloc * sizeof(struct yy_buffer_state*) | | ); | | if ( ! (yy_buffer_stack) ) | | YY_FATAL_ERROR( "out of dynamic memory in yyensure_buffer_stack()" ); | | | | /* zero only the new slots.*/ | | memset((yy_buffer_stack) + (yy_buffer_stack_max), 0, grow_size * sizeof(struct yy_buffer_state*)); | | (yy_buffer_stack_max) = num_to_alloc; | | } | | } | | | | /** Setup the input buffer state to scan directly from a user-specified character buffer. | | * @param base the character buffer | | * @param size the size in bytes of the character buffer | | * | | * @return the newly allocated buffer state object. | | */ | | YY_BUFFER_STATE yy_scan_buffer (char * base, yy_size_t size ) | | { | | YY_BUFFER_STATE b; | | | | if ( size < 2 || | | base[size-2] != YY_END_OF_BUFFER_CHAR || | | base[size-1] != YY_END_OF_BUFFER_CHAR ) | | /* They forgot to leave room for the EOB's. */ | | return 0; | | | | b = (YY_BUFFER_STATE) yyalloc(sizeof( struct yy_buffer_state ) ); | | if ( ! b ) | | YY_FATAL_ERROR( "out of dynamic memory in yy_scan_buffer()" ); | | | | b->yy_buf_size = size - 2; /* "- 2" to take care of EOB's */ | | b->yy_buf_pos = b->yy_ch_buf = base; | | b->yy_is_our_buffer = 0; | | b->yy_input_file = 0; | | b->yy_n_chars = b->yy_buf_size; | | b->yy_is_interactive = 0; | | b->yy_at_bol = 1; | | b->yy_fill_buffer = 0; | | b->yy_buffer_status = YY_BUFFER_NEW; | | | | yy_switch_to_buffer(b ); | | | | return b; | | } | | | | /** Setup the input buffer state to scan a string. The next call to yylex() will | | * scan from a @e copy of @a str. | | * @param yystr a NUL-terminated string to scan | | * | | * @return the newly allocated buffer state object. | | * @note If you want to scan bytes that may contain NUL values, then use | | * yy_scan_bytes() instead. | | */ | | YY_BUFFER_STATE yy_scan_string (yyconst char * yystr ) | | { | | | | return yy_scan_bytes(yystr,strlen(yystr) ); | | } | | | | /** Setup the input buffer state to scan the given bytes. The next call to yylex() will | | * scan from a @e copy of @a bytes. | | * @param bytes the byte buffer to scan | | * @param len the number of bytes in the buffer pointed to by @a bytes. | | * | | * @return the newly allocated buffer state object. | | */ | | YY_BUFFER_STATE yy_scan_bytes (yyconst char * yybytes, yy_size_t _yybytes_len ) | | { | | YY_BUFFER_STATE b; | | char *buf; | | yy_size_t n, i; | | | | /* Get memory for full buffer, including space for trailing EOB's. */ | | n = _yybytes_len + 2; | | buf = (char *) yyalloc(n ); | | if ( ! buf ) | | YY_FATAL_ERROR( "out of dynamic memory in yy_scan_bytes()" ); | | | | for ( i = 0; i < _yybytes_len; ++i ) | | buf[i] = yybytes[i]; | | | | buf[_yybytes_len] = buf[_yybytes_len+1] = YY_END_OF_BUFFER_CHAR; | | | | b = yy_scan_buffer(buf,n ); | | if ( ! b ) | | YY_FATAL_ERROR( "bad buffer in yy_scan_bytes()" ); | | | | /* It's okay to grow etc. this buffer, and we should throw it | | * away when we're done. | | */ | | b->yy_is_our_buffer = 1; | | | | return b; | | } | | | | #ifndef YY_EXIT_FAILURE | | #define YY_EXIT_FAILURE 2 | | #endif | | | | static void yy_fatal_error (yyconst char* msg ) | | { | | (void) fprintf( stderr, "%s\n", msg ); | | exit( YY_EXIT_FAILURE ); | | } | | | | /* Redefine yyless() so it works in section 3 code. */ | | | | #undef yyless | | #define yyless(n) \ | | do \ | | { \ | | /* Undo effects of setting up yytext. */ \ | | int yyless_macro_arg = (n); \ | | YY_LESS_LINENO(yyless_macro_arg);\ | | yytext[yyleng] = (yy_hold_char); \ | | (yy_c_buf_p) = yytext + yyless_macro_arg; \ | | (yy_hold_char) = *(yy_c_buf_p); \ | | *(yy_c_buf_p) = '\0'; \ | | yyleng = yyless_macro_arg; \ | | } \ | | while ( 0 ) | | | | /* Accessor methods (get/set functions) to struct members. */ | | | | /** Get the current line number. | | * | | */ | | int yyget_lineno (void) | | { | | | | return yylineno; | | } | | | | /** Get the input stream. | | * | | */ | | FILE *yyget_in (void) | | { | | return yyin; | | } | | | | /** Get the output stream. | | * | | */ | | FILE *yyget_out (void) | | { | | return yyout; | | } | | | | /** Get the length of the current token. | | * | | */ | | yy_size_t yyget_leng (void) | | { | | return yyleng; | | } | | | | /** Get the current token. | | * | | */ | | | | char *yyget_text (void) | | { | | return yytext; | | } | | | | /** Set the current line number. | | * @param line_number | | * | | */ | | void yyset_lineno (int line_number ) | | { | | | | yylineno = line_number; | | } | | | | /** Set the input stream. This does not discard the current | | * input buffer. | | * @param in_str A readable stream. | | * | | * @see yy_switch_to_buffer | | */ | | void yyset_in (FILE * in_str ) | | { | | yyin = in_str ; | | } | | | | void yyset_out (FILE * out_str ) | | { | | yyout = out_str ; | | } | | | | int yyget_debug (void) | | { | | return yy_flex_debug; | | } | | | | void yyset_debug (int bdebug ) | | { | | yy_flex_debug = bdebug ; | | } | | | | static int yy_init_globals (void) | | { | | /* Initialization is the same as for the non-reentrant scanner. | | * This function is called from yylex_destroy(), so don't allocate here. | | */ | | | | (yy_buffer_stack) = 0; | | (yy_buffer_stack_top) = 0; | | (yy_buffer_stack_max) = 0; | | (yy_c_buf_p) = (char *) 0; | | (yy_init) = 0; | | (yy_start) = 0; | | | | (yy_state_buf) = 0; | | (yy_state_ptr) = 0; | | (yy_full_match) = 0; | | (yy_lp) = 0; | | | | /* Defined in main.c */ | | #ifdef YY_STDINIT | | yyin = stdin; | | yyout = stdout; | | #else | | yyin = (FILE *) 0; | | yyout = (FILE *) 0; | | #endif | | | | /* For future reference: Set errno on error, since we are called by | | * yylex_init() | | */ | | return 0; | | } | | | | /* yylex_destroy is for both reentrant and non-reentrant scanners. */ | | int yylex_destroy (void) | | { | | | | /* Pop the buffer stack, destroying each element. */ | | while(YY_CURRENT_BUFFER){ | | yy_delete_buffer(YY_CURRENT_BUFFER ); | | YY_CURRENT_BUFFER_LVALUE = NULL; | | yypop_buffer_state(); | | } | | | | /* Destroy the stack itself. */ | | yyfree((yy_buffer_stack) ); | | (yy_buffer_stack) = NULL; | | | | yyfree ( (yy_state_buf) ); | | (yy_state_buf) = NULL; | | | | /* Reset the globals. This is important in a non-reentrant scanner so the next time | | * yylex() is called, initialization will occur. */ | | yy_init_globals( ); | | | | return 0; | | } | | | | /* | | * Internal utility routines. | | */ | | | | #ifndef yytext_ptr | | static void yy_flex_strncpy (char* s1, yyconst char * s2, int n ) | | { | | register int i; | | for ( i = 0; i < n; ++i ) | | s1[i] = s2[i]; | | } | | #endif | | | | #ifdef YY_NEED_STRLEN | | static int yy_flex_strlen (yyconst char * s ) | | { | | register int n; | | for ( n = 0; s[n]; ++n ) | | ; | | | | return n; | | } | | #endif | | | | void *yyalloc (yy_size_t size ) | | { | | return (void *) malloc( size ); | | } | | | | void *yyrealloc (void * ptr, yy_size_t size ) | | { | | /* The cast to (char *) in the following accommodates both | | * implementations that use char* generic pointers, and those | | * that use void* generic pointers. It works with the latter | | * because both ANSI C and C++ allow castless assignment from | | * any pointer type to void*, and deal with argument conversions | | * as though doing an assignment. | | */ | | return (void *) realloc( (char *) ptr, size ); | | } | | | | void yyfree (void * ptr ) | | { | | free( (char *) ptr ); /* see yyrealloc() for (char *) cast */ | | } | | | | #define YYTABLES_NAME "yytables" | | | | #line 10 "conftest.l" | | | | | | #ifdef YYTEXT_POINTER | | extern char *yytext; | | #endif | | int | | main (void) | | { | | return ! yylex () + ! yywrap (); | | } | configure:17329: gcc -o conftest -g -O2 conftest.c -ll >&5 | configure:17329: $? = 0 | configure:17339: result: -ll | configure:17345: checking whether yytext is a pointer | configure:17362: gcc -o conftest -g -O2 conftest.c -ll >&5 | configure:17362: $? = 0 | configure:17370: result: yes | configure:17406: checking for bison | configure:17422: found /Users/jimg/src/opendap/hyrax_git/build/deps/bin/bison | configure:17433: result: bison | configure:17444: checking for library containing uuid_generate | configure:17475: gcc -o conftest -g -O2 conftest.c >&5 | configure:17475: $? = 0 | configure:17492: result: none required | configure:17505: checking for valgrind | configure:17521: found /usr/local/bin/valgrind | configure:17532: result: valgrind --logfile=memcheck | configure:17543: checking for perl | configure:17559: found /usr/bin/perl | configure:17570: result: /usr/bin/perl | configure:17581: checking for curl | configure:17600: found /usr/bin/curl | configure:17613: result: /usr/bin/curl | configure:17622: checking for ANSI C header files | configure:17726: result: yes | configure:17740: checking for fcntl.h | configure:17740: gcc -c -g -O2 conftest.c >&5 | configure:17740: $? = 0 | configure:17740: result: yes | configure:17740: checking for float.h | configure:17740: gcc -c -g -O2 conftest.c >&5 | configure:17740: $? = 0 | configure:17740: result: yes | configure:17740: checking for malloc.h | configure:17740: gcc -c -g -O2 conftest.c >&5 | conftest.c:63:10: fatal error: 'malloc.h' file not found | #include | ^~~~~~~~~~ | 1 error generated. | configure:17740: $? = 1 | configure: failed program was: | | /* confdefs.h */ | | #define PACKAGE_NAME "bes" | | #define PACKAGE_TARNAME "bes" | | #define PACKAGE_VERSION "3.19.1" | | #define PACKAGE_STRING "bes 3.19.1" | | #define PACKAGE_BUGREPORT "support@opendap.org" | | #define PACKAGE_URL "" | | #define PACKAGE "bes" | | #define VERSION "3.19.1" | | #define STDC_HEADERS 1 | | #define HAVE_SYS_TYPES_H 1 | | #define HAVE_SYS_STAT_H 1 | | #define HAVE_STDLIB_H 1 | | #define HAVE_STRING_H 1 | | #define HAVE_MEMORY_H 1 | | #define HAVE_STRINGS_H 1 | | #define HAVE_INTTYPES_H 1 | | #define HAVE_STDINT_H 1 | | #define HAVE_UNISTD_H 1 | | #define HAVE_DLFCN_H 1 | | #define LT_OBJDIR ".libs/" | | #define DAPREADER_PACKAGE "dapreader_module" | | #define DAPREADER_VERSION "0.0.1" | | #define YYTEXT_POINTER 1 | | #define STDC_HEADERS 1 | | #define HAVE_FCNTL_H 1 | | #define HAVE_FLOAT_H 1 | | /* end confdefs.h. */ | | #include | | #ifdef HAVE_SYS_TYPES_H | | # include | | #endif | | #ifdef HAVE_SYS_STAT_H | | # include | | #endif | | #ifdef STDC_HEADERS | | # include | | # include | | #else | | # ifdef HAVE_STDLIB_H | | # include | | # endif | | #endif | | #ifdef HAVE_STRING_H | | # if !defined STDC_HEADERS && defined HAVE_MEMORY_H | | # include | | # endif | | # include | | #endif | | #ifdef HAVE_STRINGS_H | | # include | | #endif | | #ifdef HAVE_INTTYPES_H | | # include | | #endif | | #ifdef HAVE_STDINT_H | | # include | | #endif | | #ifdef HAVE_UNISTD_H | | # include | | #endif | | | | #include | configure:17740: result: no | configure:17740: checking for stddef.h | configure:17740: gcc -c -g -O2 conftest.c >&5 | configure:17740: $? = 0 | configure:17740: result: yes | configure:17740: checking for stdlib.h | configure:17740: result: yes | configure:17740: checking for limits.h | configure:17740: gcc -c -g -O2 conftest.c >&5 | configure:17740: $? = 0 | configure:17740: result: yes | configure:17740: checking for unistd.h | configure:17740: result: yes | configure:17740: checking for pthread.h | configure:17740: gcc -c -g -O2 conftest.c >&5 | configure:17740: $? = 0 | configure:17740: result: yes | configure:17740: checking for bzlib.h | configure:17740: gcc -c -g -O2 conftest.c >&5 | configure:17740: $? = 0 | configure:17740: result: yes | configure:17740: checking for string.h | configure:17740: result: yes | configure:17740: checking for strings.h | configure:17740: result: yes | configure:17740: checking for sys/time.h | configure:17740: gcc -c -g -O2 conftest.c >&5 | configure:17740: $? = 0 | configure:17740: result: yes | configure:17777: checking uuid/uuid.h usability | configure:17777: gcc -c -g -O2 conftest.c >&5 | configure:17777: $? = 0 | configure:17777: result: yes | configure:17777: checking uuid/uuid.h presence | configure:17777: gcc -E conftest.c | configure:17777: $? = 0 | configure:17777: result: yes | configure:17777: checking for uuid/uuid.h | configure:17777: result: yes | configure:17791: checking uuid.h usability | configure:17791: gcc -c -g -O2 conftest.c >&5 | conftest.c:72:10: fatal error: 'uuid.h' file not found | #include | ^~~~~~~~ | 1 error generated. | configure:17791: $? = 1 | configure: failed program was: | | /* confdefs.h */ | | #define PACKAGE_NAME "bes" | | #define PACKAGE_TARNAME "bes" | | #define PACKAGE_VERSION "3.19.1" | | #define PACKAGE_STRING "bes 3.19.1" | | #define PACKAGE_BUGREPORT "support@opendap.org" | | #define PACKAGE_URL "" | | #define PACKAGE "bes" | | #define VERSION "3.19.1" | | #define STDC_HEADERS 1 | | #define HAVE_SYS_TYPES_H 1 | | #define HAVE_SYS_STAT_H 1 | | #define HAVE_STDLIB_H 1 | | #define HAVE_STRING_H 1 | | #define HAVE_MEMORY_H 1 | | #define HAVE_STRINGS_H 1 | | #define HAVE_INTTYPES_H 1 | | #define HAVE_STDINT_H 1 | | #define HAVE_UNISTD_H 1 | | #define HAVE_DLFCN_H 1 | | #define LT_OBJDIR ".libs/" | | #define DAPREADER_PACKAGE "dapreader_module" | | #define DAPREADER_VERSION "0.0.1" | | #define YYTEXT_POINTER 1 | | #define STDC_HEADERS 1 | | #define HAVE_FCNTL_H 1 | | #define HAVE_FLOAT_H 1 | | #define HAVE_STDDEF_H 1 | | #define HAVE_STDLIB_H 1 | | #define HAVE_LIMITS_H 1 | | #define HAVE_UNISTD_H 1 | | #define HAVE_PTHREAD_H 1 | | #define HAVE_BZLIB_H 1 | | #define HAVE_STRING_H 1 | | #define HAVE_STRINGS_H 1 | | #define HAVE_SYS_TIME_H 1 | | #define HAVE_UUID_UUID_H 1 | | /* end confdefs.h. */ | | #include | | #ifdef HAVE_SYS_TYPES_H | | # include | | #endif | | #ifdef HAVE_SYS_STAT_H | | # include | | #endif | | #ifdef STDC_HEADERS | | # include | | # include | | #else | | # ifdef HAVE_STDLIB_H | | # include | | # endif | | #endif | | #ifdef HAVE_STRING_H | | # if !defined STDC_HEADERS && defined HAVE_MEMORY_H | | # include | | # endif | | # include | | #endif | | #ifdef HAVE_STRINGS_H | | # include | | #endif | | #ifdef HAVE_INTTYPES_H | | # include | | #endif | | #ifdef HAVE_STDINT_H | | # include | | #endif | | #ifdef HAVE_UNISTD_H | | # include | | #endif | | #include | configure:17791: result: no | configure:17791: checking uuid.h presence | configure:17791: gcc -E conftest.c | conftest.c:39:10: fatal error: 'uuid.h' file not found | #include | ^~~~~~~~ | 1 error generated. | configure:17791: $? = 1 | configure: failed program was: | | /* confdefs.h */ | | #define PACKAGE_NAME "bes" | | #define PACKAGE_TARNAME "bes" | | #define PACKAGE_VERSION "3.19.1" | | #define PACKAGE_STRING "bes 3.19.1" | | #define PACKAGE_BUGREPORT "support@opendap.org" | | #define PACKAGE_URL "" | | #define PACKAGE "bes" | | #define VERSION "3.19.1" | | #define STDC_HEADERS 1 | | #define HAVE_SYS_TYPES_H 1 | | #define HAVE_SYS_STAT_H 1 | | #define HAVE_STDLIB_H 1 | | #define HAVE_STRING_H 1 | | #define HAVE_MEMORY_H 1 | | #define HAVE_STRINGS_H 1 | | #define HAVE_INTTYPES_H 1 | | #define HAVE_STDINT_H 1 | | #define HAVE_UNISTD_H 1 | | #define HAVE_DLFCN_H 1 | | #define LT_OBJDIR ".libs/" | | #define DAPREADER_PACKAGE "dapreader_module" | | #define DAPREADER_VERSION "0.0.1" | | #define YYTEXT_POINTER 1 | | #define STDC_HEADERS 1 | | #define HAVE_FCNTL_H 1 | | #define HAVE_FLOAT_H 1 | | #define HAVE_STDDEF_H 1 | | #define HAVE_STDLIB_H 1 | | #define HAVE_LIMITS_H 1 | | #define HAVE_UNISTD_H 1 | | #define HAVE_PTHREAD_H 1 | | #define HAVE_BZLIB_H 1 | | #define HAVE_STRING_H 1 | | #define HAVE_STRINGS_H 1 | | #define HAVE_SYS_TIME_H 1 | | #define HAVE_UUID_UUID_H 1 | | /* end confdefs.h. */ | | #include | configure:17791: result: no | configure:17791: checking for uuid.h | configure:17791: result: no | configure:17804: checking for an ANSI C-conforming const | configure:17870: gcc -c -g -O2 conftest.c >&5 | configure:17870: $? = 0 | configure:17877: result: yes | configure:17885: checking for inline | configure:17901: gcc -c -g -O2 conftest.c >&5 | configure:17901: $? = 0 | configure:17909: result: inline | configure:17927: checking for size_t | configure:17927: gcc -c -g -O2 conftest.c >&5 | configure:17927: $? = 0 | configure:17927: gcc -c -g -O2 conftest.c >&5 | conftest.c:75:21: error: expected expression | if (sizeof ((size_t))) | ^ | 1 error generated. | configure:17927: $? = 1 | configure: failed program was: | | /* confdefs.h */ | | #define PACKAGE_NAME "bes" | | #define PACKAGE_TARNAME "bes" | | #define PACKAGE_VERSION "3.19.1" | | #define PACKAGE_STRING "bes 3.19.1" | | #define PACKAGE_BUGREPORT "support@opendap.org" | | #define PACKAGE_URL "" | | #define PACKAGE "bes" | | #define VERSION "3.19.1" | | #define STDC_HEADERS 1 | | #define HAVE_SYS_TYPES_H 1 | | #define HAVE_SYS_STAT_H 1 | | #define HAVE_STDLIB_H 1 | | #define HAVE_STRING_H 1 | | #define HAVE_MEMORY_H 1 | | #define HAVE_STRINGS_H 1 | | #define HAVE_INTTYPES_H 1 | | #define HAVE_STDINT_H 1 | | #define HAVE_UNISTD_H 1 | | #define HAVE_DLFCN_H 1 | | #define LT_OBJDIR ".libs/" | | #define DAPREADER_PACKAGE "dapreader_module" | | #define DAPREADER_VERSION "0.0.1" | | #define YYTEXT_POINTER 1 | | #define STDC_HEADERS 1 | | #define HAVE_FCNTL_H 1 | | #define HAVE_FLOAT_H 1 | | #define HAVE_STDDEF_H 1 | | #define HAVE_STDLIB_H 1 | | #define HAVE_LIMITS_H 1 | | #define HAVE_UNISTD_H 1 | | #define HAVE_PTHREAD_H 1 | | #define HAVE_BZLIB_H 1 | | #define HAVE_STRING_H 1 | | #define HAVE_STRINGS_H 1 | | #define HAVE_SYS_TIME_H 1 | | #define HAVE_UUID_UUID_H 1 | | /* end confdefs.h. */ | | #include | | #ifdef HAVE_SYS_TYPES_H | | # include | | #endif | | #ifdef HAVE_SYS_STAT_H | | # include | | #endif | | #ifdef STDC_HEADERS | | # include | | # include | | #else | | # ifdef HAVE_STDLIB_H | | # include | | # endif | | #endif | | #ifdef HAVE_STRING_H | | # if !defined STDC_HEADERS && defined HAVE_MEMORY_H | | # include | | # endif | | # include | | #endif | | #ifdef HAVE_STRINGS_H | | # include | | #endif | | #ifdef HAVE_INTTYPES_H | | # include | | #endif | | #ifdef HAVE_STDINT_H | | # include | | #endif | | #ifdef HAVE_UNISTD_H | | # include | | #endif | | int | | main () | | { | | if (sizeof ((size_t))) | | return 0; | | ; | | return 0; | | } | configure:17927: result: yes | configure:17938: checking for stdbool.h that conforms to C99 | configure:18005: gcc -c -g -O2 conftest.c >&5 | conftest.c:88:24: warning: address of 's' will always evaluate to 'true' [-Wpointer-bool-conversion] | bool e = &s; | ~ ^ | conftest.c:92:23: warning: address of array 'a' will always evaluate to 'true' [-Wpointer-bool-conversion] | return (!a + !b + !c + !d + !e + !f + !g + !h + !i + !!j + !k + !!l | ~^ | conftest.c:92:28: warning: address of array 'b' will always evaluate to 'true' [-Wpointer-bool-conversion] | return (!a + !b + !c + !d + !e + !f + !g + !h + !i + !!j + !k + !!l | ~^ | conftest.c:92:33: warning: address of array 'c' will always evaluate to 'true' [-Wpointer-bool-conversion] | return (!a + !b + !c + !d + !e + !f + !g + !h + !i + !!j + !k + !!l | ~^ | conftest.c:92:38: warning: address of array 'd' will always evaluate to 'true' [-Wpointer-bool-conversion] | return (!a + !b + !c + !d + !e + !f + !g + !h + !i + !!j + !k + !!l | ~^ | conftest.c:92:48: warning: address of array 'f' will always evaluate to 'true' [-Wpointer-bool-conversion] | return (!a + !b + !c + !d + !e + !f + !g + !h + !i + !!j + !k + !!l | ~^ | conftest.c:92:53: warning: address of array 'g' will always evaluate to 'true' [-Wpointer-bool-conversion] | return (!a + !b + !c + !d + !e + !f + !g + !h + !i + !!j + !k + !!l | ~^ | conftest.c:92:58: warning: address of array 'h' will always evaluate to 'true' [-Wpointer-bool-conversion] | return (!a + !b + !c + !d + !e + !f + !g + !h + !i + !!j + !k + !!l | ~^ | conftest.c:92:63: warning: address of array 'i' will always evaluate to 'true' [-Wpointer-bool-conversion] | return (!a + !b + !c + !d + !e + !f + !g + !h + !i + !!j + !k + !!l | ~^ | conftest.c:93:30: warning: address of array 'n' will always evaluate to 'true' [-Wpointer-bool-conversion] | ~^ | conftest.c:93:35: warning: address of array 'o' will always evaluate to 'true' [-Wpointer-bool-conversion] | ~^ | conftest.c:93:40: warning: address of array 'p' will always evaluate to 'true' [-Wpointer-bool-conversion] | ~^ | 12 warnings generated. | configure:18005: $? = 0 | configure:18012: result: yes | configure:18014: checking for _Bool | configure:18014: gcc -c -g -O2 conftest.c >&5 | configure:18014: $? = 0 | configure:18014: gcc -c -g -O2 conftest.c >&5 | conftest.c:75:20: error: expected expression | if (sizeof ((_Bool))) | ^ | 1 error generated. | configure:18014: $? = 1 | configure: failed program was: | | /* confdefs.h */ | | #define PACKAGE_NAME "bes" | | #define PACKAGE_TARNAME "bes" | | #define PACKAGE_VERSION "3.19.1" | | #define PACKAGE_STRING "bes 3.19.1" | | #define PACKAGE_BUGREPORT "support@opendap.org" | | #define PACKAGE_URL "" | | #define PACKAGE "bes" | | #define VERSION "3.19.1" | | #define STDC_HEADERS 1 | | #define HAVE_SYS_TYPES_H 1 | | #define HAVE_SYS_STAT_H 1 | | #define HAVE_STDLIB_H 1 | | #define HAVE_STRING_H 1 | | #define HAVE_MEMORY_H 1 | | #define HAVE_STRINGS_H 1 | | #define HAVE_INTTYPES_H 1 | | #define HAVE_STDINT_H 1 | | #define HAVE_UNISTD_H 1 | | #define HAVE_DLFCN_H 1 | | #define LT_OBJDIR ".libs/" | | #define DAPREADER_PACKAGE "dapreader_module" | | #define DAPREADER_VERSION "0.0.1" | | #define YYTEXT_POINTER 1 | | #define STDC_HEADERS 1 | | #define HAVE_FCNTL_H 1 | | #define HAVE_FLOAT_H 1 | | #define HAVE_STDDEF_H 1 | | #define HAVE_STDLIB_H 1 | | #define HAVE_LIMITS_H 1 | | #define HAVE_UNISTD_H 1 | | #define HAVE_PTHREAD_H 1 | | #define HAVE_BZLIB_H 1 | | #define HAVE_STRING_H 1 | | #define HAVE_STRINGS_H 1 | | #define HAVE_SYS_TIME_H 1 | | #define HAVE_UUID_UUID_H 1 | | /* end confdefs.h. */ | | #include | | #ifdef HAVE_SYS_TYPES_H | | # include | | #endif | | #ifdef HAVE_SYS_STAT_H | | # include | | #endif | | #ifdef STDC_HEADERS | | # include | | # include | | #else | | # ifdef HAVE_STDLIB_H | | # include | | # endif | | #endif | | #ifdef HAVE_STRING_H | | # if !defined STDC_HEADERS && defined HAVE_MEMORY_H | | # include | | # endif | | # include | | #endif | | #ifdef HAVE_STRINGS_H | | # include | | #endif | | #ifdef HAVE_INTTYPES_H | | # include | | #endif | | #ifdef HAVE_STDINT_H | | # include | | #endif | | #ifdef HAVE_UNISTD_H | | # include | | #endif | | int | | main () | | { | | if (sizeof ((_Bool))) | | return 0; | | ; | | return 0; | | } | configure:18014: result: yes | configure:18031: checking for ptrdiff_t | configure:18031: gcc -c -g -O2 conftest.c >&5 | configure:18031: $? = 0 | configure:18031: gcc -c -g -O2 conftest.c >&5 | conftest.c:77:24: error: expected expression | if (sizeof ((ptrdiff_t))) | ^ | 1 error generated. | configure:18031: $? = 1 | configure: failed program was: | | /* confdefs.h */ | | #define PACKAGE_NAME "bes" | | #define PACKAGE_TARNAME "bes" | | #define PACKAGE_VERSION "3.19.1" | | #define PACKAGE_STRING "bes 3.19.1" | | #define PACKAGE_BUGREPORT "support@opendap.org" | | #define PACKAGE_URL "" | | #define PACKAGE "bes" | | #define VERSION "3.19.1" | | #define STDC_HEADERS 1 | | #define HAVE_SYS_TYPES_H 1 | | #define HAVE_SYS_STAT_H 1 | | #define HAVE_STDLIB_H 1 | | #define HAVE_STRING_H 1 | | #define HAVE_MEMORY_H 1 | | #define HAVE_STRINGS_H 1 | | #define HAVE_INTTYPES_H 1 | | #define HAVE_STDINT_H 1 | | #define HAVE_UNISTD_H 1 | | #define HAVE_DLFCN_H 1 | | #define LT_OBJDIR ".libs/" | | #define DAPREADER_PACKAGE "dapreader_module" | | #define DAPREADER_VERSION "0.0.1" | | #define YYTEXT_POINTER 1 | | #define STDC_HEADERS 1 | | #define HAVE_FCNTL_H 1 | | #define HAVE_FLOAT_H 1 | | #define HAVE_STDDEF_H 1 | | #define HAVE_STDLIB_H 1 | | #define HAVE_LIMITS_H 1 | | #define HAVE_UNISTD_H 1 | | #define HAVE_PTHREAD_H 1 | | #define HAVE_BZLIB_H 1 | | #define HAVE_STRING_H 1 | | #define HAVE_STRINGS_H 1 | | #define HAVE_SYS_TIME_H 1 | | #define HAVE_UUID_UUID_H 1 | | #define HAVE__BOOL 1 | | #define HAVE_STDBOOL_H 1 | | /* end confdefs.h. */ | | #include | | #ifdef HAVE_SYS_TYPES_H | | # include | | #endif | | #ifdef HAVE_SYS_STAT_H | | # include | | #endif | | #ifdef STDC_HEADERS | | # include | | # include | | #else | | # ifdef HAVE_STDLIB_H | | # include | | # endif | | #endif | | #ifdef HAVE_STRING_H | | # if !defined STDC_HEADERS && defined HAVE_MEMORY_H | | # include | | # endif | | # include | | #endif | | #ifdef HAVE_STRINGS_H | | # include | | #endif | | #ifdef HAVE_INTTYPES_H | | # include | | #endif | | #ifdef HAVE_STDINT_H | | # include | | #endif | | #ifdef HAVE_UNISTD_H | | # include | | #endif | | int | | main () | | { | | if (sizeof ((ptrdiff_t))) | | return 0; | | ; | | return 0; | | } | configure:18031: result: yes | configure:18041: checking whether struct tm is in sys/time.h or time.h | configure:18061: gcc -c -g -O2 conftest.c >&5 | configure:18061: $? = 0 | configure:18068: result: time.h | configure:18079: checking for working alloca.h | configure:18096: gcc -o conftest -g -O2 conftest.c >&5 | configure:18096: $? = 0 | configure:18104: result: yes | configure:18112: checking for alloca | configure:18149: gcc -o conftest -g -O2 conftest.c >&5 | configure:18149: $? = 0 | configure:18157: result: yes | configure:18266: checking for strdup | configure:18266: gcc -o conftest -g -O2 conftest.c >&5 | conftest.c:67:6: warning: incompatible redeclaration of library function 'strdup' [-Wincompatible-library-redeclaration] | char strdup (); | ^ | conftest.c:67:6: note: 'strdup' is a builtin with type 'char *(const char *)' | 1 warning generated. | configure:18266: $? = 0 | configure:18266: result: yes | configure:18266: checking for strftime | configure:18266: gcc -o conftest -g -O2 conftest.c >&5 | configure:18266: $? = 0 | configure:18266: result: yes | configure:18266: checking for strtol | configure:18266: gcc -o conftest -g -O2 conftest.c >&5 | configure:18266: $? = 0 | configure:18266: result: yes | configure:18266: checking for strcasecmp | configure:18266: gcc -o conftest -g -O2 conftest.c >&5 | conftest.c:70:6: warning: incompatible redeclaration of library function 'strcasecmp' [-Wincompatible-library-redeclaration] | char strcasecmp (); | ^ | conftest.c:70:6: note: 'strcasecmp' is a builtin with type 'int (const char *, const char *)' | 1 warning generated. | configure:18266: $? = 0 | configure:18266: result: yes | configure:18266: checking for strcspn | configure:18266: gcc -o conftest -g -O2 conftest.c >&5 | conftest.c:71:6: warning: incompatible redeclaration of library function 'strcspn' [-Wincompatible-library-redeclaration] | char strcspn (); | ^ | conftest.c:71:6: note: 'strcspn' is a builtin with type 'unsigned long (const char *, const char *)' | 1 warning generated. | configure:18266: $? = 0 | configure:18266: result: yes | configure:18266: checking for strerror | configure:18266: gcc -o conftest -g -O2 conftest.c >&5 | conftest.c:72:6: warning: incompatible redeclaration of library function 'strerror' [-Wincompatible-library-redeclaration] | char strerror (); | ^ | conftest.c:72:6: note: 'strerror' is a builtin with type 'char *(int)' | 1 warning generated. | configure:18266: $? = 0 | configure:18266: result: yes | configure:18266: checking for strncasecmp | configure:18266: gcc -o conftest -g -O2 conftest.c >&5 | conftest.c:73:6: warning: incompatible redeclaration of library function 'strncasecmp' [-Wincompatible-library-redeclaration] | char strncasecmp (); | ^ | conftest.c:73:6: note: 'strncasecmp' is a builtin with type 'int (const char *, const char *, unsigned long)' | 1 warning generated. | configure:18266: $? = 0 | configure:18266: result: yes | configure:18278: checking for strpbrk | configure:18278: gcc -o conftest -g -O2 conftest.c >&5 | conftest.c:74:6: warning: incompatible redeclaration of library function 'strpbrk' [-Wincompatible-library-redeclaration] | char strpbrk (); | ^ | conftest.c:74:6: note: 'strpbrk' is a builtin with type 'char *(const char *, const char *)' | 1 warning generated. | configure:18278: $? = 0 | configure:18278: result: yes | configure:18278: checking for strchr | configure:18278: gcc -o conftest -g -O2 conftest.c >&5 | conftest.c:75:6: warning: incompatible redeclaration of library function 'strchr' [-Wincompatible-library-redeclaration] | char strchr (); | ^ | conftest.c:75:6: note: 'strchr' is a builtin with type 'char *(const char *, int)' | 1 warning generated. | configure:18278: $? = 0 | configure:18278: result: yes | configure:18278: checking for strrchr | configure:18278: gcc -o conftest -g -O2 conftest.c >&5 | conftest.c:76:6: warning: incompatible redeclaration of library function 'strrchr' [-Wincompatible-library-redeclaration] | char strrchr (); | ^ | conftest.c:76:6: note: 'strrchr' is a builtin with type 'char *(const char *, int)' | 1 warning generated. | configure:18278: $? = 0 | configure:18278: result: yes | configure:18278: checking for strspn | configure:18278: gcc -o conftest -g -O2 conftest.c >&5 | conftest.c:77:6: warning: incompatible redeclaration of library function 'strspn' [-Wincompatible-library-redeclaration] | char strspn (); | ^ | conftest.c:77:6: note: 'strspn' is a builtin with type 'unsigned long (const char *, const char *)' | 1 warning generated. | configure:18278: $? = 0 | configure:18278: result: yes | configure:18278: checking for strtoul | configure:18278: gcc -o conftest -g -O2 conftest.c >&5 | configure:18278: $? = 0 | configure:18278: result: yes | configure:18290: checking for timegm | configure:18290: gcc -o conftest -g -O2 conftest.c >&5 | configure:18290: $? = 0 | configure:18290: result: yes | configure:18290: checking for mktime | configure:18290: gcc -o conftest -g -O2 conftest.c >&5 | configure:18290: $? = 0 | configure:18290: result: yes | configure:18290: checking for atexit | configure:18290: gcc -o conftest -g -O2 conftest.c >&5 | configure:18290: $? = 0 | configure:18290: result: yes | configure:18290: checking for floor | configure:18290: gcc -o conftest -g -O2 conftest.c >&5 | conftest.c:82:6: warning: incompatible redeclaration of library function 'floor' [-Wincompatible-library-redeclaration] | char floor (); | ^ | conftest.c:82:6: note: 'floor' is a builtin with type 'double (double)' | 1 warning generated. | configure:18290: $? = 0 | configure:18290: result: yes | configure:18290: checking for isascii | configure:18290: gcc -o conftest -g -O2 conftest.c >&5 | configure:18290: $? = 0 | configure:18290: result: yes | configure:18290: checking for memmove | configure:18290: gcc -o conftest -g -O2 conftest.c >&5 | conftest.c:84:6: warning: incompatible redeclaration of library function 'memmove' [-Wincompatible-library-redeclaration] | char memmove (); | ^ | conftest.c:84:6: note: 'memmove' is a builtin with type 'void *(void *, const void *, unsigned long)' | 1 warning generated. | configure:18290: $? = 0 | configure:18290: result: yes | configure:18290: checking for memset | configure:18290: gcc -o conftest -g -O2 conftest.c >&5 | conftest.c:85:6: warning: incompatible redeclaration of library function 'memset' [-Wincompatible-library-redeclaration] | char memset (); | ^ | conftest.c:85:6: note: 'memset' is a builtin with type 'void *(void *, int, unsigned long)' | 1 warning generated. | configure:18290: $? = 0 | configure:18290: result: yes | configure:18290: checking for pow | configure:18290: gcc -o conftest -g -O2 conftest.c >&5 | conftest.c:86:6: warning: incompatible redeclaration of library function 'pow' [-Wincompatible-library-redeclaration] | char pow (); | ^ | conftest.c:86:6: note: 'pow' is a builtin with type 'double (double, double)' | 1 warning generated. | configure:18290: $? = 0 | configure:18290: result: yes | configure:18290: checking for sqrt | configure:18290: gcc -o conftest -g -O2 conftest.c >&5 | conftest.c:87:6: warning: incompatible redeclaration of library function 'sqrt' [-Wincompatible-library-redeclaration] | char sqrt (); | ^ | conftest.c:87:6: note: 'sqrt' is a builtin with type 'double (double)' | 1 warning generated. | configure:18290: $? = 0 | configure:18290: result: yes | configure:18301: checking for library containing isdigit | configure:18332: gcc -o conftest -g -O2 conftest.c >&5 | conftest.c:72:6: warning: incompatible redeclaration of library function 'isdigit' [-Wincompatible-library-redeclaration] | char isdigit (); | ^ | conftest.c:72:6: note: 'isdigit' is a builtin with type 'int (int)' | 1 warning generated. | configure:18332: $? = 0 | configure:18349: result: none required | configure:18365: checking for special C compiler options needed for large files | configure:18410: result: no | configure:18416: checking for _FILE_OFFSET_BITS value needed for large files | configure:18441: gcc -c -g -O2 conftest.c >&5 | configure:18441: $? = 0 | configure:18473: result: no | configure:18558: checking for error_at_line | configure:18574: gcc -o conftest -g -O2 conftest.c >&5 | conftest.c:65:10: fatal error: 'error.h' file not found | #include | ^~~~~~~~~ | 1 error generated. | configure:18574: $? = 1 | configure: failed program was: | | /* confdefs.h */ | | #define PACKAGE_NAME "bes" | | #define PACKAGE_TARNAME "bes" | | #define PACKAGE_VERSION "3.19.1" | | #define PACKAGE_STRING "bes 3.19.1" | | #define PACKAGE_BUGREPORT "support@opendap.org" | | #define PACKAGE_URL "" | | #define PACKAGE "bes" | | #define VERSION "3.19.1" | | #define STDC_HEADERS 1 | | #define HAVE_SYS_TYPES_H 1 | | #define HAVE_SYS_STAT_H 1 | | #define HAVE_STDLIB_H 1 | | #define HAVE_STRING_H 1 | | #define HAVE_MEMORY_H 1 | | #define HAVE_STRINGS_H 1 | | #define HAVE_INTTYPES_H 1 | | #define HAVE_STDINT_H 1 | | #define HAVE_UNISTD_H 1 | | #define HAVE_DLFCN_H 1 | | #define LT_OBJDIR ".libs/" | | #define DAPREADER_PACKAGE "dapreader_module" | | #define DAPREADER_VERSION "0.0.1" | | #define YYTEXT_POINTER 1 | | #define STDC_HEADERS 1 | | #define HAVE_FCNTL_H 1 | | #define HAVE_FLOAT_H 1 | | #define HAVE_STDDEF_H 1 | | #define HAVE_STDLIB_H 1 | | #define HAVE_LIMITS_H 1 | | #define HAVE_UNISTD_H 1 | | #define HAVE_PTHREAD_H 1 | | #define HAVE_BZLIB_H 1 | | #define HAVE_STRING_H 1 | | #define HAVE_STRINGS_H 1 | | #define HAVE_SYS_TIME_H 1 | | #define HAVE_UUID_UUID_H 1 | | #define HAVE__BOOL 1 | | #define HAVE_STDBOOL_H 1 | | #define HAVE_PTRDIFF_T 1 | | #define HAVE_ALLOCA_H 1 | | #define HAVE_ALLOCA 1 | | #define HAVE_STRDUP 1 | | #define HAVE_STRFTIME 1 | | #define HAVE_STRTOL 1 | | #define HAVE_STRCASECMP 1 | | #define HAVE_STRCSPN 1 | | #define HAVE_STRERROR 1 | | #define HAVE_STRNCASECMP 1 | | #define HAVE_STRPBRK 1 | | #define HAVE_STRCHR 1 | | #define HAVE_STRRCHR 1 | | #define HAVE_STRSPN 1 | | #define HAVE_STRTOUL 1 | | #define HAVE_TIMEGM 1 | | #define HAVE_MKTIME 1 | | #define HAVE_ATEXIT 1 | | #define HAVE_FLOOR 1 | | #define HAVE_ISASCII 1 | | #define HAVE_MEMMOVE 1 | | #define HAVE_MEMSET 1 | | #define HAVE_POW 1 | | #define HAVE_SQRT 1 | | /* end confdefs.h. */ | | #include | | int | | main () | | { | | error_at_line (0, 0, "", 0, "an error occurred"); | | ; | | return 0; | | } | configure:18582: result: no | configure:18595: checking for stdlib.h | configure:18595: result: yes | configure:18605: checking for GNU libc compatible malloc | configure:18629: gcc -o conftest -g -O2 conftest.c >&5 | configure:18629: $? = 0 | configure:18629: ./conftest | configure:18629: $? = 0 | configure:18639: result: yes | configure:18660: checking for working memcmp | configure:18703: gcc -o conftest -g -O2 conftest.c >&5 | configure:18703: $? = 0 | configure:18703: ./conftest | configure:18703: $? = 0 | configure:18713: result: yes | configure:18722: checking whether time.h and sys/time.h may both be included | configure:18742: gcc -c -g -O2 conftest.c >&5 | configure:18742: $? = 0 | configure:18749: result: yes | configure:18765: checking for alarm | configure:18765: gcc -o conftest -g -O2 conftest.c >&5 | configure:18765: $? = 0 | configure:18765: result: yes | configure:18778: checking for working mktime | configure:18980: gcc -o conftest -g -O2 conftest.c >&5 | configure:18980: $? = 0 | configure:18980: ./conftest | configure:18980: $? = 1 | configure: program exited with status 1 | configure: failed program was: | | /* confdefs.h */ | | #define PACKAGE_NAME "bes" | | #define PACKAGE_TARNAME "bes" | | #define PACKAGE_VERSION "3.19.1" | | #define PACKAGE_STRING "bes 3.19.1" | | #define PACKAGE_BUGREPORT "support@opendap.org" | | #define PACKAGE_URL "" | | #define PACKAGE "bes" | | #define VERSION "3.19.1" | | #define STDC_HEADERS 1 | | #define HAVE_SYS_TYPES_H 1 | | #define HAVE_SYS_STAT_H 1 | | #define HAVE_STDLIB_H 1 | | #define HAVE_STRING_H 1 | | #define HAVE_MEMORY_H 1 | | #define HAVE_STRINGS_H 1 | | #define HAVE_INTTYPES_H 1 | | #define HAVE_STDINT_H 1 | | #define HAVE_UNISTD_H 1 | | #define HAVE_DLFCN_H 1 | | #define LT_OBJDIR ".libs/" | | #define DAPREADER_PACKAGE "dapreader_module" | | #define DAPREADER_VERSION "0.0.1" | | #define YYTEXT_POINTER 1 | | #define STDC_HEADERS 1 | | #define HAVE_FCNTL_H 1 | | #define HAVE_FLOAT_H 1 | | #define HAVE_STDDEF_H 1 | | #define HAVE_STDLIB_H 1 | | #define HAVE_LIMITS_H 1 | | #define HAVE_UNISTD_H 1 | | #define HAVE_PTHREAD_H 1 | | #define HAVE_BZLIB_H 1 | | #define HAVE_STRING_H 1 | | #define HAVE_STRINGS_H 1 | | #define HAVE_SYS_TIME_H 1 | | #define HAVE_UUID_UUID_H 1 | | #define HAVE__BOOL 1 | | #define HAVE_STDBOOL_H 1 | | #define HAVE_PTRDIFF_T 1 | | #define HAVE_ALLOCA_H 1 | | #define HAVE_ALLOCA 1 | | #define HAVE_STRDUP 1 | | #define HAVE_STRFTIME 1 | | #define HAVE_STRTOL 1 | | #define HAVE_STRCASECMP 1 | | #define HAVE_STRCSPN 1 | | #define HAVE_STRERROR 1 | | #define HAVE_STRNCASECMP 1 | | #define HAVE_STRPBRK 1 | | #define HAVE_STRCHR 1 | | #define HAVE_STRRCHR 1 | | #define HAVE_STRSPN 1 | | #define HAVE_STRTOUL 1 | | #define HAVE_TIMEGM 1 | | #define HAVE_MKTIME 1 | | #define HAVE_ATEXIT 1 | | #define HAVE_FLOOR 1 | | #define HAVE_ISASCII 1 | | #define HAVE_MEMMOVE 1 | | #define HAVE_MEMSET 1 | | #define HAVE_POW 1 | | #define HAVE_SQRT 1 | | #define HAVE_STDLIB_H 1 | | #define HAVE_MALLOC 1 | | #define TIME_WITH_SYS_TIME 1 | | #define HAVE_ALARM 1 | | /* end confdefs.h. */ | | /* Test program from Paul Eggert and Tony Leneis. */ | | #ifdef TIME_WITH_SYS_TIME | | # include | | # include | | #else | | # ifdef HAVE_SYS_TIME_H | | # include | | # else | | # include | | # endif | | #endif | | | | #include | | #include | | | | #ifdef HAVE_UNISTD_H | | # include | | #endif | | | | #ifndef HAVE_ALARM | | # define alarm(X) /* empty */ | | #endif | | | | /* Work around redefinition to rpl_putenv by other config tests. */ | | #undef putenv | | | | static time_t time_t_max; | | static time_t time_t_min; | | | | /* Values we'll use to set the TZ environment variable. */ | | static const char *tz_strings[] = { | | (const char *) 0, "TZ=GMT0", "TZ=JST-9", | | "TZ=EST+3EDT+2,M10.1.0/00:00:00,M2.3.0/00:00:00" | | }; | | #define N_STRINGS (sizeof (tz_strings) / sizeof (tz_strings[0])) | | | | /* Return 0 if mktime fails to convert a date in the spring-forward gap. | | Based on a problem report from Andreas Jaeger. */ | | static int | | spring_forward_gap () | | { | | /* glibc (up to about 1998-10-07) failed this test. */ | | struct tm tm; | | | | /* Use the portable POSIX.1 specification "TZ=PST8PDT,M4.1.0,M10.5.0" | | instead of "TZ=America/Vancouver" in order to detect the bug even | | on systems that don't support the Olson extension, or don't have the | | full zoneinfo tables installed. */ | | putenv ((char*) "TZ=PST8PDT,M4.1.0,M10.5.0"); | | | | tm.tm_year = 98; | | tm.tm_mon = 3; | | tm.tm_mday = 5; | | tm.tm_hour = 2; | | tm.tm_min = 0; | | tm.tm_sec = 0; | | tm.tm_isdst = -1; | | return mktime (&tm) != (time_t) -1; | | } | | | | static int | | mktime_test1 (time_t now) | | { | | struct tm *lt; | | return ! (lt = localtime (&now)) || mktime (lt) == now; | | } | | | | static int | | mktime_test (time_t now) | | { | | return (mktime_test1 (now) | | && mktime_test1 ((time_t) (time_t_max - now)) | | && mktime_test1 ((time_t) (time_t_min + now))); | | } | | | | static int | | irix_6_4_bug () | | { | | /* Based on code from Ariel Faigon. */ | | struct tm tm; | | tm.tm_year = 96; | | tm.tm_mon = 3; | | tm.tm_mday = 0; | | tm.tm_hour = 0; | | tm.tm_min = 0; | | tm.tm_sec = 0; | | tm.tm_isdst = -1; | | mktime (&tm); | | return tm.tm_mon == 2 && tm.tm_mday == 31; | | } | | | | static int | | bigtime_test (int j) | | { | | struct tm tm; | | time_t now; | | tm.tm_year = tm.tm_mon = tm.tm_mday = tm.tm_hour = tm.tm_min = tm.tm_sec = j; | | now = mktime (&tm); | | if (now != (time_t) -1) | | { | | struct tm *lt = localtime (&now); | | if (! (lt | | && lt->tm_year == tm.tm_year | | && lt->tm_mon == tm.tm_mon | | && lt->tm_mday == tm.tm_mday | | && lt->tm_hour == tm.tm_hour | | && lt->tm_min == tm.tm_min | | && lt->tm_sec == tm.tm_sec | | && lt->tm_yday == tm.tm_yday | | && lt->tm_wday == tm.tm_wday | | && ((lt->tm_isdst < 0 ? -1 : 0 < lt->tm_isdst) | | == (tm.tm_isdst < 0 ? -1 : 0 < tm.tm_isdst)))) | | return 0; | | } | | return 1; | | } | | | | static int | | year_2050_test () | | { | | /* The correct answer for 2050-02-01 00:00:00 in Pacific time, | | ignoring leap seconds. */ | | unsigned long int answer = 2527315200UL; | | | | struct tm tm; | | time_t t; | | tm.tm_year = 2050 - 1900; | | tm.tm_mon = 2 - 1; | | tm.tm_mday = 1; | | tm.tm_hour = tm.tm_min = tm.tm_sec = 0; | | tm.tm_isdst = -1; | | | | /* Use the portable POSIX.1 specification "TZ=PST8PDT,M4.1.0,M10.5.0" | | instead of "TZ=America/Vancouver" in order to detect the bug even | | on systems that don't support the Olson extension, or don't have the | | full zoneinfo tables installed. */ | | putenv ((char*) "TZ=PST8PDT,M4.1.0,M10.5.0"); | | | | t = mktime (&tm); | | | | /* Check that the result is either a failure, or close enough | | to the correct answer that we can assume the discrepancy is | | due to leap seconds. */ | | return (t == (time_t) -1 | | || (0 < t && answer - 120 <= t && t <= answer + 120)); | | } | | | | int | | main () | | { | | time_t t, delta; | | int i, j; | | | | /* This test makes some buggy mktime implementations loop. | | Give up after 60 seconds; a mktime slower than that | | isn't worth using anyway. */ | | alarm (60); | | | | for (;;) | | { | | t = (time_t_max << 1) + 1; | | if (t <= time_t_max) | | break; | | time_t_max = t; | | } | | time_t_min = - ((time_t) ~ (time_t) 0 == (time_t) -1) - time_t_max; | | | | delta = time_t_max / 997; /* a suitable prime number */ | | for (i = 0; i < N_STRINGS; i++) | | { | | if (tz_strings[i]) | | putenv ((char*) tz_strings[i]); | | | | for (t = 0; t <= time_t_max - delta; t += delta) | | if (! mktime_test (t)) | | return 1; | | if (! (mktime_test ((time_t) 1) | | && mktime_test ((time_t) (60 * 60)) | | && mktime_test ((time_t) (60 * 60 * 24)))) | | return 1; | | | | for (j = 1; ; j <<= 1) | | if (! bigtime_test (j)) | | return 1; | | else if (INT_MAX / 2 < j) | | break; | | if (! bigtime_test (INT_MAX)) | | return 1; | | } | | return ! (irix_6_4_bug () && spring_forward_gap () && year_2050_test ()); | | } | configure:18990: result: no | configure:19003: checking for stdlib.h | configure:19003: result: yes | configure:19013: checking for GNU libc compatible realloc | configure:19037: gcc -o conftest -g -O2 conftest.c >&5 | configure:19037: $? = 0 | configure:19037: ./conftest | configure:19037: $? = 0 | configure:19047: result: yes | configure:19075: checking for working strtod | configure:19116: gcc -o conftest -g -O2 conftest.c >&5 | configure:19116: $? = 0 | configure:19116: ./conftest | configure:19116: $? = 0 | configure:19126: result: yes | configure:19190: checking for vprintf | configure:19190: gcc -o conftest -g -O2 conftest.c >&5 | conftest.c:94:6: warning: incompatible redeclaration of library function 'vprintf' [-Wincompatible-library-redeclaration] | char vprintf (); | ^ | conftest.c:94:6: note: 'vprintf' is a builtin with type 'int (const char *, struct __va_list_tag *)' | 1 warning generated. | configure:19190: $? = 0 | configure:19190: result: yes | configure:19196: checking for _doprnt | configure:19196: gcc -o conftest -g -O2 conftest.c >&5 | Undefined symbols for architecture x86_64: | "__doprnt", referenced from: | _main in conftest-f01d9f.o | ld: symbol(s) not found for architecture x86_64 | clang: error: linker command failed with exit code 1 (use -v to see invocation) | configure:19196: $? = 1 | configure: failed program was: | | /* confdefs.h */ | | #define PACKAGE_NAME "bes" | | #define PACKAGE_TARNAME "bes" | | #define PACKAGE_VERSION "3.19.1" | | #define PACKAGE_STRING "bes 3.19.1" | | #define PACKAGE_BUGREPORT "support@opendap.org" | | #define PACKAGE_URL "" | | #define PACKAGE "bes" | | #define VERSION "3.19.1" | | #define STDC_HEADERS 1 | | #define HAVE_SYS_TYPES_H 1 | | #define HAVE_SYS_STAT_H 1 | | #define HAVE_STDLIB_H 1 | | #define HAVE_STRING_H 1 | | #define HAVE_MEMORY_H 1 | | #define HAVE_STRINGS_H 1 | | #define HAVE_INTTYPES_H 1 | | #define HAVE_STDINT_H 1 | | #define HAVE_UNISTD_H 1 | | #define HAVE_DLFCN_H 1 | | #define LT_OBJDIR ".libs/" | | #define DAPREADER_PACKAGE "dapreader_module" | | #define DAPREADER_VERSION "0.0.1" | | #define YYTEXT_POINTER 1 | | #define STDC_HEADERS 1 | | #define HAVE_FCNTL_H 1 | | #define HAVE_FLOAT_H 1 | | #define HAVE_STDDEF_H 1 | | #define HAVE_STDLIB_H 1 | | #define HAVE_LIMITS_H 1 | | #define HAVE_UNISTD_H 1 | | #define HAVE_PTHREAD_H 1 | | #define HAVE_BZLIB_H 1 | | #define HAVE_STRING_H 1 | | #define HAVE_STRINGS_H 1 | | #define HAVE_SYS_TIME_H 1 | | #define HAVE_UUID_UUID_H 1 | | #define HAVE__BOOL 1 | | #define HAVE_STDBOOL_H 1 | | #define HAVE_PTRDIFF_T 1 | | #define HAVE_ALLOCA_H 1 | | #define HAVE_ALLOCA 1 | | #define HAVE_STRDUP 1 | | #define HAVE_STRFTIME 1 | | #define HAVE_STRTOL 1 | | #define HAVE_STRCASECMP 1 | | #define HAVE_STRCSPN 1 | | #define HAVE_STRERROR 1 | | #define HAVE_STRNCASECMP 1 | | #define HAVE_STRPBRK 1 | | #define HAVE_STRCHR 1 | | #define HAVE_STRRCHR 1 | | #define HAVE_STRSPN 1 | | #define HAVE_STRTOUL 1 | | #define HAVE_TIMEGM 1 | | #define HAVE_MKTIME 1 | | #define HAVE_ATEXIT 1 | | #define HAVE_FLOOR 1 | | #define HAVE_ISASCII 1 | | #define HAVE_MEMMOVE 1 | | #define HAVE_MEMSET 1 | | #define HAVE_POW 1 | | #define HAVE_SQRT 1 | | #define HAVE_STDLIB_H 1 | | #define HAVE_MALLOC 1 | | #define TIME_WITH_SYS_TIME 1 | | #define HAVE_ALARM 1 | | #define HAVE_STDLIB_H 1 | | #define HAVE_REALLOC 1 | | #define HAVE_VPRINTF 1 | | /* end confdefs.h. */ | | /* Define _doprnt to an innocuous variant, in case declares _doprnt. | | For example, HP-UX 11i declares gettimeofday. */ | | #define _doprnt innocuous__doprnt | | | | /* System header to define __stub macros and hopefully few prototypes, | | which can conflict with char _doprnt (); below. | | Prefer to if __STDC__ is defined, since | | exists even on freestanding compilers. */ | | | | #ifdef __STDC__ | | # include | | #else | | # include | | #endif | | | | #undef _doprnt | | | | /* Override any GCC internal prototype to avoid an error. | | Use char because int might match the return type of a GCC | | builtin and then its argument prototype would still apply. */ | | #ifdef __cplusplus | | extern "C" | | #endif | | char _doprnt (); | | /* The GNU C library defines this for functions which it implements | | to always fail with ENOSYS. Some functions are actually named | | something starting with __ and the normal name is an alias. */ | | #if defined __stub__doprnt || defined __stub____doprnt | | choke me | | #endif | | | | int | | main () | | { | | return _doprnt (); | | ; | | return 0; | | } | configure:19196: result: no | configure:19209: checking for BZ2_bzReadOpen in -lbz2 | configure:19234: gcc -o conftest -g -O2 conftest.c -lbz2 >&5 | configure:19234: $? = 0 | configure:19243: result: yes | configure:19272: checking for gzopen in -lz | configure:19297: gcc -o conftest -g -O2 conftest.c -lz >&5 | configure:19297: $? = 0 | configure:19306: result: yes | configure:19313: checking for dlclose | configure:19313: gcc -o conftest -g -O2 conftest.c >&5 | configure:19313: $? = 0 | configure:19313: result: yes | configure:19369: checking for a readline compatible library | configure:19404: gcc -o conftest -g -O2 conftest.c -lreadline >&5 | configure:19404: $? = 0 | configure:19424: result: -lreadline | configure:19437: checking readline.h usability | configure:19437: gcc -c -g -O2 conftest.c >&5 | conftest.c:107:10: fatal error: 'readline.h' file not found | #include | ^~~~~~~~~~~~ | 1 error generated. | configure:19437: $? = 1 | configure: failed program was: | | /* confdefs.h */ | | #define PACKAGE_NAME "bes" | | #define PACKAGE_TARNAME "bes" | | #define PACKAGE_VERSION "3.19.1" | | #define PACKAGE_STRING "bes 3.19.1" | | #define PACKAGE_BUGREPORT "support@opendap.org" | | #define PACKAGE_URL "" | | #define PACKAGE "bes" | | #define VERSION "3.19.1" | | #define STDC_HEADERS 1 | | #define HAVE_SYS_TYPES_H 1 | | #define HAVE_SYS_STAT_H 1 | | #define HAVE_STDLIB_H 1 | | #define HAVE_STRING_H 1 | | #define HAVE_MEMORY_H 1 | | #define HAVE_STRINGS_H 1 | | #define HAVE_INTTYPES_H 1 | | #define HAVE_STDINT_H 1 | | #define HAVE_UNISTD_H 1 | | #define HAVE_DLFCN_H 1 | | #define LT_OBJDIR ".libs/" | | #define DAPREADER_PACKAGE "dapreader_module" | | #define DAPREADER_VERSION "0.0.1" | | #define YYTEXT_POINTER 1 | | #define STDC_HEADERS 1 | | #define HAVE_FCNTL_H 1 | | #define HAVE_FLOAT_H 1 | | #define HAVE_STDDEF_H 1 | | #define HAVE_STDLIB_H 1 | | #define HAVE_LIMITS_H 1 | | #define HAVE_UNISTD_H 1 | | #define HAVE_PTHREAD_H 1 | | #define HAVE_BZLIB_H 1 | | #define HAVE_STRING_H 1 | | #define HAVE_STRINGS_H 1 | | #define HAVE_SYS_TIME_H 1 | | #define HAVE_UUID_UUID_H 1 | | #define HAVE__BOOL 1 | | #define HAVE_STDBOOL_H 1 | | #define HAVE_PTRDIFF_T 1 | | #define HAVE_ALLOCA_H 1 | | #define HAVE_ALLOCA 1 | | #define HAVE_STRDUP 1 | | #define HAVE_STRFTIME 1 | | #define HAVE_STRTOL 1 | | #define HAVE_STRCASECMP 1 | | #define HAVE_STRCSPN 1 | | #define HAVE_STRERROR 1 | | #define HAVE_STRNCASECMP 1 | | #define HAVE_STRPBRK 1 | | #define HAVE_STRCHR 1 | | #define HAVE_STRRCHR 1 | | #define HAVE_STRSPN 1 | | #define HAVE_STRTOUL 1 | | #define HAVE_TIMEGM 1 | | #define HAVE_MKTIME 1 | | #define HAVE_ATEXIT 1 | | #define HAVE_FLOOR 1 | | #define HAVE_ISASCII 1 | | #define HAVE_MEMMOVE 1 | | #define HAVE_MEMSET 1 | | #define HAVE_POW 1 | | #define HAVE_SQRT 1 | | #define HAVE_STDLIB_H 1 | | #define HAVE_MALLOC 1 | | #define TIME_WITH_SYS_TIME 1 | | #define HAVE_ALARM 1 | | #define HAVE_STDLIB_H 1 | | #define HAVE_REALLOC 1 | | #define HAVE_VPRINTF 1 | | #define HAVE_LIBBZ2 1 | | #define HAVE_LIBREADLINE 1 | | /* end confdefs.h. */ | | #include | | #ifdef HAVE_SYS_TYPES_H | | # include | | #endif | | #ifdef HAVE_SYS_STAT_H | | # include | | #endif | | #ifdef STDC_HEADERS | | # include | | # include | | #else | | # ifdef HAVE_STDLIB_H | | # include | | # endif | | #endif | | #ifdef HAVE_STRING_H | | # if !defined STDC_HEADERS && defined HAVE_MEMORY_H | | # include | | # endif | | # include | | #endif | | #ifdef HAVE_STRINGS_H | | # include | | #endif | | #ifdef HAVE_INTTYPES_H | | # include | | #endif | | #ifdef HAVE_STDINT_H | | # include | | #endif | | #ifdef HAVE_UNISTD_H | | # include | | #endif | | #include | configure:19437: result: no | configure:19437: checking readline.h presence | configure:19437: gcc -E conftest.c | conftest.c:74:10: fatal error: 'readline.h' file not found | #include | ^~~~~~~~~~~~ | 1 error generated. | configure:19437: $? = 1 | configure: failed program was: | | /* confdefs.h */ | | #define PACKAGE_NAME "bes" | | #define PACKAGE_TARNAME "bes" | | #define PACKAGE_VERSION "3.19.1" | | #define PACKAGE_STRING "bes 3.19.1" | | #define PACKAGE_BUGREPORT "support@opendap.org" | | #define PACKAGE_URL "" | | #define PACKAGE "bes" | | #define VERSION "3.19.1" | | #define STDC_HEADERS 1 | | #define HAVE_SYS_TYPES_H 1 | | #define HAVE_SYS_STAT_H 1 | | #define HAVE_STDLIB_H 1 | | #define HAVE_STRING_H 1 | | #define HAVE_MEMORY_H 1 | | #define HAVE_STRINGS_H 1 | | #define HAVE_INTTYPES_H 1 | | #define HAVE_STDINT_H 1 | | #define HAVE_UNISTD_H 1 | | #define HAVE_DLFCN_H 1 | | #define LT_OBJDIR ".libs/" | | #define DAPREADER_PACKAGE "dapreader_module" | | #define DAPREADER_VERSION "0.0.1" | | #define YYTEXT_POINTER 1 | | #define STDC_HEADERS 1 | | #define HAVE_FCNTL_H 1 | | #define HAVE_FLOAT_H 1 | | #define HAVE_STDDEF_H 1 | | #define HAVE_STDLIB_H 1 | | #define HAVE_LIMITS_H 1 | | #define HAVE_UNISTD_H 1 | | #define HAVE_PTHREAD_H 1 | | #define HAVE_BZLIB_H 1 | | #define HAVE_STRING_H 1 | | #define HAVE_STRINGS_H 1 | | #define HAVE_SYS_TIME_H 1 | | #define HAVE_UUID_UUID_H 1 | | #define HAVE__BOOL 1 | | #define HAVE_STDBOOL_H 1 | | #define HAVE_PTRDIFF_T 1 | | #define HAVE_ALLOCA_H 1 | | #define HAVE_ALLOCA 1 | | #define HAVE_STRDUP 1 | | #define HAVE_STRFTIME 1 | | #define HAVE_STRTOL 1 | | #define HAVE_STRCASECMP 1 | | #define HAVE_STRCSPN 1 | | #define HAVE_STRERROR 1 | | #define HAVE_STRNCASECMP 1 | | #define HAVE_STRPBRK 1 | | #define HAVE_STRCHR 1 | | #define HAVE_STRRCHR 1 | | #define HAVE_STRSPN 1 | | #define HAVE_STRTOUL 1 | | #define HAVE_TIMEGM 1 | | #define HAVE_MKTIME 1 | | #define HAVE_ATEXIT 1 | | #define HAVE_FLOOR 1 | | #define HAVE_ISASCII 1 | | #define HAVE_MEMMOVE 1 | | #define HAVE_MEMSET 1 | | #define HAVE_POW 1 | | #define HAVE_SQRT 1 | | #define HAVE_STDLIB_H 1 | | #define HAVE_MALLOC 1 | | #define TIME_WITH_SYS_TIME 1 | | #define HAVE_ALARM 1 | | #define HAVE_STDLIB_H 1 | | #define HAVE_REALLOC 1 | | #define HAVE_VPRINTF 1 | | #define HAVE_LIBBZ2 1 | | #define HAVE_LIBREADLINE 1 | | /* end confdefs.h. */ | | #include | configure:19437: result: no | configure:19437: checking for readline.h | configure:19437: result: no | configure:19437: checking readline/readline.h usability | configure:19437: gcc -c -g -O2 conftest.c >&5 | configure:19437: $? = 0 | configure:19437: result: yes | configure:19437: checking readline/readline.h presence | configure:19437: gcc -E conftest.c | configure:19437: $? = 0 | configure:19437: result: yes | configure:19437: checking for readline/readline.h | configure:19437: result: yes | configure:19447: checking whether readline supports history | configure:19472: gcc -o conftest -g -O2 conftest.c -lreadline >&5 | configure:19472: $? = 0 | configure:19479: result: yes | configure:19488: checking history.h usability | configure:19488: gcc -c -g -O2 conftest.c >&5 | conftest.c:109:10: fatal error: 'history.h' file not found | #include | ^~~~~~~~~~~ | 1 error generated. | configure:19488: $? = 1 | configure: failed program was: | | /* confdefs.h */ | | #define PACKAGE_NAME "bes" | | #define PACKAGE_TARNAME "bes" | | #define PACKAGE_VERSION "3.19.1" | | #define PACKAGE_STRING "bes 3.19.1" | | #define PACKAGE_BUGREPORT "support@opendap.org" | | #define PACKAGE_URL "" | | #define PACKAGE "bes" | | #define VERSION "3.19.1" | | #define STDC_HEADERS 1 | | #define HAVE_SYS_TYPES_H 1 | | #define HAVE_SYS_STAT_H 1 | | #define HAVE_STDLIB_H 1 | | #define HAVE_STRING_H 1 | | #define HAVE_MEMORY_H 1 | | #define HAVE_STRINGS_H 1 | | #define HAVE_INTTYPES_H 1 | | #define HAVE_STDINT_H 1 | | #define HAVE_UNISTD_H 1 | | #define HAVE_DLFCN_H 1 | | #define LT_OBJDIR ".libs/" | | #define DAPREADER_PACKAGE "dapreader_module" | | #define DAPREADER_VERSION "0.0.1" | | #define YYTEXT_POINTER 1 | | #define STDC_HEADERS 1 | | #define HAVE_FCNTL_H 1 | | #define HAVE_FLOAT_H 1 | | #define HAVE_STDDEF_H 1 | | #define HAVE_STDLIB_H 1 | | #define HAVE_LIMITS_H 1 | | #define HAVE_UNISTD_H 1 | | #define HAVE_PTHREAD_H 1 | | #define HAVE_BZLIB_H 1 | | #define HAVE_STRING_H 1 | | #define HAVE_STRINGS_H 1 | | #define HAVE_SYS_TIME_H 1 | | #define HAVE_UUID_UUID_H 1 | | #define HAVE__BOOL 1 | | #define HAVE_STDBOOL_H 1 | | #define HAVE_PTRDIFF_T 1 | | #define HAVE_ALLOCA_H 1 | | #define HAVE_ALLOCA 1 | | #define HAVE_STRDUP 1 | | #define HAVE_STRFTIME 1 | | #define HAVE_STRTOL 1 | | #define HAVE_STRCASECMP 1 | | #define HAVE_STRCSPN 1 | | #define HAVE_STRERROR 1 | | #define HAVE_STRNCASECMP 1 | | #define HAVE_STRPBRK 1 | | #define HAVE_STRCHR 1 | | #define HAVE_STRRCHR 1 | | #define HAVE_STRSPN 1 | | #define HAVE_STRTOUL 1 | | #define HAVE_TIMEGM 1 | | #define HAVE_MKTIME 1 | | #define HAVE_ATEXIT 1 | | #define HAVE_FLOOR 1 | | #define HAVE_ISASCII 1 | | #define HAVE_MEMMOVE 1 | | #define HAVE_MEMSET 1 | | #define HAVE_POW 1 | | #define HAVE_SQRT 1 | | #define HAVE_STDLIB_H 1 | | #define HAVE_MALLOC 1 | | #define TIME_WITH_SYS_TIME 1 | | #define HAVE_ALARM 1 | | #define HAVE_STDLIB_H 1 | | #define HAVE_REALLOC 1 | | #define HAVE_VPRINTF 1 | | #define HAVE_LIBBZ2 1 | | #define HAVE_LIBREADLINE 1 | | #define HAVE_READLINE_READLINE_H 1 | | #define HAVE_READLINE_HISTORY 1 | | /* end confdefs.h. */ | | #include | | #ifdef HAVE_SYS_TYPES_H | | # include | | #endif | | #ifdef HAVE_SYS_STAT_H | | # include | | #endif | | #ifdef STDC_HEADERS | | # include | | # include | | #else | | # ifdef HAVE_STDLIB_H | | # include | | # endif | | #endif | | #ifdef HAVE_STRING_H | | # if !defined STDC_HEADERS && defined HAVE_MEMORY_H | | # include | | # endif | | # include | | #endif | | #ifdef HAVE_STRINGS_H | | # include | | #endif | | #ifdef HAVE_INTTYPES_H | | # include | | #endif | | #ifdef HAVE_STDINT_H | | # include | | #endif | | #ifdef HAVE_UNISTD_H | | # include | | #endif | | #include | configure:19488: result: no | configure:19488: checking history.h presence | configure:19488: gcc -E conftest.c | conftest.c:76:10: fatal error: 'history.h' file not found | #include | ^~~~~~~~~~~ | 1 error generated. | configure:19488: $? = 1 | configure: failed program was: | | /* confdefs.h */ | | #define PACKAGE_NAME "bes" | | #define PACKAGE_TARNAME "bes" | | #define PACKAGE_VERSION "3.19.1" | | #define PACKAGE_STRING "bes 3.19.1" | | #define PACKAGE_BUGREPORT "support@opendap.org" | | #define PACKAGE_URL "" | | #define PACKAGE "bes" | | #define VERSION "3.19.1" | | #define STDC_HEADERS 1 | | #define HAVE_SYS_TYPES_H 1 | | #define HAVE_SYS_STAT_H 1 | | #define HAVE_STDLIB_H 1 | | #define HAVE_STRING_H 1 | | #define HAVE_MEMORY_H 1 | | #define HAVE_STRINGS_H 1 | | #define HAVE_INTTYPES_H 1 | | #define HAVE_STDINT_H 1 | | #define HAVE_UNISTD_H 1 | | #define HAVE_DLFCN_H 1 | | #define LT_OBJDIR ".libs/" | | #define DAPREADER_PACKAGE "dapreader_module" | | #define DAPREADER_VERSION "0.0.1" | | #define YYTEXT_POINTER 1 | | #define STDC_HEADERS 1 | | #define HAVE_FCNTL_H 1 | | #define HAVE_FLOAT_H 1 | | #define HAVE_STDDEF_H 1 | | #define HAVE_STDLIB_H 1 | | #define HAVE_LIMITS_H 1 | | #define HAVE_UNISTD_H 1 | | #define HAVE_PTHREAD_H 1 | | #define HAVE_BZLIB_H 1 | | #define HAVE_STRING_H 1 | | #define HAVE_STRINGS_H 1 | | #define HAVE_SYS_TIME_H 1 | | #define HAVE_UUID_UUID_H 1 | | #define HAVE__BOOL 1 | | #define HAVE_STDBOOL_H 1 | | #define HAVE_PTRDIFF_T 1 | | #define HAVE_ALLOCA_H 1 | | #define HAVE_ALLOCA 1 | | #define HAVE_STRDUP 1 | | #define HAVE_STRFTIME 1 | | #define HAVE_STRTOL 1 | | #define HAVE_STRCASECMP 1 | | #define HAVE_STRCSPN 1 | | #define HAVE_STRERROR 1 | | #define HAVE_STRNCASECMP 1 | | #define HAVE_STRPBRK 1 | | #define HAVE_STRCHR 1 | | #define HAVE_STRRCHR 1 | | #define HAVE_STRSPN 1 | | #define HAVE_STRTOUL 1 | | #define HAVE_TIMEGM 1 | | #define HAVE_MKTIME 1 | | #define HAVE_ATEXIT 1 | | #define HAVE_FLOOR 1 | | #define HAVE_ISASCII 1 | | #define HAVE_MEMMOVE 1 | | #define HAVE_MEMSET 1 | | #define HAVE_POW 1 | | #define HAVE_SQRT 1 | | #define HAVE_STDLIB_H 1 | | #define HAVE_MALLOC 1 | | #define TIME_WITH_SYS_TIME 1 | | #define HAVE_ALARM 1 | | #define HAVE_STDLIB_H 1 | | #define HAVE_REALLOC 1 | | #define HAVE_VPRINTF 1 | | #define HAVE_LIBBZ2 1 | | #define HAVE_LIBREADLINE 1 | | #define HAVE_READLINE_READLINE_H 1 | | #define HAVE_READLINE_HISTORY 1 | | /* end confdefs.h. */ | | #include | configure:19488: result: no | configure:19488: checking for history.h | configure:19488: result: no | configure:19488: checking readline/history.h usability | configure:19488: gcc -c -g -O2 conftest.c >&5 | configure:19488: $? = 0 | configure:19488: result: yes | configure:19488: checking readline/history.h presence | configure:19488: gcc -E conftest.c | configure:19488: $? = 0 | configure:19488: result: yes | configure:19488: checking for readline/history.h | configure:19488: result: yes | configure:19561: checking for pkg-config | configure:19594: result: no | configure:19630: checking for XML2 | configure:19709: result: no; used pkg-config | configure:19711: checking for libxml2 version >= 2.6.16 | configure:19735: result: yes; used xml2-config | configure:19748: checking for sys_errlist | configure:19764: gcc -o conftest -g -O2 conftest.c >&5 | configure:19764: $? = 0 | configure:19772: result: yes | configure:19801: checking for DAP | configure:19872: checking for DAP_CLIENT | configure:19943: checking for DAP_SERVER | configure:20016: checking for dap-config | configure:20034: found /Users/jimg/src/opendap/hyrax_git/build/bin/dap-config | configure:20047: result: /Users/jimg/src/opendap/hyrax_git/build/bin/dap-config | configure:20100: checking for libdap version >= 3.18.0 | configure:20103: result: yes | configure:20164: checking whether to use libwrap | configure:20224: result: no | configure:20230: checking for tr1/functional | configure:20253: g++ -c -g3 -O0 -Wall -W -Wcast-align -fsanitize=address -fno-omit-frame-pointer conftest.cpp >&5 | conftest.cpp:78:10: fatal error: 'tr1/functional' file not found | #include | ^~~~~~~~~~~~~~~~ | 1 error generated. | configure:20253: $? = 1 | configure: failed program was: | | /* confdefs.h */ | | #define PACKAGE_NAME "bes" | | #define PACKAGE_TARNAME "bes" | | #define PACKAGE_VERSION "3.19.1" | | #define PACKAGE_STRING "bes 3.19.1" | | #define PACKAGE_BUGREPORT "support@opendap.org" | | #define PACKAGE_URL "" | | #define PACKAGE "bes" | | #define VERSION "3.19.1" | | #define STDC_HEADERS 1 | | #define HAVE_SYS_TYPES_H 1 | | #define HAVE_SYS_STAT_H 1 | | #define HAVE_STDLIB_H 1 | | #define HAVE_STRING_H 1 | | #define HAVE_MEMORY_H 1 | | #define HAVE_STRINGS_H 1 | | #define HAVE_INTTYPES_H 1 | | #define HAVE_STDINT_H 1 | | #define HAVE_UNISTD_H 1 | | #define HAVE_DLFCN_H 1 | | #define LT_OBJDIR ".libs/" | | #define DAPREADER_PACKAGE "dapreader_module" | | #define DAPREADER_VERSION "0.0.1" | | #define YYTEXT_POINTER 1 | | #define STDC_HEADERS 1 | | #define HAVE_FCNTL_H 1 | | #define HAVE_FLOAT_H 1 | | #define HAVE_STDDEF_H 1 | | #define HAVE_STDLIB_H 1 | | #define HAVE_LIMITS_H 1 | | #define HAVE_UNISTD_H 1 | | #define HAVE_PTHREAD_H 1 | | #define HAVE_BZLIB_H 1 | | #define HAVE_STRING_H 1 | | #define HAVE_STRINGS_H 1 | | #define HAVE_SYS_TIME_H 1 | | #define HAVE_UUID_UUID_H 1 | | #define HAVE__BOOL 1 | | #define HAVE_STDBOOL_H 1 | | #define HAVE_PTRDIFF_T 1 | | #define HAVE_ALLOCA_H 1 | | #define HAVE_ALLOCA 1 | | #define HAVE_STRDUP 1 | | #define HAVE_STRFTIME 1 | | #define HAVE_STRTOL 1 | | #define HAVE_STRCASECMP 1 | | #define HAVE_STRCSPN 1 | | #define HAVE_STRERROR 1 | | #define HAVE_STRNCASECMP 1 | | #define HAVE_STRPBRK 1 | | #define HAVE_STRCHR 1 | | #define HAVE_STRRCHR 1 | | #define HAVE_STRSPN 1 | | #define HAVE_STRTOUL 1 | | #define HAVE_TIMEGM 1 | | #define HAVE_MKTIME 1 | | #define HAVE_ATEXIT 1 | | #define HAVE_FLOOR 1 | | #define HAVE_ISASCII 1 | | #define HAVE_MEMMOVE 1 | | #define HAVE_MEMSET 1 | | #define HAVE_POW 1 | | #define HAVE_SQRT 1 | | #define HAVE_STDLIB_H 1 | | #define HAVE_MALLOC 1 | | #define TIME_WITH_SYS_TIME 1 | | #define HAVE_ALARM 1 | | #define HAVE_STDLIB_H 1 | | #define HAVE_REALLOC 1 | | #define HAVE_VPRINTF 1 | | #define HAVE_LIBBZ2 1 | | #define HAVE_LIBREADLINE 1 | | #define HAVE_READLINE_READLINE_H 1 | | #define HAVE_READLINE_HISTORY 1 | | #define HAVE_READLINE_HISTORY_H 1 | | #define HAVE_SYS_ERRLIST 1 | | /* end confdefs.h. */ | | #include | | int | | main () | | { | | using std::tr1::hash; | | ; | | return 0; | | } | configure:20268: result: no | configure:20312: checking for cppunit-config | configure:20330: found /usr/local/bin/cppunit-config | configure:20343: result: /usr/local/bin/cppunit-config | configure:20353: checking for Cppunit - version >= 1.12.0 | configure:20399: result: 1.13.2 | configure:20563: result: Using /Users/jimg/src/opendap/hyrax_git/build/deps as the dependencies prefix | configure:20675: checking for pkg-config | configure:20708: result: no | configure:20790: checking for curl-config | configure:20808: found /usr/bin/curl-config | configure:20820: result: /usr/bin/curl-config | configure:20844: checking for libcurl using curl-config | configure:20863: result: yes; found version 7.54.0 | configure:20879: checking the OS type for the freeform code | configure:20903: result: set to -DLINUX | configure:20912: checking the netCDF library | configure:21039: checking for nc_open in -lnetcdf | configure:21064: gcc -o conftest -g -O2 -L/Users/jimg/src/opendap/hyrax_git/build/deps/lib conftest.c -lnetcdf -lcurl -lhdf5_hl -lhdf5 -ldl -lz -lm >&5 | configure:21064: $? = 0 | configure:21074: result: yes | configure:21184: checking for netcdf.h with compiler | configure:21190: gcc -c -g -O2 -I/Users/jimg/src/opendap/hyrax_git/build/deps/include conftest.c >&5 | configure:21190: $? = 0 | configure:21192: result: yes | configure:21204: checking for netcdf.h with preprocessor | configure:21210: gcc -E -I/Users/jimg/src/opendap/hyrax_git/build/deps/include conftest.c | configure:21210: $? = 0 | configure:21212: result: yes | configure:21233: checking for netcdf 3 interface | configure:21256: gcc -c -g -O2 -I/Users/jimg/src/opendap/hyrax_git/build/deps/include conftest.c >&5 | configure:21256: $? = 0 | configure:21270: result: yes | configure:21460: result: -lnetcdf -lcurl -lhdf5_hl -lhdf5 -ldl | configure:21480: checking for nc_inq_libvers in -lnetcdf | configure:21505: gcc -o conftest -g -O2 conftest.c -lnetcdf -L/Users/jimg/src/opendap/hyrax_git/build/deps/lib -lnetcdf -lcurl -lhdf5_hl -lhdf5 -ldl >&5 | configure:21505: $? = 0 | configure:21514: result: yes | configure:21535: checking the netCDF library version number | configure:21537: result: 4 | configure:21541: NC_BIN is /Users/jimg/src/opendap/hyrax_git/build/deps/bin | configure:21576: Using /Users/jimg/src/opendap/hyrax_git/build/deps as the GDAL prefix directory. | configure:21581: Set GDAL_LDFLAGS to -L/Users/jimg/src/opendap/hyrax_git/build/deps/lib -lgdal -L/usr/local/lib -lexpat -L/Users/jimg/src/opendap/hyrax_git/build/deps/lib -lopenjp2 -lpng -lz -lpthread -ldl -lcurl -liconv -L/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.13.sdk/usr/lib -lxml2 -lz -lpthread -licucore -lm. | configure:21819: checking for opj_version in -lopenjp2 | configure:21844: gcc -o conftest -g -O2 conftest.c -lopenjp2 -lm -L/Users/jimg/src/opendap/hyrax_git/build/deps/lib >&5 | configure:21844: $? = 0 | configure:21853: result: yes | configure:21873: Found OPENJPEG; building GMLJP2 support. | configure:21940: checking for fits_is_url_absolute in -lcfitsio | configure:21966: gcc -o conftest -g -O2 -L/Users/jimg/src/opendap/hyrax_git/build/deps/lib conftest.c -lcfitsio -lm | >&5 | configure:21966: $? = 0 | configure:21975: result: yes | configure:21996: checking fitsio.h usability | configure:21996: gcc -c -g -O2 -I/Users/jimg/src/opendap/hyrax_git/build/deps/include conftest.c >&5 | configure:21996: $? = 0 | configure:21996: result: yes | configure:21996: checking fitsio.h presence | configure:21996: gcc -E -I/Users/jimg/src/opendap/hyrax_git/build/deps/include conftest.c | configure:21996: $? = 0 | configure:21996: result: yes | configure:21996: checking for fitsio.h | configure:21996: result: yes | configure:22086: -------------------------------------------------- | configure:22088: HDF4_PATH is: /Users/jimg/src/opendap/hyrax_git/build/deps | configure:22090: HDF4_PATH_LIBDIR: /Users/jimg/src/opendap/hyrax_git/build/deps/lib | configure:22092: HDF4_PATH_INC: /Users/jimg/src/opendap/hyrax_git/build/deps/include | configure:22099: H4_CC: /Users/jimg/src/opendap/hyrax_git/build/deps/bin/h4cc | configure:22107: --------------- Searching for HDF4 Libraries ------------------------ | configure:22115: HDF4_PATH_LIBDIR is set | configure:22127: checking for SZ_BufftoBuffCompress in -lsz | configure:22147: gcc -o conftest -g -O2 -L/Users/jimg/src/opendap/hyrax_git/build/deps/lib conftest.c -lsz >&5 | ld: library not found for -lsz | clang: error: linker command failed with exit code 1 (use -v to see invocation) | configure:22147: $? = 1 | configure: failed program was: | | /* confdefs.h */ | | #define PACKAGE_NAME "bes" | | #define PACKAGE_TARNAME "bes" | | #define PACKAGE_VERSION "3.19.1" | | #define PACKAGE_STRING "bes 3.19.1" | | #define PACKAGE_BUGREPORT "support@opendap.org" | | #define PACKAGE_URL "" | | #define PACKAGE "bes" | | #define VERSION "3.19.1" | | #define STDC_HEADERS 1 | | #define HAVE_SYS_TYPES_H 1 | | #define HAVE_SYS_STAT_H 1 | | #define HAVE_STDLIB_H 1 | | #define HAVE_STRING_H 1 | | #define HAVE_MEMORY_H 1 | | #define HAVE_STRINGS_H 1 | | #define HAVE_INTTYPES_H 1 | | #define HAVE_STDINT_H 1 | | #define HAVE_UNISTD_H 1 | | #define HAVE_DLFCN_H 1 | | #define LT_OBJDIR ".libs/" | | #define DAPREADER_PACKAGE "dapreader_module" | | #define DAPREADER_VERSION "0.0.1" | | #define YYTEXT_POINTER 1 | | #define STDC_HEADERS 1 | | #define HAVE_FCNTL_H 1 | | #define HAVE_FLOAT_H 1 | | #define HAVE_STDDEF_H 1 | | #define HAVE_STDLIB_H 1 | | #define HAVE_LIMITS_H 1 | | #define HAVE_UNISTD_H 1 | | #define HAVE_PTHREAD_H 1 | | #define HAVE_BZLIB_H 1 | | #define HAVE_STRING_H 1 | | #define HAVE_STRINGS_H 1 | | #define HAVE_SYS_TIME_H 1 | | #define HAVE_UUID_UUID_H 1 | | #define HAVE__BOOL 1 | | #define HAVE_STDBOOL_H 1 | | #define HAVE_PTRDIFF_T 1 | | #define HAVE_ALLOCA_H 1 | | #define HAVE_ALLOCA 1 | | #define HAVE_STRDUP 1 | | #define HAVE_STRFTIME 1 | | #define HAVE_STRTOL 1 | | #define HAVE_STRCASECMP 1 | | #define HAVE_STRCSPN 1 | | #define HAVE_STRERROR 1 | | #define HAVE_STRNCASECMP 1 | | #define HAVE_STRPBRK 1 | | #define HAVE_STRCHR 1 | | #define HAVE_STRRCHR 1 | | #define HAVE_STRSPN 1 | | #define HAVE_STRTOUL 1 | | #define HAVE_TIMEGM 1 | | #define HAVE_MKTIME 1 | | #define HAVE_ATEXIT 1 | | #define HAVE_FLOOR 1 | | #define HAVE_ISASCII 1 | | #define HAVE_MEMMOVE 1 | | #define HAVE_MEMSET 1 | | #define HAVE_POW 1 | | #define HAVE_SQRT 1 | | #define HAVE_STDLIB_H 1 | | #define HAVE_MALLOC 1 | | #define TIME_WITH_SYS_TIME 1 | | #define HAVE_ALARM 1 | | #define HAVE_STDLIB_H 1 | | #define HAVE_REALLOC 1 | | #define HAVE_VPRINTF 1 | | #define HAVE_LIBBZ2 1 | | #define HAVE_LIBREADLINE 1 | | #define HAVE_READLINE_READLINE_H 1 | | #define HAVE_READLINE_HISTORY 1 | | #define HAVE_READLINE_HISTORY_H 1 | | #define HAVE_SYS_ERRLIST 1 | | #define DAP_PROTOCOL_VERSION "3.2" | | #define ENABLE_UNIT_TESTS 1 | | #define NETCDF_VERSION 4 | | #define HAVE_FITSIO_H 1 | | /* end confdefs.h. */ | | | | /* Override any GCC internal prototype to avoid an error. | | Use char because int might match the return type of a GCC | | builtin and then its argument prototype would still apply. */ | | #ifdef __cplusplus | | extern "C" | | #endif | | char SZ_BufftoBuffCompress (); | | int | | main () | | { | | return SZ_BufftoBuffCompress (); | | ; | | return 0; | | } | configure:22155: result: no | configure:22178: checking for deflate in -lz | configure:22198: gcc -o conftest -g -O2 -L/Users/jimg/src/opendap/hyrax_git/build/deps/lib conftest.c -lz >&5 | configure:22198: $? = 0 | configure:22201: result: yes | configure:22218: checking for jpeg_start_compress in -ljpeg | configure:22238: gcc -o conftest -g -O2 -L/Users/jimg/src/opendap/hyrax_git/build/deps/lib conftest.c -ljpeg >&5 | configure:22238: $? = 0 | configure:22241: result: yes | configure:22258: checking for Hopen in -ldf | configure:22278: gcc -o conftest -g -O2 -L/Users/jimg/src/opendap/hyrax_git/build/deps/lib conftest.c -ldf -ljpeg -lz >&5 | configure:22278: $? = 0 | configure:22281: result: yes | configure:22298: checking for SDstart in -lmfhdf | configure:22318: gcc -o conftest -g -O2 -L/Users/jimg/src/opendap/hyrax_git/build/deps/lib conftest.c -lmfhdf -ldf -ljpeg -lz >&5 | configure:22318: $? = 0 | configure:22321: result: yes | configure:22643: --------------- Searching for HDF4 headers ------------------------ | configure:22651: HDF4_PATH_INC is set | configure:22658: checking for mfhdf.h with compiler | configure:22664: gcc -c -g -O2 -I/Users/jimg/src/opendap/hyrax_git/build/deps/include conftest.c >&5 | configure:22664: $? = 0 | configure:22666: result: yes | configure:22677: checking for mfhdf.h with preprocessor | configure:22683: gcc -E -I/Users/jimg/src/opendap/hyrax_git/build/deps/include conftest.c | configure:22683: $? = 0 | configure:22685: result: yes | configure:22786: ac_hdf4_h: yes | configure:22788: ac_hdf4_lib_ok: yes | configure:22815: CC: gcc | configure:22817: HDF4_PATH: /Users/jimg/src/opendap/hyrax_git/build/deps | configure:22819: HDF4_LIBS: -lmfhdf -ldf -ljpeg -lz | configure:22821: HDF4_CFLAGS: -I/Users/jimg/src/opendap/hyrax_git/build/deps/include | configure:22823: HDF4_LDFLAGS: -L/Users/jimg/src/opendap/hyrax_git/build/deps/lib | configure:22846: HDFEOS2 set to true | configure:22931: checking for H5open in -lhdf5 | configure:22956: gcc -o conftest -g -O2 -L/Users/jimg/src/opendap/hyrax_git/build/deps/lib conftest.c -lhdf5 -lhdf5_hl -ldl -lz -lm >&5 | configure:22956: $? = 0 | configure:22966: result: yes | configure:23080: checking for hdf5.h with compiler | configure:23086: gcc -c -g -O2 -I/Users/jimg/src/opendap/hyrax_git/build/deps/include conftest.c >&5 | configure:23086: $? = 0 | configure:23088: result: yes | configure:23100: checking for hdf5.h with preprocessor | configure:23106: gcc -E -I/Users/jimg/src/opendap/hyrax_git/build/deps/include conftest.c | configure:23106: $? = 0 | configure:23108: result: yes | configure:23270: checking for icu version >= 3.6 | configure:23293: ICU_PATH: /Users/jimg/src/opendap/hyrax_git/build/deps | configure:23354: checking for icu-config | configure:23372: found /Users/jimg/src/opendap/hyrax_git/build/deps/bin/icu-config | configure:23384: result: /Users/jimg/src/opendap/hyrax_git/build/deps/bin/icu-config | configure:23445: checking for icu (3.6) >= 3.6 | configure:23480: result: yes | configure:23494: ICU_CPPFLAGS= | configure:23496: ICU_LIBS=-lpthread -lm -L/Users/jimg/src/opendap/hyrax_git/build/deps/lib -licui18n -licuuc -licudata -lpthread -lm | configure:23597: checking for libgridfields 1.0.3 | configure:23630: result: yes; used gridfields-config | configure:23995: checking that generated files are newer than configure | configure:24001: result: done | configure:24220: creating ./config.status | | ## ---------------------- ## | ## Running config.status. ## | ## ---------------------- ## | | This file was extended by bes config.status 3.19.1, which was | generated by GNU Autoconf 2.69. Invocation command line was | | CONFIG_FILES = | CONFIG_HEADERS = | CONFIG_LINKS = | CONFIG_COMMANDS = | $ ./config.status | | on edamame.local | | config.status:1525: creating Makefile | config.status:1525: creating abi_checker.xml | config.status:1525: creating bes_dispatch.pc | config.status:1525: creating bes_ppt.pc | config.status:1525: creating bes_xml_command.pc | config.status:1525: creating doxy.conf | config.status:1525: creating main_page.doxygen | config.status:1525: creating dispatch/Makefile | config.status:1525: creating dispatch/unit-tests/Makefile | config.status:1525: creating dispatch/tests/Makefile | config.status:1525: creating dispatch/tests/atlocal | config.status:1525: creating hello_world/Makefile | config.status:1525: creating hello_world/tests/Makefile | config.status:1525: creating hello_world/tests/atlocal | config.status:1525: creating docs/Makefile | config.status:1525: creating xmlcommand/Makefile | config.status:1525: creating xmlcommand/unit-tests/Makefile | config.status:1525: creating xmlcommand/tests/Makefile | config.status:1525: creating xmlcommand/tests/atlocal | config.status:1525: creating ppt/Makefile | config.status:1525: creating ppt/unit-tests/Makefile | config.status:1525: creating cmdln/Makefile | config.status:1525: creating cmdln/unit-tests/Makefile | config.status:1525: creating cmdln/tests/Makefile | config.status:1525: creating cmdln/tests/atlocal | config.status:1525: creating standalone/Makefile | config.status:1525: creating server/Makefile | config.status:1525: creating bin/Makefile | config.status:1525: creating templates/Makefile | config.status:1525: creating dap/Makefile | config.status:1525: creating dap/unit-tests/Makefile | config.status:1525: creating dap/tests/Makefile | config.status:1525: creating dap/tests/atlocal | config.status:1525: creating dapreader/Makefile | config.status:1525: creating dapreader/tests/Makefile | config.status:1525: creating dapreader/tests/atlocal | config.status:1525: creating functions/Makefile | config.status:1525: creating functions/tests/Makefile | config.status:1525: creating functions/tests/atlocal | config.status:1525: creating functions/unit-tests/Makefile | config.status:1525: creating bes-config | config.status:1525: creating besd | config.status:1525: creating server/besctl | config.status:1525: creating server/hyraxctl | config.status:1525: creating modules/Makefile | config.status:1525: creating modules/csv_handler/Makefile | config.status:1525: creating modules/csv_handler/tests/Makefile | config.status:1525: creating modules/csv_handler/tests/atlocal | config.status:1525: creating modules/usage/Makefile | config.status:1525: creating modules/asciival/Makefile | config.status:1525: creating modules/asciival/tests/Makefile | config.status:1525: creating modules/asciival/tests/atlocal | config.status:1525: creating modules/asciival/unit-tests/Makefile | config.status:1525: creating modules/www-interface/Makefile | config.status:1525: creating modules/debug_functions/Makefile | config.status:1525: creating modules/debug_functions/unit-tests/Makefile | config.status:1525: creating modules/debug_functions/tests/Makefile | config.status:1525: creating modules/debug_functions/tests/atlocal | config.status:1525: creating modules/dmrpp_module/Makefile | config.status:1525: creating modules/dmrpp_module/unit-tests/Makefile | config.status:1525: creating modules/dmrpp_module/tests/Makefile | config.status:1525: creating modules/dmrpp_module/tests/atlocal | config.status:1525: creating modules/dmrpp_module/data/Makefile | config.status:1525: creating modules/fileout_json/Makefile | config.status:1525: creating modules/fileout_json/unit-tests/Makefile | config.status:1525: creating modules/fileout_json/tests/Makefile | config.status:1525: creating modules/fileout_json/tests/atlocal | config.status:1525: creating modules/fileout_covjson/Makefile | config.status:1525: creating modules/fileout_covjson/unit-tests/Makefile | config.status:1525: creating modules/fileout_covjson/tests/Makefile | config.status:1525: creating modules/fileout_covjson/tests/atlocal | config.status:1525: creating modules/freeform_handler/Makefile | config.status:1525: creating modules/freeform_handler/tests/Makefile | config.status:1525: creating modules/freeform_handler/tests/atlocal | config.status:1525: creating modules/freeform_handler/FFND/Makefile | config.status:1525: creating modules/xml_data_handler/Makefile | config.status:1525: creating modules/xml_data_handler/unit-tests/Makefile | config.status:1525: creating modules/xml_data_handler/tests/Makefile | config.status:1525: creating modules/xml_data_handler/tests/atlocal | config.status:1525: creating modules/netcdf_handler/Makefile | config.status:1525: creating modules/netcdf_handler/tests/Makefile | config.status:1525: creating modules/netcdf_handler/tests/atlocal | config.status:1525: creating modules/fileout_netcdf/Makefile | config.status:1525: creating modules/fileout_netcdf/tests/Makefile | config.status:1525: creating modules/fileout_netcdf/tests/atlocal | config.status:1525: creating modules/fileout_netcdf/data/build_test_data/Makefile | config.status:1525: creating modules/gateway_module/Makefile | config.status:1525: creating modules/gateway_module/tests/Makefile | config.status:1525: creating modules/gateway_module/tests/atlocal | config.status:1525: creating modules/fileout_gdal/Makefile | config.status:1525: creating modules/fileout_gdal/tests/Makefile | config.status:1525: creating modules/fileout_gdal/tests/atlocal | config.status:1525: creating modules/fits_handler/Makefile | config.status:1525: creating modules/fits_handler/tests/atlocal | config.status:1525: creating modules/fits_handler/tests/Makefile | config.status:1525: creating modules/gdal_handler/Makefile | config.status:1525: creating modules/gdal_handler/tests/Makefile | config.status:1525: creating modules/gdal_handler/tests/atlocal | config.status:1525: creating modules/hdf4_handler/Makefile | config.status:1525: creating modules/hdf4_handler/hdfclass/Makefile | config.status:1525: creating modules/hdf4_handler/bes-testsuite/Makefile | config.status:1525: creating modules/hdf4_handler/bes-testsuite/atlocal | config.status:1525: creating modules/hdf5_handler/Makefile | config.status:1525: creating modules/hdf5_handler/bes-testsuite/Makefile | config.status:1525: creating modules/hdf5_handler/bes-testsuite/atlocal | config.status:1525: creating modules/hdf5_handler/gctp/Makefile | config.status:1525: creating modules/hdf5_handler/gctp/src/Makefile | config.status:1525: creating modules/ncml_module/Makefile | config.status:1525: creating modules/ncml_module/tests/Makefile | config.status:1525: creating modules/ncml_module/tests/atlocal | config.status:1525: creating modules/ugrid_functions/Makefile | config.status:1525: creating modules/ugrid_functions/unit-tests/Makefile | config.status:1525: creating modules/ugrid_functions/tests/Makefile | config.status:1525: creating modules/ugrid_functions/tests/atlocal | config.status:1525: creating modules/w10n_handler/Makefile | config.status:1525: creating modules/w10n_handler/unit-tests/Makefile | config.status:1525: creating modules/w10n_handler/tests/Makefile | config.status:1525: creating modules/w10n_handler/tests/atlocal | config.status:1525: creating modules/xml_data_handler/tests/generate_metadata_baseline.sh | config.status:1525: creating modules/xml_data_handler/tests/generate_data_baseline.sh | config.status:1525: creating modules/fits_handler/tests/generate_metadata_baseline.sh | config.status:1525: creating modules/fits_handler/tests/generate_data_baseline.sh | config.status:1525: creating modules/hdf4_handler/bes-testsuite/generate_metadata_baseline.sh | config.status:1525: creating modules/www-interface/js2h.pl | config.status:1525: creating config.h | config.status:1706: config.h is unchanged | config.status:1754: executing depfiles commands | config.status:1754: executing libtool commands | config.status:1754: executing cmdln/tests/atconfig commands | config.status:1754: executing hello_world/tests/atconfig commands | config.status:1754: executing dapreader/tests/atconfig commands | config.status:1754: executing dap/tests/atconfig commands | config.status:1754: executing functions/tests/atconfig commands | config.status:1754: executing dispatch/tests/atconfig commands | config.status:1754: executing xmlcommand/tests/atconfig commands | config.status:1754: executing modules/csv_handler/tests/atconfig commands | config.status:1754: executing modules/asciival/tests/atconfig commands | config.status:1754: executing modules/fileout_json/tests/atconfig commands | config.status:1754: executing modules/fileout_covjson/tests/atconfig commands | config.status:1754: executing modules/debug_functions/tests/atconfig commands | config.status:1754: executing modules/dmrpp_module/tests/atconfig commands | config.status:1754: executing modules/freeform_handler/tests/atconfig commands | config.status:1754: executing modules/xml_data_handler/tests/atconfig commands | config.status:1754: executing modules/netcdf_handler/tests/atconfig commands | config.status:1754: executing modules/fileout_netcdf/tests/atconfig commands | config.status:1754: executing modules/gateway_module/tests/atconfig commands | config.status:1754: executing modules/fileout_gdal/tests/atconfig commands | config.status:1754: executing modules/fits_handler/tests/atconfig commands | config.status:1754: executing modules/gdal_handler/tests/atconfig commands | config.status:1754: executing modules/ncml_module/tests/atconfig commands | config.status:1754: executing modules/ugrid_functions/tests/atconfig commands | config.status:1754: executing modules/w10n_handler/tests/atconfig commands | config.status:1754: executing modules/hdf4_handler/bes-testsuite/atconfig commands | config.status:1754: executing modules/hdf5_handler/bes-testsuite/atconfig commands | | ## ---------------- ## | ## Cache variables. ## | ## ---------------- ## | | ac_cv_build=x86_64-apple-darwin17.7.0 | ac_cv_c_compiler_gnu=yes | ac_cv_c_const=yes | ac_cv_c_inline=inline | ac_cv_cxx_compiler_gnu=yes | ac_cv_cxx_tr1_functional=no | ac_cv_env_CCC_set= | ac_cv_env_CCC_value= | ac_cv_env_CC_set= | ac_cv_env_CC_value= | ac_cv_env_CFLAGS_set= | ac_cv_env_CFLAGS_value= | ac_cv_env_CPPFLAGS_set= | ac_cv_env_CPPFLAGS_value= | ac_cv_env_CPPUNIT_CFLAGS_set= | ac_cv_env_CPPUNIT_CFLAGS_value= | ac_cv_env_CPPUNIT_LIBS_set= | ac_cv_env_CPPUNIT_LIBS_value= | ac_cv_env_CPP_set= | ac_cv_env_CPP_value= | ac_cv_env_CURL_CFLAGS_set= | ac_cv_env_CURL_CFLAGS_value= | ac_cv_env_CURL_CONFIG_set= | ac_cv_env_CURL_CONFIG_value= | ac_cv_env_CURL_LIBS_set= | ac_cv_env_CURL_LIBS_value= | ac_cv_env_CXXCPP_set= | ac_cv_env_CXXCPP_value= | ac_cv_env_CXXFLAGS_set= | ac_cv_env_CXXFLAGS_value= | ac_cv_env_CXX_set= | ac_cv_env_CXX_value= | ac_cv_env_DAP_CFLAGS_set= | ac_cv_env_DAP_CFLAGS_value= | ac_cv_env_DAP_CLIENT_CFLAGS_set= | ac_cv_env_DAP_CLIENT_CFLAGS_value= | ac_cv_env_DAP_CLIENT_LIBS_set= | ac_cv_env_DAP_CLIENT_LIBS_value= | ac_cv_env_DAP_LIBS_set= | ac_cv_env_DAP_LIBS_value= | ac_cv_env_DAP_SERVER_CFLAGS_set= | ac_cv_env_DAP_SERVER_CFLAGS_value= | ac_cv_env_DAP_SERVER_LIBS_set= | ac_cv_env_DAP_SERVER_LIBS_value= | ac_cv_env_ICU_CFLAGS_set= | ac_cv_env_ICU_CFLAGS_value= | ac_cv_env_ICU_CONFIG_set= | ac_cv_env_ICU_CONFIG_value= | ac_cv_env_ICU_LIBS_set= | ac_cv_env_ICU_LIBS_value= | ac_cv_env_LDFLAGS_set= | ac_cv_env_LDFLAGS_value= | ac_cv_env_LIBS_set= | ac_cv_env_LIBS_value= | ac_cv_env_LT_SYS_LIBRARY_PATH_set= | ac_cv_env_LT_SYS_LIBRARY_PATH_value= | ac_cv_env_PKG_CONFIG_set= | ac_cv_env_PKG_CONFIG_value= | ac_cv_env_XML2_CFLAGS_set= | ac_cv_env_XML2_CFLAGS_value= | ac_cv_env_XML2_LIBS_set= | ac_cv_env_XML2_LIBS_value= | ac_cv_env_build_alias_set= | ac_cv_env_build_alias_value= | ac_cv_env_host_alias_set= | ac_cv_env_host_alias_value= | ac_cv_env_target_alias_set= | ac_cv_env_target_alias_value= | ac_cv_func__doprnt=no | ac_cv_func_alarm=yes | ac_cv_func_alloca_works=yes | ac_cv_func_atexit=yes | ac_cv_func_dlclose=yes | ac_cv_func_floor=yes | ac_cv_func_isascii=yes | ac_cv_func_malloc_0_nonnull=yes | ac_cv_func_memcmp_working=yes | ac_cv_func_memmove=yes | ac_cv_func_memset=yes | ac_cv_func_mktime=yes | ac_cv_func_pow=yes | ac_cv_func_realloc_0_nonnull=yes | ac_cv_func_setvbuf_reversed=no | ac_cv_func_sqrt=yes | ac_cv_func_strcasecmp=yes | ac_cv_func_strchr=yes | ac_cv_func_strcspn=yes | ac_cv_func_strdup=yes | ac_cv_func_strerror=yes | ac_cv_func_strftime=yes | ac_cv_func_strncasecmp=yes | ac_cv_func_strpbrk=yes | ac_cv_func_strrchr=yes | ac_cv_func_strspn=yes | ac_cv_func_strtod=yes | ac_cv_func_strtol=yes | ac_cv_func_strtoul=yes | ac_cv_func_timegm=yes | ac_cv_func_vprintf=yes | ac_cv_func_working_mktime=no | ac_cv_header_bzlib_h=yes | ac_cv_header_dlfcn_h=yes | ac_cv_header_fcntl_h=yes | ac_cv_header_fitsio_h=yes | ac_cv_header_float_h=yes | ac_cv_header_history_h=no | ac_cv_header_inttypes_h=yes | ac_cv_header_limits_h=yes | ac_cv_header_malloc_h=no | ac_cv_header_memory_h=yes | ac_cv_header_pthread_h=yes | ac_cv_header_readline_h=no | ac_cv_header_readline_history_h=yes | ac_cv_header_readline_readline_h=yes | ac_cv_header_stdbool_h=yes | ac_cv_header_stdc=yes | ac_cv_header_stddef_h=yes | ac_cv_header_stdint_h=yes | ac_cv_header_stdlib_h=yes | ac_cv_header_string_h=yes | ac_cv_header_strings_h=yes | ac_cv_header_sys_stat_h=yes | ac_cv_header_sys_time_h=yes | ac_cv_header_sys_types_h=yes | ac_cv_header_time=yes | ac_cv_header_unistd_h=yes | ac_cv_header_uuid_h=no | ac_cv_header_uuid_uuid_h=yes | ac_cv_host=x86_64-apple-darwin17.7.0 | ac_cv_lib_bz2_BZ2_bzReadOpen=yes | ac_cv_lib_cfitsio_fits_is_url_absolute=yes | ac_cv_lib_error_at_line=no | ac_cv_lib_hdf5_H5open=yes | ac_cv_lib_lex=-ll | ac_cv_lib_netcdf_nc_inq_libvers=yes | ac_cv_lib_netcdf_nc_open=yes | ac_cv_lib_openjp2_opj_version=yes | ac_cv_lib_pthread_pthread_kill=yes | ac_cv_lib_z_gzopen=yes | ac_cv_objext=o | ac_cv_path_CPPUNIT_CONFIG=/usr/local/bin/cppunit-config | ac_cv_path_CURL=/usr/bin/curl | ac_cv_path_DAP_CONFIG=/Users/jimg/src/opendap/hyrax_git/build/bin/dap-config | ac_cv_path_EGREP='/usr/bin/grep -E' | ac_cv_path_FGREP='/usr/bin/grep -F' | ac_cv_path_GREP=/usr/bin/grep | ac_cv_path_ICU_CONFIG=/Users/jimg/src/opendap/hyrax_git/build/deps/bin/icu-config | ac_cv_path_SED=/usr/bin/sed | ac_cv_path_ac_pt_CURL_CONFIG=/usr/bin/curl-config | ac_cv_path_install='/usr/bin/install -c' | ac_cv_path_lt_DD=/bin/dd | ac_cv_prog_AWK=awk | ac_cv_prog_CPP='gcc -E' | ac_cv_prog_CXXCPP='g++ -E' | ac_cv_prog_LEX=flex | ac_cv_prog_PERL=/usr/bin/perl | ac_cv_prog_VALGRIND='valgrind --logfile=memcheck' | ac_cv_prog_YACC=bison | ac_cv_prog_ac_ct_AR=ar | ac_cv_prog_ac_ct_CC=gcc | ac_cv_prog_ac_ct_CXX=g++ | ac_cv_prog_ac_ct_DSYMUTIL=dsymutil | ac_cv_prog_ac_ct_LIPO=lipo | ac_cv_prog_ac_ct_NMEDIT=nmedit | ac_cv_prog_ac_ct_OBJDUMP=objdump | ac_cv_prog_ac_ct_OTOOL=otool | ac_cv_prog_ac_ct_RANLIB=ranlib | ac_cv_prog_ac_ct_STRIP=strip | ac_cv_prog_cc_c89= | ac_cv_prog_cc_g=yes | ac_cv_prog_cxx_g=yes | ac_cv_prog_lex_root=lex.yy | ac_cv_prog_lex_yytext_pointer=yes | ac_cv_prog_make_make_set=yes | ac_cv_search_isdigit='none required' | ac_cv_search_uuid_generate='none required' | ac_cv_struct_tm=time.h | ac_cv_sys_file_offset_bits=no | ac_cv_sys_largefile_CC=no | ac_cv_type__Bool=yes | ac_cv_type_ptrdiff_t=yes | ac_cv_type_size_t=yes | ac_cv_working_alloca_h=yes | am_cv_CC_dependencies_compiler_type=gcc3 | am_cv_CXX_dependencies_compiler_type=gcc3 | am_cv_make_support_nested_variables=yes | am_cv_prog_cc_c_o=yes | am_cv_prog_tar_pax=gnutar | lt_cv_apple_cc_single_mod=yes | lt_cv_ar_at_file=no | lt_cv_deplibs_check_method=pass_all | lt_cv_file_magic_cmd='$MAGIC_CMD' | lt_cv_file_magic_test_file= | lt_cv_ld_exported_symbols_list=yes | lt_cv_ld_force_load=yes | lt_cv_ld_reload_flag=-r | lt_cv_nm_interface='BSD nm' | lt_cv_objdir=.libs | lt_cv_path_LD=/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ld | lt_cv_path_LDCXX=/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ld | lt_cv_path_NM='/usr/bin/nm -B' | lt_cv_path_mainfest_tool=no | lt_cv_prog_compiler_c_o=yes | lt_cv_prog_compiler_c_o_CXX=yes | lt_cv_prog_compiler_pic='-fno-common -DPIC' | lt_cv_prog_compiler_pic_CXX='-fno-common -DPIC' | lt_cv_prog_compiler_pic_works=yes | lt_cv_prog_compiler_pic_works_CXX=yes | lt_cv_prog_compiler_rtti_exceptions=yes | lt_cv_prog_compiler_static_works=no | lt_cv_prog_compiler_static_works_CXX=no | lt_cv_prog_gnu_ld=no | lt_cv_prog_gnu_ldcxx=no | lt_cv_sharedlib_from_linklib_cmd='printf %s\n' | lt_cv_sys_global_symbol_pipe='sed -n -e '\''s/^.*[ ]\([BCDEGRST][BCDEGRST]*\)[ ][ ]*_\([_A-Za-z][_A-Za-z0-9]*\)$/\1 _\2 \2/p'\'' | sed '\''/ __gnu_lto/d'\''' | lt_cv_sys_global_symbol_to_c_name_address='sed -n -e '\''s/^: \(.*\) .*$/ {"\1", (void *) 0},/p'\'' -e '\''s/^[BCDEGRST][BCDEGRST]* .* \(.*\)$/ {"\1", (void *) \&\1},/p'\''' | lt_cv_sys_global_symbol_to_c_name_address_lib_prefix='sed -n -e '\''s/^: \(.*\) .*$/ {"\1", (void *) 0},/p'\'' -e '\''s/^[BCDEGRST][BCDEGRST]* .* \(lib.*\)$/ {"\1", (void *) \&\1},/p'\'' -e '\''s/^[BCDEGRST][BCDEGRST]* .* \(.*\)$/ {"lib\1", (void *) \&\1},/p'\''' | lt_cv_sys_global_symbol_to_cdecl='sed -n -e '\''s/^T .* \(.*\)$/extern int \1();/p'\'' -e '\''s/^[BCDEGRST][BCDEGRST]* .* \(.*\)$/extern char \1;/p'\''' | lt_cv_sys_global_symbol_to_import= | lt_cv_sys_max_cmd_len=196608 | lt_cv_to_host_file_cmd=func_convert_file_noop | lt_cv_to_tool_file_cmd=func_convert_file_noop | lt_cv_truncate_bin='/bin/dd bs=4096 count=1' | sic_cv_var_sys_errlist=yes | vl_cv_lib_readline=-lreadline | vl_cv_lib_readline_history=yes | | ## ----------------- ## | ## Output variables. ## | ## ----------------- ## | | ACLOCAL='${SHELL} /Users/jimg/src/opendap/hyrax_git/bes/conf/missing aclocal-1.14' | ALLOCA='' | AMDEPBACKSLASH='\' | AMDEP_FALSE='#' | AMDEP_TRUE='' | AMTAR='$${TAR-tar}' | AM_BACKSLASH='\' | AM_DEFAULT_V='$(AM_DEFAULT_VERBOSITY)' | AM_DEFAULT_VERBOSITY='1' | AM_V='$(V)' | AR='ar' | AUTOCONF='${SHELL} /Users/jimg/src/opendap/hyrax_git/bes/conf/missing autoconf' | AUTOHEADER='${SHELL} /Users/jimg/src/opendap/hyrax_git/bes/conf/missing autoheader' | AUTOMAKE='${SHELL} /Users/jimg/src/opendap/hyrax_git/bes/conf/missing automake-1.14' | AWK='awk' | BES_BZ2_LIBS='-lbz2' | BES_DAP_LIB='-L$(top_builddir)/dap -ldap_module' | BES_DEVELOPER_FALSE='#' | BES_DEVELOPER_TRUE='' | BES_DISPATCH_LIB='-L$(top_builddir)/dispatch -lbes_dispatch' | BES_DL_LIBS='' | BES_EXTRA_LIBS=' ' | BES_PPT_LIB='-L$(top_builddir)/ppt -lbes_ppt' | BES_XML_CMD_LIB='-L$(top_builddir)/xmlcommand -lbes_xml_command' | BES_ZLIB_LIBS='-lz' | BUILD_FITS_FALSE='#' | BUILD_FITS_TRUE='' | BUILD_GDAL_FALSE='#' | BUILD_GDAL_TRUE='' | BUILD_HDF4_FALSE='#' | BUILD_HDF4_TRUE='' | BUILD_HDF5_FALSE='#' | BUILD_HDF5_TRUE='' | BUILD_NCML_FALSE='#' | BUILD_NCML_TRUE='' | BUILD_NETCDF_FALSE='#' | BUILD_NETCDF_TRUE='' | BZ2UNCOMPRESS_FALSE='#' | BZ2UNCOMPRESS_TRUE='' | CC='gcc' | CCDEPMODE='depmode=gcc3' | CFITS_CPPFLAGS='-I/Users/jimg/src/opendap/hyrax_git/build/deps/include' | CFITS_LDFLAGS='-L/Users/jimg/src/opendap/hyrax_git/build/deps/lib' | CFITS_LIBS='-lcfitsio' | CFLAGS='-g -O2' | COMPILER_IS_GCC_FALSE='#' | COMPILER_IS_GCC_TRUE='' | CPP='gcc -E' | CPPFLAGS='' | CPPUNIT_CFLAGS='-I/usr/local/include' | CPPUNIT_CONFIG='/usr/local/bin/cppunit-config' | CPPUNIT_FALSE='#' | CPPUNIT_LIBS='-L/usr/local/lib -lcppunit -ldl' | CPPUNIT_TRUE='' | CURL='/usr/bin/curl' | CURL_CFLAGS='' | CURL_CONFIG='/usr/bin/curl-config' | CURL_LIBS='-lcurl' | CXX='g++' | CXXCPP='g++ -E' | CXXDEPMODE='depmode=gcc3' | CXXFLAGS='-g3 -O0 -Wall -W -Wcast-align -fsanitize=address -fno-omit-frame-pointer' | CYGPATH_W='echo' | DAP_BUILTIN_MODULES_FALSE='#' | DAP_BUILTIN_MODULES_TRUE='' | DAP_CFLAGS='-I/Users/jimg/src/opendap/hyrax_git/build/include/libdap -I/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.13.sdk/usr/include/libxml2 ' | DAP_CLIENT_CFLAGS='-I/Users/jimg/src/opendap/hyrax_git/build/include/libdap -I/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.13.sdk/usr/include/libxml2 ' | DAP_CLIENT_LIBS='-L/Users/jimg/src/opendap/hyrax_git/build/lib64 -L/Users/jimg/src/opendap/hyrax_git/build/lib -ldap -ldapclient -lcurl -L/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.13.sdk/usr/lib -lxml2 -lz -lpthread -licucore -lm -lpthread ' | DAP_CLIENT_STATIC_LIBS='-L/Users/jimg/src/opendap/hyrax_git/build/lib64 -L/Users/jimg/src/opendap/hyrax_git/build/lib -ldap -ldapclient -lcurl -L/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.13.sdk/usr/lib -lxml2 -lz -lpthread -licucore -lm -lpthread ' | DAP_CONFIG='/Users/jimg/src/opendap/hyrax_git/build/bin/dap-config' | DAP_LIBS='-L/Users/jimg/src/opendap/hyrax_git/build/lib64 -L/Users/jimg/src/opendap/hyrax_git/build/lib -ldap -ldapserver -ldapclient -lcurl -L/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.13.sdk/usr/lib -lxml2 -lz -lpthread -licucore -lm -lpthread ' | DAP_PROTOCOL_VERSION='' | DAP_SERVER_CFLAGS='-I/Users/jimg/src/opendap/hyrax_git/build/include/libdap -I/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.13.sdk/usr/include/libxml2 ' | DAP_SERVER_LIBS='-L/Users/jimg/src/opendap/hyrax_git/build/lib64 -L/Users/jimg/src/opendap/hyrax_git/build/lib -ldap -ldapserver -L/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.13.sdk/usr/lib -lxml2 -lz -lpthread -licucore -lm -lpthread ' | DAP_SERVER_STATIC_LIBS='-L/Users/jimg/src/opendap/hyrax_git/build/lib64 -L/Users/jimg/src/opendap/hyrax_git/build/lib -ldap -ldapserver -L/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.13.sdk/usr/lib -lxml2 -lz -lpthread -licucore -lm -lpthread ' | DAP_STATIC_LIBS='-L/Users/jimg/src/opendap/hyrax_git/build/lib64 -L/Users/jimg/src/opendap/hyrax_git/build/lib -ldap -ldapserver -ldapclient -lcurl -L/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.13.sdk/usr/lib -lxml2 -lz -lpthread -licucore -lm -lpthread ' | DEFS='-DHAVE_CONFIG_H' | DEPDIR='.deps' | DLLTOOL='false' | DSYMUTIL='dsymutil' | DUMPBIN='' | ECHO_C='\c' | ECHO_N='' | ECHO_T='' | EGREP='/usr/bin/grep -E' | ENABLE_UNIT_TESTS='' | EXEEXT='' | FF_CPPFLAGS='-DLINUX' | FGREP='/usr/bin/grep -F' | GDAL_CFLAGS='-I/Users/jimg/src/opendap/hyrax_git/build/deps/include' | GDAL_CONFIG='' | GDAL_DEP_LDFLAGS='' | GDAL_LDFLAGS='-L/Users/jimg/src/opendap/hyrax_git/build/deps/lib -lgdal -L/usr/local/lib -lexpat -L/Users/jimg/src/opendap/hyrax_git/build/deps/lib -lopenjp2 -lpng -lz -lpthread -ldl -lcurl -liconv -L/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.13.sdk/usr/lib -lxml2 -lz -lpthread -licucore -lm' | GDAL_OGR_ENABLED='' | GDAL_VERSION='' | GF_CFLAGS='-I/Users/jimg/src/opendap/hyrax_git/build/deps/include' | GF_LIBS='-L/Users/jimg/src/opendap/hyrax_git/build/deps/lib64 -L/Users/jimg/src/opendap/hyrax_git/build/deps/lib -lgridfields ' | GF_PATH='/Users/jimg/src/opendap/hyrax_git/build/deps' | GREP='/usr/bin/grep' | H4_CC='/Users/jimg/src/opendap/hyrax_git/build/deps/bin/h4cc' | H5_CPPFLAGS='-I/Users/jimg/src/opendap/hyrax_git/build/deps/include' | H5_LDFLAGS='-L/Users/jimg/src/opendap/hyrax_git/build/deps/lib' | H5_LIBS='-lhdf5_hl -lhdf5 -ldl' | H5_PATH='/Users/jimg/src/opendap/hyrax_git/build/deps' | HAVE_VALGRIND='' | HDF4_CFLAGS='-I/Users/jimg/src/opendap/hyrax_git/build/deps/include' | HDF4_LDFLAGS='-L/Users/jimg/src/opendap/hyrax_git/build/deps/lib' | HDF4_LIBS='-lmfhdf -ldf -ljpeg -lz ' | HDF4_PATH='/Users/jimg/src/opendap/hyrax_git/build/deps' | HDFEOS2_CPPFLAGS='-I/Users/jimg/src/opendap/hyrax_git/build/deps/include -DUSE_HDFEOS2_LIB' | HDFEOS2_DIR='/Users/jimg/src/opendap/hyrax_git/build/deps' | HDFEOS2_FALSE='#' | HDFEOS2_LDFLAGS='-L/Users/jimg/src/opendap/hyrax_git/build/deps/lib' | HDFEOS2_LIBS='-lhdfeos -lGctp' | HDFEOS2_TRUE='' | ICU_CFLAGS='-I/Users/jimg/src/opendap/hyrax_git/build/deps/include' | ICU_CONFIG='/Users/jimg/src/opendap/hyrax_git/build/deps/bin/icu-config' | ICU_CPPFLAGS='-I/Users/jimg/src/opendap/hyrax_git/build/deps/include' | ICU_LIBS='-lpthread -lm -L/Users/jimg/src/opendap/hyrax_git/build/deps/lib -licui18n -licuuc -licudata -lpthread -lm' | ICU_PATH='/Users/jimg/src/opendap/hyrax_git/build/deps' | INSTALL_DATA='${INSTALL} -m 644' | INSTALL_PROGRAM='${INSTALL}' | INSTALL_SCRIPT='${INSTALL}' | INSTALL_STRIP_PROGRAM='$(install_sh) -c -s' | LD='/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ld' | LDFLAGS='' | LEX='flex' | LEXLIB='-ll' | LEX_OUTPUT_ROOT='lex.yy' | LIBDAP_FALSE='#' | LIBDAP_TRUE='' | LIBDISPATCH_VERSION='15:2:0' | LIBOBJS=' ${LIBOBJDIR}error$U.o ${LIBOBJDIR}mktime$U.o' | LIBPPT_VERSION='4:11:0' | LIBS='' | LIBTOOL='$(SHELL) $(top_builddir)/libtool' | LIBXMLCOMMAND_VERSION='3:4:2' | LIB_DIS_AGE='0' | LIB_DIS_CURRENT='15' | LIB_DIS_REVISION='2' | LIB_PPT_AGE='0' | LIB_PPT_CURRENT='4' | LIB_PPT_REVISION='11' | LIB_XML_CMD_AGE='2' | LIB_XML_CMD_CURRENT='3' | LIB_XML_CMD_REVISION='4' | LIPO='lipo' | LN_S='ln -s' | LTLIBOBJS=' ${LIBOBJDIR}error$U.lo ${LIBOBJDIR}mktime$U.lo' | LT_SYS_LIBRARY_PATH='' | MAKEINFO='${SHELL} /Users/jimg/src/opendap/hyrax_git/bes/conf/missing makeinfo' | MANIFEST_TOOL=':' | MKDIR_P='conf/install-sh -c -d' | NC_BIN_PATH='/Users/jimg/src/opendap/hyrax_git/build/deps/bin' | NC_CONFIG='' | NC_CPPFLAGS='-I/Users/jimg/src/opendap/hyrax_git/build/deps/include' | NC_LDFLAGS='-L/Users/jimg/src/opendap/hyrax_git/build/deps/lib' | NC_LIBS='-lnetcdf -lcurl -lhdf5_hl -lhdf5 -ldl' | NC_NETCDF_3_CPPFLAG='-I/Users/jimg/src/opendap/hyrax_git/build/deps/include' | NC_PATH='/Users/jimg/src/opendap/hyrax_git/build/deps' | NETCDF4_TESTS_FALSE='#' | NETCDF4_TESTS_TRUE='' | NM='/usr/bin/nm -B' | NMEDIT='nmedit' | OBJDUMP='objdump' | OBJEXT='o' | OPENJPEG_FOUND_FALSE='#' | OPENJPEG_FOUND_TRUE='' | OTOOL64=':' | OTOOL='otool' | PACKAGE='bes' | PACKAGE_BUGREPORT='support@opendap.org' | PACKAGE_MAJOR_VERSION='3' | PACKAGE_MINOR_VERSION='19' | PACKAGE_NAME='bes' | PACKAGE_STRING='bes 3.19.1' | PACKAGE_SUBMINOR_VERSION='1' | PACKAGE_TARNAME='bes' | PACKAGE_URL='' | PACKAGE_VERSION='3.19.1' | PATH_SEPARATOR=':' | PERL='/usr/bin/perl' | PKG_CONFIG='' | POW_LIB='' | PTHREAD_LIBS='-lpthread' | RANLIB='ranlib' | READLINE_LIBS='-lreadline' | SED='/usr/bin/sed' | SET_MAKE='' | SHELL='/bin/sh' | STRIP='strip' | USE_ASAN_FALSE='#' | USE_ASAN_TRUE='' | USE_VALGRIND_FALSE='' | USE_VALGRIND_TRUE='#' | USING_GRIDFIELDS_FALSE='#' | USING_GRIDFIELDS_TRUE='' | VALGRIND='valgrind --logfile=memcheck' | VERSION='3.19.1' | WITH_DEPENDENCIES_FALSE='#' | WITH_DEPENDENCIES_TRUE='' | XML2_CFLAGS='-I/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.13.sdk/usr/include/libxml2' | XML2_LIBS='-L/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.13.sdk/usr/lib -lxml2 -lz -lpthread -licucore -lm' | XML2_STATIC_LIBS='-L/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.13.sdk/usr/lib -lxml2 -lz -lpthread -licucore -lm' | YACC='bison' | ac_bes_dependencies_prefix='/Users/jimg/src/opendap/hyrax_git/build/deps' | ac_ct_AR='ar' | ac_ct_CC='gcc' | ac_ct_CXX='g++' | ac_ct_DUMPBIN='' | am__EXEEXT_FALSE='' | am__EXEEXT_TRUE='#' | am__fastdepCC_FALSE='#' | am__fastdepCC_TRUE='' | am__fastdepCXX_FALSE='#' | am__fastdepCXX_TRUE='' | am__include='include' | am__isrc='' | am__leading_dot='.' | am__nodep='_no' | am__quote='' | am__tar='tar --format=posix -chf - "$$tardir"' | am__untar='tar -xf -' | bindir='${exec_prefix}/bin' | build='x86_64-apple-darwin17.7.0' | build_alias='' | build_cpu='x86_64' | build_os='darwin17.7.0' | build_vendor='apple' | datadir='${datarootdir}' | datarootdir='${prefix}/share' | docdir='${datarootdir}/doc/${PACKAGE_TARNAME}' | dvidir='${docdir}' | exec_prefix='${prefix}' | host='x86_64-apple-darwin17.7.0' | host_alias='' | host_cpu='x86_64' | host_os='darwin17.7.0' | host_vendor='apple' | htmldir='${docdir}' | includedir='${prefix}/include' | infodir='${datarootdir}/info' | install_sh='${SHELL} /Users/jimg/src/opendap/hyrax_git/bes/conf/install-sh' | libdir='${exec_prefix}/lib' | libexecdir='${exec_prefix}/libexec' | localedir='${datarootdir}/locale' | localstatedir='${prefix}/var' | mandir='${datarootdir}/man' | mkdir_p='$(MKDIR_P)' | oldincludedir='/usr/include' | pdfdir='${docdir}' | prefix='/Users/jimg/src/opendap/hyrax_git/build' | program_transform_name='s,x,x,' | psdir='${docdir}' | sbindir='${exec_prefix}/sbin' | sharedstatedir='${prefix}/com' | sysconfdir='${prefix}/etc' | target_alias='' | xmlprivatelibs='-L/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.13.sdk/usr/lib -lxml2 -lz -lpthread -licucore -lm' | xmlprivatereq='' | | ## ----------- ## | ## confdefs.h. ## | ## ----------- ## | | /* confdefs.h */ | #define PACKAGE_NAME "bes" | #define PACKAGE_TARNAME "bes" | #define PACKAGE_VERSION "3.19.1" | #define PACKAGE_STRING "bes 3.19.1" | #define PACKAGE_BUGREPORT "support@opendap.org" | #define PACKAGE_URL "" | #define PACKAGE "bes" | #define VERSION "3.19.1" | #define STDC_HEADERS 1 | #define HAVE_SYS_TYPES_H 1 | #define HAVE_SYS_STAT_H 1 | #define HAVE_STDLIB_H 1 | #define HAVE_STRING_H 1 | #define HAVE_MEMORY_H 1 | #define HAVE_STRINGS_H 1 | #define HAVE_INTTYPES_H 1 | #define HAVE_STDINT_H 1 | #define HAVE_UNISTD_H 1 | #define HAVE_DLFCN_H 1 | #define LT_OBJDIR ".libs/" | #define DAPREADER_PACKAGE "dapreader_module" | #define DAPREADER_VERSION "0.0.1" | #define YYTEXT_POINTER 1 | #define STDC_HEADERS 1 | #define HAVE_FCNTL_H 1 | #define HAVE_FLOAT_H 1 | #define HAVE_STDDEF_H 1 | #define HAVE_STDLIB_H 1 | #define HAVE_LIMITS_H 1 | #define HAVE_UNISTD_H 1 | #define HAVE_PTHREAD_H 1 | #define HAVE_BZLIB_H 1 | #define HAVE_STRING_H 1 | #define HAVE_STRINGS_H 1 | #define HAVE_SYS_TIME_H 1 | #define HAVE_UUID_UUID_H 1 | #define HAVE__BOOL 1 | #define HAVE_STDBOOL_H 1 | #define HAVE_PTRDIFF_T 1 | #define HAVE_ALLOCA_H 1 | #define HAVE_ALLOCA 1 | #define HAVE_STRDUP 1 | #define HAVE_STRFTIME 1 | #define HAVE_STRTOL 1 | #define HAVE_STRCASECMP 1 | #define HAVE_STRCSPN 1 | #define HAVE_STRERROR 1 | #define HAVE_STRNCASECMP 1 | #define HAVE_STRPBRK 1 | #define HAVE_STRCHR 1 | #define HAVE_STRRCHR 1 | #define HAVE_STRSPN 1 | #define HAVE_STRTOUL 1 | #define HAVE_TIMEGM 1 | #define HAVE_MKTIME 1 | #define HAVE_ATEXIT 1 | #define HAVE_FLOOR 1 | #define HAVE_ISASCII 1 | #define HAVE_MEMMOVE 1 | #define HAVE_MEMSET 1 | #define HAVE_POW 1 | #define HAVE_SQRT 1 | #define HAVE_STDLIB_H 1 | #define HAVE_MALLOC 1 | #define TIME_WITH_SYS_TIME 1 | #define HAVE_ALARM 1 | #define HAVE_STDLIB_H 1 | #define HAVE_REALLOC 1 | #define HAVE_VPRINTF 1 | #define HAVE_LIBBZ2 1 | #define HAVE_LIBREADLINE 1 | #define HAVE_READLINE_READLINE_H 1 | #define HAVE_READLINE_HISTORY 1 | #define HAVE_READLINE_HISTORY_H 1 | #define HAVE_SYS_ERRLIST 1 | #define DAP_PROTOCOL_VERSION "3.2" | #define ENABLE_UNIT_TESTS 1 | #define NETCDF_VERSION 4 | #define HAVE_FITSIO_H 1 | #define GRIDFIELDS 1 | | configure: exit 0 | | ## ---------------------- ## | ## Running config.status. ## | ## ---------------------- ## | | This file was extended by bes config.status 3.19.1, which was | generated by GNU Autoconf 2.69. Invocation command line was | | CONFIG_FILES = | CONFIG_HEADERS = | CONFIG_LINKS = | CONFIG_COMMANDS = | $ ./config.status modules/netcdf_handler/Makefile depfiles | | on edamame.local | | config.status:1525: creating modules/netcdf_handler/Makefile | config.status:1754: executing depfiles commands | | ## ---------------------- ## | ## Running config.status. ## | ## ---------------------- ## | | This file was extended by bes config.status 3.19.1, which was | generated by GNU Autoconf 2.69. Invocation command line was | | CONFIG_FILES = | CONFIG_HEADERS = | CONFIG_LINKS = | CONFIG_COMMANDS = | $ ./config.status modules/dmrpp_module/tests/Makefile | | on edamame.local | | config.status:1525: creating modules/dmrpp_module/tests/Makefile | | ## ---------------------- ## | ## Running config.status. ## | ## ---------------------- ## | | This file was extended by bes config.status 3.19.1, which was | generated by GNU Autoconf 2.69. Invocation command line was | | CONFIG_FILES = | CONFIG_HEADERS = | CONFIG_LINKS = | CONFIG_COMMANDS = | $ ./config.status modules/netcdf_handler/Makefile depfiles | | on edamame.local | | config.status:1525: creating modules/netcdf_handler/Makefile | config.status:1754: executing depfiles commands | | ## ---------------------- ## | ## Running config.status. ## | ## ---------------------- ## | | This file was extended by bes config.status 3.19.1, which was | generated by GNU Autoconf 2.69. Invocation command line was | | CONFIG_FILES = | CONFIG_HEADERS = | CONFIG_LINKS = | CONFIG_COMMANDS = | $ ./config.status besd | | on edamame.local | | config.status:1525: creating besd | | ## ---------------------- ## | ## Running config.status. ## | ## ---------------------- ## | | This file was extended by bes config.status 3.19.1, which was | generated by GNU Autoconf 2.69. Invocation command line was | | CONFIG_FILES = | CONFIG_HEADERS = | CONFIG_LINKS = | CONFIG_COMMANDS = | $ ./config.status modules/netcdf_handler/Makefile depfiles | | on edamame.local | | config.status:1525: creating modules/netcdf_handler/Makefile | config.status:1754: executing depfiles commands | | ## ---------------------- ## | ## Running config.status. ## | ## ---------------------- ## | | This file was extended by bes config.status 3.19.1, which was | generated by GNU Autoconf 2.69. Invocation command line was | | CONFIG_FILES = | CONFIG_HEADERS = | CONFIG_LINKS = | CONFIG_COMMANDS = | $ ./config.status modules/ncml_module/tests/Makefile | | on edamame.local | | config.status:1525: creating modules/ncml_module/tests/Makefile