View Issue Details

IDProjectCategoryView StatusLast Update
0003966Talertaler-merchant-demospublic2024-01-12 13:08
ReporterMarcello Stanisci Assigned ToMarcello Stanisci Resolution deadline
ImplementerReviewer 
Release signed byDeployed by 
VerifierCommunicator 
Data protection authority notification requiredNo  
CSIRT notification requiredNo  
Estimated effort (hours)Actual effort (hours)0 
Fast-trackNo
Work packagenone
PrioritynormalSeveritycrashReproducibilityalways
Status closedResolutionfixed 
Target Version0.0Fixed in Version0.0 
Summary0003966: Segfault when GET /contract
DescriptionGET is the wrong method for this API entry, and it causes the following segmentation fault.
Moreover, the dedicated routine should exit as soon as it discovers that the method is wrong.

==9425== Thread 2:
==9425== Conditional jump or move depends on uninitialised value(s)
==9425== at 0x804A6A3: url_handler (taler-merchant-httpd.c:500)
==9425== by 0x4109DFE: ??? (in /usr/lib/i386-linux-gnu/libmicrohttpd.so.10.27.0)
==9425== by 0x410B096: ??? (in /usr/lib/i386-linux-gnu/libmicrohttpd.so.10.27.0)
==9425== by 0x4110421: MHD_run_from_select (in /usr/lib/i386-linux-gnu/libmicrohttpd.so.10.27.0)
==9425== by 0x4110760: ??? (in /usr/lib/i386-linux-gnu/libmicrohttpd.so.10.27.0)
==9425== by 0x4110897: ??? (in /usr/lib/i386-linux-gnu/libmicrohttpd.so.10.27.0)
==9425== by 0x4204EFA: start_thread (pthread_create.c:309)
==9425== by 0x430362D: clone (clone.S:129)
==9425==
==9425== Conditional jump or move depends on uninitialised value(s)
==9425== at 0x412657C: json_vunpack_ex (in /usr/lib/i386-linux-gnu/libjansson.so.4.7.0)
==9425== by 0x4126707: json_unpack (in /usr/lib/i386-linux-gnu/libjansson.so.4.7.0)
==9425== by 0x804A6DE: url_handler (taler-merchant-httpd.c:545)
==9425== by 0x4109DFE: ??? (in /usr/lib/i386-linux-gnu/libmicrohttpd.so.10.27.0)
==9425== by 0x410B096: ??? (in /usr/lib/i386-linux-gnu/libmicrohttpd.so.10.27.0)
==9425== by 0x4110421: MHD_run_from_select (in /usr/lib/i386-linux-gnu/libmicrohttpd.so.10.27.0)
==9425== by 0x4110760: ??? (in /usr/lib/i386-linux-gnu/libmicrohttpd.so.10.27.0)
==9425== by 0x4110897: ??? (in /usr/lib/i386-linux-gnu/libmicrohttpd.so.10.27.0)
==9425== by 0x4204EFA: start_thread (pthread_create.c:309)
==9425== by 0x430362D: clone (clone.S:129)
==9425==
==9425== Conditional jump or move depends on uninitialised value(s)
==9425== at 0x4125766: ??? (in /usr/lib/i386-linux-gnu/libjansson.so.4.7.0)
==9425== by 0x41265DC: json_vunpack_ex (in /usr/lib/i386-linux-gnu/libjansson.so.4.7.0)
==9425== by 0x4126707: json_unpack (in /usr/lib/i386-linux-gnu/libjansson.so.4.7.0)
==9425== by 0x804A6DE: url_handler (taler-merchant-httpd.c:545)
==9425== by 0x4109DFE: ??? (in /usr/lib/i386-linux-gnu/libmicrohttpd.so.10.27.0)
==9425== by 0x410B096: ??? (in /usr/lib/i386-linux-gnu/libmicrohttpd.so.10.27.0)
==9425== by 0x4110421: MHD_run_from_select (in /usr/lib/i386-linux-gnu/libmicrohttpd.so.10.27.0)
==9425== by 0x4110760: ??? (in /usr/lib/i386-linux-gnu/libmicrohttpd.so.10.27.0)
==9425== by 0x4110897: ??? (in /usr/lib/i386-linux-gnu/libmicrohttpd.so.10.27.0)
==9425== by 0x4204EFA: start_thread (pthread_create.c:309)
==9425== by 0x430362D: clone (clone.S:129)
==9425==
==9425== Use of uninitialised value of size 4
==9425== at 0x4125768: ??? (in /usr/lib/i386-linux-gnu/libjansson.so.4.7.0)
==9425== by 0x41265DC: json_vunpack_ex (in /usr/lib/i386-linux-gnu/libjansson.so.4.7.0)
==9425== by 0x4126707: json_unpack (in /usr/lib/i386-linux-gnu/libjansson.so.4.7.0)
==9425== by 0x804A6DE: url_handler (taler-merchant-httpd.c:545)
==9425== by 0x4109DFE: ??? (in /usr/lib/i386-linux-gnu/libmicrohttpd.so.10.27.0)
==9425== by 0x410B096: ??? (in /usr/lib/i386-linux-gnu/libmicrohttpd.so.10.27.0)
==9425== by 0x4110421: MHD_run_from_select (in /usr/lib/i386-linux-gnu/libmicrohttpd.so.10.27.0)
==9425== by 0x4110760: ??? (in /usr/lib/i386-linux-gnu/libmicrohttpd.so.10.27.0)
==9425== by 0x4110897: ??? (in /usr/lib/i386-linux-gnu/libmicrohttpd.so.10.27.0)
==9425== by 0x4204EFA: start_thread (pthread_create.c:309)
==9425== by 0x430362D: clone (clone.S:129)
==9425==
==9425== Invalid read of size 4
==9425== at 0x4125768: ??? (in /usr/lib/i386-linux-gnu/libjansson.so.4.7.0)
==9425== by 0x41265DC: json_vunpack_ex (in /usr/lib/i386-linux-gnu/libjansson.so.4.7.0)
==9425== by 0x4126707: json_unpack (in /usr/lib/i386-linux-gnu/libjansson.so.4.7.0)
==9425== by 0x804A6DE: url_handler (taler-merchant-httpd.c:545)
==9425== by 0x4109DFE: ??? (in /usr/lib/i386-linux-gnu/libmicrohttpd.so.10.27.0)
==9425== by 0x410B096: ??? (in /usr/lib/i386-linux-gnu/libmicrohttpd.so.10.27.0)
==9425== by 0x4110421: MHD_run_from_select (in /usr/lib/i386-linux-gnu/libmicrohttpd.so.10.27.0)
==9425== by 0x4110760: ??? (in /usr/lib/i386-linux-gnu/libmicrohttpd.so.10.27.0)
==9425== by 0x4110897: ??? (in /usr/lib/i386-linux-gnu/libmicrohttpd.so.10.27.0)
==9425== by 0x4204EFA: start_thread (pthread_create.c:309)
==9425== by 0x430362D: clone (clone.S:129)
==9425== Address 0x1 is not stack'd, malloc'd or (recently) free'd
==9425==
==9425==
==9425== Process terminating with default action of signal 11 (SIGSEGV)
==9425== Access not within mapped region at address 0x1
==9425== at 0x4125768: ??? (in /usr/lib/i386-linux-gnu/libjansson.so.4.7.0)
==9425== by 0x41265DC: json_vunpack_ex (in /usr/lib/i386-linux-gnu/libjansson.so.4.7.0)
==9425== by 0x4126707: json_unpack (in /usr/lib/i386-linux-gnu/libjansson.so.4.7.0)
==9425== by 0x804A6DE: url_handler (taler-merchant-httpd.c:545)
==9425== by 0x4109DFE: ??? (in /usr/lib/i386-linux-gnu/libmicrohttpd.so.10.27.0)
==9425== by 0x410B096: ??? (in /usr/lib/i386-linux-gnu/libmicrohttpd.so.10.27.0)
==9425== by 0x4110421: MHD_run_from_select (in /usr/lib/i386-linux-gnu/libmicrohttpd.so.10.27.0)
==9425== by 0x4110760: ??? (in /usr/lib/i386-linux-gnu/libmicrohttpd.so.10.27.0)
==9425== by 0x4110897: ??? (in /usr/lib/i386-linux-gnu/libmicrohttpd.so.10.27.0)
==9425== by 0x4204EFA: start_thread (pthread_create.c:309)
==9425== by 0x430362D: clone (clone.S:129)
==9425== If you believe this happened as a result of a stack
==9425== overflow in your program's main thread (unlikely but
==9425== possible), you can try to increase the size of the
==9425== main thread stack using the --main-stacksize= flag.
==9425== The main thread stack size used in this run was 8388608.
==9425==
==9425== HEAP SUMMARY:
==9425== in use at exit: 257,279 bytes in 3,349 blocks
==9425== total heap usage: 6,097 allocs, 2,748 frees, 402,462 bytes allocated
==9425==
==9425== LEAK SUMMARY:
==9425== definitely lost: 40 bytes in 1 blocks
==9425== indirectly lost: 15 bytes in 1 blocks
==9425== possibly lost: 144 bytes in 1 blocks
==9425== still reachable: 257,080 bytes in 3,346 blocks
==9425== suppressed: 0 bytes in 0 blocks
==9425== Rerun with --leak-check=full to see details of leaked memory
==9425==
==9425== For counts of detected and suppressed errors, rerun with: -v
==9425== Use --track-origins=yes to see where uninitialised values come from
==9425== ERROR SUMMARY: 5 errors from 5 contexts (suppressed: 0 from 0)
Killed
Steps To Reproducecurl http://merchant_backend_url/contract
TagsNo tags attached.

Required notifications

Address or linkRemarkAdded byNotifiedActions

Activities

Marcello Stanisci

2015-09-16 14:46

reporter   ~0009633

fixed in 9f969c1..ff8c5ab

Issue History

Date ModifiedUsernameFieldChange
2015-09-09 15:05Marcello StanisciNew Issue
2015-09-09 15:05Marcello StanisciStatusnew => assigned
2015-09-09 15:05Marcello StanisciAssigned To => Marcello Stanisci
2015-09-10 13:05Christian GrothoffSeverityminor => crash
2015-09-16 14:46Marcello StanisciNote Added: 0009633
2015-09-16 14:46Marcello StanisciStatusassigned => informing
2015-09-16 14:46Marcello StanisciResolutionopen => fixed
2015-09-19 13:03Christian GrothoffStatusinforming => closed
2015-11-29 12:48Christian GrothoffCategorymerchant (demonstrator) => merchant frontend (demonstrator)
2016-02-17 02:24Florian DoldCategorymerchant frontend (demonstrator) => merchant frontend (donations)
2016-09-26 12:00Christian GrothoffFixed in Version => 0.0
2016-09-26 12:01Christian GrothoffTarget Version => 0.0
2024-01-12 13:08Christian GrothoffCategorymerchant frontend (donations) => Merchant frontends (Python3)
2026-08-23 14:16Florian DoldCategoryMerchant frontends (Python3) => taler-merchant-demos