📄 snmpvacmconfigure.java
字号:
try { do { if(i == array.length) { char[] dummy = new char[array.length * 2]; System.arraycopy(array, 0, dummy, 0, array.length); array = dummy; } ch = (char)(System.in.read() & 0xff); array[i++] = ch; } while(ch != newLine); line = new String(array, 0, i-1); } catch(Exception exp) { } return line; } public void setDebug(boolean bool) { api.setDebug(bool); } public static void main(String[] args) { int DEBUG = 0; int PORT = 1; int RETRIES = 2; int TIMEOUT = 3; // int STORAGE_TYPE = 4; int VERSION = 4; int USERNAME = 5; int AUTHPROTOCOL = 6; int AUTHPASSWORD = 7; int PRIVPASSWORD = 8; int CONTEXTNAME = 9; int CONTEXTID = 10; int DB_DRIVER = 11; int DB_URL = 12; int DB_USER = 13; int DB_PASSWORD = 14; int HOST = 0; String usage = "\nsnmpget [-d] [-p port] [-r retries] [-t timeout]\n" + // "[-st storage_type]\n" + "[-v version(v1/v2/v3)]" + "[-u userName]\n" + "[-a auth_protocol] [-w auth_password] [-s priv_password]\n" + "[-n contextName] [-i contextID]\n" + "[-DB_driver database_driver]\n" + "[-DB_url database_url]\n" + "[-DB_username database_username]\n" + "[-DB_password database_password]\n" + "host [command]\n\n" + "COMMAND\n" + "createAccess GROUPNAME PREFIX SECURITYMODEL SECURITYLEVEL MATCH READ WRITE NOTIFY \n" + // "[-st storage_type]\n" + "deleteAccess GROUPNAME CONTEXTPREFIX SECURITYMODEL SECURITYLEVEL\n" + "createSecurityToGroup MODEL SECURITYNAME GROUPNAME \n" + // "[-st storage_type]\n" + "deleteSecurityToGroup MODEL SECURITYNAME\n" + "createView NAME SUBTREE MASK [-type familyType]\n" + // "[-st storage_type]\n" + "deleteView NAME SUBTREE\n"; String options[] = { "-d", "-p", "-r", "-t" // "-st" ,"-v" ,"-u", "-a", "-w", "-s", "-n", "-i", "-DB_driver", "-DB_url", "-DB_username", "-DB_password" }; String values[] = { "None", null, null, null // null ,null ,null, null, null, null, null, null, null, null, null, null }; ParseOptions opt = new ParseOptions(args, options, values, usage); if(opt.remArgs.length == 0) { System.out.println("Host field is Mandatory."); System.out.println(usage); System.exit(1); } snmpvacmconfigure vacmConfig = null; try { vacmConfig = new snmpvacmconfigure(); } catch(SnmpException exp) { System.out.println(exp.toString()); System.exit(1); } vacmConfig.setRemoteHost(opt.remArgs[HOST]); if(values[VERSION] != null) { if(values[VERSION].equals("v1")) { vacmConfig.setVersion(SnmpAPI.SNMP_VERSION_1); } else if(values[VERSION].equals("v2")) { vacmConfig.setVersion(SnmpAPI.SNMP_VERSION_2); } else if(values[VERSION].equals("v3")) { vacmConfig.setVersion(SnmpAPI.SNMP_VERSION_3); } } if(vacmConfig.version == SnmpAPI.SNMP_VERSION_3) { if(values[USERNAME] == null) { System.out.println( "UserName should be specified in case of SNMP_3."); System.exit(1); } vacmConfig.setUserName(values[USERNAME]); vacmConfig.setAuthPassword(values[AUTHPASSWORD]); if(values[AUTHPROTOCOL] != null) { if(values[AUTHPROTOCOL].equals("MD5")) { vacmConfig.setAuthProtocol(USMUserEntry.MD5_AUTH); } else if(values[AUTHPROTOCOL].equals("SHA")) { vacmConfig.setAuthProtocol(USMUserEntry.SHA_AUTH); } else { System.out.println("Invalid AuthProtocol. " + "It can be either MD5 or SHA: " + values[AUTHPROTOCOL]); System.exit(1); } } vacmConfig.setPrivPassword(values[PRIVPASSWORD]); try { vacmConfig.createUSMEntry(); } catch(Exception exp) { System.out.println("Could not create USM Entry.\n" + "Please check the parameters: " + exp.toString()); System.exit(1); } vacmConfig.setContextName(values[CONTEXTNAME]); } if(values[TIMEOUT] != null) { try { vacmConfig.setTimeout(Integer.parseInt(values[TIMEOUT])); } catch(NumberFormatException nfe) { System.out.println("Invalid timeout value:"+values[TIMEOUT] ); System.exit(1); } } if(values[RETRIES] != null) { try { vacmConfig.setRetries(Integer.parseInt(values[RETRIES])); } catch(NumberFormatException nfe) { System.out.println("Invalid retries value:"+values[RETRIES] ); System.exit(1); } } if(values[PORT] != null) { try { vacmConfig.setRemotePort(Integer.parseInt(values[PORT])); } catch(NumberFormatException nfe) { System.out.println("Invalid port:" + values[PORT]); System.exit(1); } } if(values[DEBUG].equals("Set")) { vacmConfig.setDebug(true); } if(opt.remArgs.length > 1) { String s = opt.remArgs[1]; if(s.equals("createAccess")) { if(opt.remArgs.length == 10) { StringBuffer sb = new StringBuffer(); for(int i=2;i<opt.remArgs.length;i++) { sb.append(opt.remArgs[i] + " "); } /* if(values[STORAGE_TYPE] != null) { sb.append(values[STORAGE_TYPE]); } else { sb.append("3"); }*/ vacmConfig.params = sb.toString(); vacmConfig.createAccess(); } else { System.out.println(usage); } } else if(s.equals("deleteAccess")) { if(opt.remArgs.length == 6) { StringBuffer sb = new StringBuffer(); for(int i=2;i<opt.remArgs.length;i++) { sb.append(opt.remArgs[i] + " "); } vacmConfig.params = sb.toString(); vacmConfig.deleteAccess(); } else { System.out.println(usage); } } else if(s.equals("createSecurityToGroup")) { if(opt.remArgs.length == 5) { StringBuffer sb = new StringBuffer(); for(int i=2;i<opt.remArgs.length;i++) { sb.append(opt.remArgs[i] + " "); } /* if(values[STORAGE_TYPE] != null) { sb.append(values[STORAGE_TYPE]); } else { sb.append("3"); }*/ vacmConfig.params = sb.toString(); vacmConfig.createSecurityToGroup(); } else { System.out.println(usage); } } else if(s.equals("deleteSecurityToGroup")) { if(opt.remArgs.length == 4) { StringBuffer sb = new StringBuffer(); for(int i=2;i<opt.remArgs.length;i++) { sb.append(opt.remArgs[i] + " "); } vacmConfig.params = sb.toString(); vacmConfig.deleteSecurityToGroup(); } else { System.out.println(usage); } } else if(s.equals("createView")) { if(opt.remArgs.length == 5) { StringBuffer sb = new StringBuffer(); for(int i=2;i<opt.remArgs.length;i++) { sb.append(opt.remArgs[i] + " "); } /* if(values[STORAGE_TYPE] != null) { sb.append(values[STORAGE_TYPE]); } else { sb.append("3"); }*/ vacmConfig.params = sb.toString(); vacmConfig.createView(); } else { System.out.println(usage); } } else if(s.equals("deleteView")) { if(opt.remArgs.length == 4) { StringBuffer sb = new StringBuffer(); for(int i=2;i<opt.remArgs.length;i++) { sb.append(opt.remArgs[i] + " "); } vacmConfig.params = sb.toString(); vacmConfig.deleteView(); } else { System.out.println(usage); } } else { System.out.println( "COMMAND should be any one of the following:"); System.out.println( "createAccess deleteAccess createSecurityToGroup"); System.out.println( "deleteSecurityToGroup createView deleteView"); } System.exit(1); } vacmConfig.processConfiguration(); vacmConfig.close(); System.exit(1); }}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -