Yes, setting up a standalone repository is surely the most obvious way. This is may be a good thing for a start, but I suppose it won't give Avalanche that many users. So joining the main Valgrind branch is a desired thing.) Is it really possible and what should be done for that?
Should I probably start with standalone repository and try to get some feedback from the users? If this feedback is positive, it may be another good reason for joining the main Valgrind branch. And, if I see an answer from David Molnar, then I think I should say that my research and Avalanche as its result were inspired by SAGE. Avalanche is a kind of SAGE implemented on a basis of Valgrind. It just dynamically instruments Valgrind IR instead of analyzing native traces as it is done in SAGE. It also has some modifications - Avalanche has some support for sockets as sources of symbolic data, it generates special constraints for purposeful reproduction of divisions by zero and segmentation faults on a current trace, etc. > The easiest thing to do for a start is put a full fork of valgrind + > Avalanche up on a repository somewhere. That way at least people can > see and use it while you decide if you want to take the support hit of > keeping up with the main Valgrind branch. > > On Tue, May 25, 2010 at 8:45 AM, Ildar Isaev <[email protected]> wrote: > >> Hello, >> >> I'm Ildar Isaev, a researcher and software developer at Institute for System >> Programming (http://www.ispras.ru/en/), Russia, Moscow. >> >> In the last fifteen months I was working on a research project, which main >> goal was to investigate the possibility of using dynamic analysis in order >> to generate 'inputs of death' - such a values of input data that cause some >> critical bug in the analyzed program to happen. As a result of this >> research, I developed a tool (it is named Avalanche), that successfully >> found a number of bugs in the open source projects (see the attachment for >> their list) and generated input data that reproduces these bugs. Most of >> these bugs are confirmed and fixed by the developers. >> >> Speaking in very brief, Avalanche consists of a Valgrind plugin (it is also >> developed by me), which tracks the flow of tainted data in the analyzed >> program and emits special constraints, and a third party constraint solver >> that checks the satisfiability of the emitted constraints. Some of the >> constraints are emitted to achieve automatic path alternation, the rest are >> emitted to check for the possible bugs in the certain situations. >> >> The number of bugs discovered by Avalanche lets me hope that Avalanche can >> become really valuable as a defect detection tool. So now I'm thinking about >> releasing it "into the wild". >> >> Are you interested in such a tool? If so, I may give a more detailed >> description or provide a preprint for the article that is going to be >> published in "Programming and Computer Software" journal >> (http://www.maik.rssi.ru/cgi-perl/journal.pl?lang=eng&name=procom) soon. Can >> Avalanche probably become one of the Valgrind tools one day? >> >> Best regards, >> Ildar >> >> wget-1.12 (NPD) >> >> mencoder (NPD) >> >> libquicktime-1.1.3 (3xNPD, infinite loop) >> >> gnash-0.8.6 (uncaught exception) >> >> libjpeg-7 (division by zero) >> >> avifile (NPD) >> >> swftools-0.9.0 (2xNPD) >> >> libmpeg2-0.5.1 (division by zero) >> >> audiofile-0.2.6 (infinite loop) >> >> sndfile-tools-1.02 (division by zero) >> >> vorbis-tools-1.4.0 (infinite loop) >> >> libmpeg3-1.8 (2xNPD) >> >> libwmf-0.2.8.4 (NPD) >> >> ------------------------------------------------------------------------------ >> >> >> _______________________________________________ >> Valgrind-users mailing list >> [email protected] >> https://lists.sourceforge.net/lists/listinfo/valgrind-users >> >> >> ------------------------------------------------------------------------------ _______________________________________________ Valgrind-users mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/valgrind-users
