classpath
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Auditing source code


From: Mark Wielaard
Subject: Auditing source code
Date: Sun, 21 Dec 2003 15:25:27 +0100

Hi all,

Preparing for the source code auditing. The following is what I intend
to do/have done already.

Get a fresh checkout of libgcj and kaffe.
Run the following on it:
grep -r "This file is part of GNU Classpath." * | cut -f1 -d: | sort -u

This gives for gcc/libjava 1882 files
and for kaffe/libraries/javalib 1242 files.

Get the last CVS checkout of classpath:
cvs -d:ext:address@hidden:/cvs-latest/classpath co classpath

Then to find the files that differ or don't exist (anymore) do:

for i in `cat files_libgcj`; do if test -f classpath/$i; \
then cmp classpath/$i ~/src/gcc/libjava/$i | cut -f1 -d\ | cut -f2- -d/;\
else echo "$i"; fi; done

Which gives 212 files that differ.
The same for kaffe gives 66 that differ.

We need to find explanations for these differences. I have not done that
yet. But most differences seem easily explainable.

Then for the classpath checkout we can generate the list of files which
are neither in libgcj nor kaffe with:

for i in `find * -type f | grep -v CVS | grep -v external`; \
do if grep ^$i\$ files_libgcj > /dev/null \
      || grep ^$i\$ files_kaffe > /dev/null; \
then echo $i > /dev/null; else echo $i; fi; done

This gives 958 files. That need to be checked against the latest safe
checkout from:

cvs -d:ext:address@hidden:/cvs-2003-09-16/classpath \
    co -d old-classpath classpath

We can ignore the files we already know are OK from libgcj and kaffe
with:

for i in `cat classpath-cmp`; do if test -f old-classpath/$i;\
then cmp old-classpath/$i classpath/$i | cut -f1 -d\ | cut -f2- -d/;\
else echo "$i"; fi; done

Which gives 127 file differences, not already in libgcj and kaffe, that
need to be checked.

Again I have not done this, but most differences look like our normal
updates between September 16 and December 1.

The above ignores the external directory which contains a fresh
GNU-JAXP. I don't know whether or not the ClasspathX hackers have been
able to do a audit of that code yet.

I don't know how long the above will take me and help is appreciated.

Cheer,

Mark

Attachment: signature.asc
Description: This is a digitally signed message part


reply via email to

[Prev in Thread] Current Thread [Next in Thread]