Changeset 558592a


Ignore:
Timestamp:
May 8, 2019 1:50:26 PM (18 months ago)
Author:
zzz <zzz@…>
Branches:
master
Children:
cb0235b
Parents:
41e8b6d
Message:

Utils: Auto-generate su3 output file for extract if not specified

Files:
2 edited

Legend:

Unmodified
Added
Removed
  • core/java/src/net/i2p/crypto/SU3File.java

    r41e8b6d r558592a  
    616616
    617617            int idx = g.getOptind();
    618             String cmd = args[idx];
     618            String cmd = args[idx].toLowerCase(Locale.US);
    619619            List<String> a = new ArrayList<String>(Arrays.asList(args).subList(idx + 1, args.length));
    620620
     
    642642                ok = genKeysCLI(stype, a.get(0), a.get(1), crlfile, a.get(2), kspass);
    643643            } else if ("extract".equals(cmd)) {
    644                 ok = extractCLI(a.get(0), a.get(1), shouldVerify, kfile);
     644                String outfile = (a.size() > 1) ? a.get(1) : null;
     645                ok = extractCLI(a.get(0), outfile, shouldVerify, kfile);
    645646            } else {
    646647                showUsageCLI();
     
    662663                           "       SU3File showversion  signedFile.su3\n" +
    663664                           "       SU3File verifysig    [-k file.crt] signedFile.su3  ## -k use this pubkey cert for verification\n" +
    664                            "       SU3File extract      [-x] [-k file.crt] signedFile.su3 outFile   ## -x don't check sig");
     665                           "       SU3File extract      [-x] [-k file.crt] signedFile.su3 [outFile]   ## -x don't check sig");
    665666        System.err.println("Default keystore password: \"" + KeyStoreUtil.DEFAULT_KEYSTORE_PASSWORD + '"');
    666667        System.err.println(dumpTypes());
     
    929930
    930931    /**
     932     *  @param outFile if null, will use a name derived from signedFile
    931933     *  @return success
    932934     *  @since 0.9.9
     
    939941                file.setPublicKeyCertificate(new File(pkFile));
    940942            file.setVerifySignature(verifySig);
     943            if (outFile == null) {
     944                outFile = signedFile;
     945                if (outFile.endsWith(".su3") && outFile.length() > 4)
     946                    outFile = outFile.substring(0, outFile.length() - 4);
     947                String sfx;
     948                switch (file.getFileType()) {
     949                  case TYPE_ZIP:
     950                    sfx = ".zip";
     951                    break;
     952                  case TYPE_XML:
     953                    sfx = ".xml";
     954                    break;
     955                  case TYPE_HTML:
     956                    sfx = ".html";
     957                    break;
     958                  case TYPE_XML_GZ:
     959                    sfx = ".xml.gz";
     960                    break;
     961                  case TYPE_TXT_GZ:
     962                    sfx = ".txt.gz";
     963                    break;
     964                  default:
     965                    sfx = ".extracted";
     966                    break;
     967                }
     968                outFile = outFile + sfx;
     969                // above causes failure, quick fix
     970                file = new SU3File(signedFile);
     971            }
    941972            File out = new File(outFile);
    942973            boolean ok = file.verifyAndMigrate(out);
    943974            if (ok)
    944                 System.out.println("File extracted (signed by " + file.getSignerString() + ' ' + file._sigType + ')');
     975                System.out.println("File extracted to " + outFile + " (signed by " + file.getSignerString() + ' ' + file._sigType + ')');
    945976            else
    946977                System.out.println("Signature INVALID (signed by " + file.getSignerString() + ' ' + file._sigType +')');
  • router/java/src/net/i2p/router/RouterVersion.java

    r41e8b6d r558592a  
    1919    public final static String ID = "Monotone";
    2020    public final static String VERSION = CoreVersion.VERSION;
    21     public final static long BUILD = 0;
     21    public final static long BUILD = 1;
    2222
    2323    /** for example "-test" */
Note: See TracChangeset for help on using the changeset viewer.