Clover Coverage Report
Coverage timestamp: Sun Mar 23 2008 08:24:39 GMT
23   86   6   23
4   36   0.26   1
1     6  
1    
 
 
  P12SecurityTest       Line # 51 23 6 60.7% 0.60714287
 
No Tests
 
1    /*
2    * Copyright (c) 2006, University of Kent
3    * All rights reserved.
4    *
5    * Redistribution and use in source and binary forms, with or without
6    * modification, are permitted provided that the following conditions are met:
7    *
8    * Redistributions of source code must retain the above copyright notice, this
9    * list of conditions and the following disclaimer.
10    *
11    * Redistributions in binary form must reproduce the above copyright notice,
12    * this list of conditions and the following disclaimer in the documentation
13    * and/or other materials provided with the distribution.
14    *
15    * 1. Neither the name of the University of Kent nor the names of its
16    * contributors may be used to endorse or promote products derived from this
17    * software without specific prior written permission.
18    *
19    * 2. THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS
20    * IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
21    * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
22    * PURPOSE ARE DISCLAIMED.
23    *
24    * 3. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
25    * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
26    * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
27    * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
28    * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
29    * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
30    * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
31    * POSSIBILITY OF SUCH DAMAGE.
32    *
33    * 4. YOU AGREE THAT THE EXCLUSIONS IN PARAGRAPHS 2 AND 3 ABOVE ARE REASONABLE
34    * IN THE CIRCUMSTANCES. IN PARTICULAR, YOU ACKNOWLEDGE (1) THAT THIS
35    * SOFTWARE HAS BEEN MADE AVAILABLE TO YOU FREE OF CHARGE, (2) THAT THIS
36    * SOFTWARE IS NOT "PRODUCT" QUALITY, BUT HAS BEEN PRODUCED BY A RESEARCH
37    * GROUP WHO DESIRE TO MAKE THIS SOFTWARE FREELY AVAILABLE TO PEOPLE WHO WISH
38    * TO USE IT, AND (3) THAT BECAUSE THIS SOFTWARE IS NOT OF "PRODUCT" QUALITY
39    * IT IS INEVITABLE THAT THERE WILL BE BUGS AND ERRORS, AND POSSIBLY MORE
40    * SERIOUS FAULTS, IN THIS SOFTWARE.
41    *
42    * 5. This license is governed, except to the extent that local laws
43    * necessarily apply, by the laws of England and Wales.
44    */
45    package issrg.test;
46   
47    /**
48    * This class tests that logging into a P12 file works correctly.
49    */
50   
 
51    public class P12SecurityTest {
 
52  1 toggle public static void main(String [] args) {
53  1 System.setProperty("line.separator", "\r\n");
54  1 if (args.length!=2){
55  0 System.out.println("usage: P12SecurityTest <a file listing passwords and pkcs#12 files> <where to log the output to>");
56  0 return;
57    }
58  1 java.io.PrintStream out;
59  1 try{
60  1 out=new java.io.PrintStream(new java.io.FileOutputStream(args[1]));
61    }catch(Exception e){
62  0 e.printStackTrace(System.out);
63  0 return;
64    }
65  1 try{
66  1 java.io.BufferedReader br = new java.io.BufferedReader(new java.io.FileReader(args[0]));
67   
68  1 String s;
69  0 while((s=br.readLine())!=null){
70  2 int i=s.indexOf(" ");
71  2 try{
72  2 issrg.security.PKCS12Security ps = new issrg.security.PKCS12Security();
73  2 ps.login(s.substring(i+1), s.substring(0, i).toCharArray());
74  2 out.println(s+" - Logged in ok");
75    }catch(Exception e1){
76  0 out.println(s+" - Failed to log in");
77  0 e1.printStackTrace(out);
78    }
79    }
80    }catch(Exception e){
81  0 out.println("Failed to read the file");
82  0 e.printStackTrace(out);
83    }
84  1 out.close();
85    }
86    }