when underscore is used in class file name ( ex A_B) the generated header file name suffixes the underscore with 0005f. ( A_0005fB.h is generated).
see the example below.
bablu:/home/sm123058/sudha/bugs/bug_javah 122 % java -version
java version "1.4.0-beta3"
Java(TM) 2 Runtime Environment, Standard Edition (build 1.4.0-beta3-b78)
Java HotSpot(TM) Client VM (build 1.4.0-beta3-b78, mixed mode)
bablu:/home/sm123058/sudha/bugs/bug_javah 123 % ls
./ ../ A_B.java
bablu:/home/sm123058/sudha/bugs/bug_javah 124 % cat A_B.java
class A_B {}
bablu:/home/sm123058/sudha/bugs/bug_javah 125 % javac *.java
bablu:/home/sm123058/sudha/bugs/bug_javah 126 % javah A_B
bablu:/home/sm123058/sudha/bugs/bug_javah 127 % ls
./ ../ A_0005fB.h A_B.class A_B.java
bablu:/home/sm123058/sudha/bugs/bug_javah 128 %