Add shortcut for dell.

This commit is contained in:
Slava Bacherikov committed 2012-01-22 06:34:42 +02:00
1 parent 96a4e9c17e
commit b0b73cdf2e
1 file changed
+39 -5
+39 -5
View File
@@ -489,15 +489,15 @@ function dell_encode(in_str, cnt, serial){
} }
/* 7 symbols + 4 symbols ( 595B, D35B, 2A7B ) */ /* 7 symbols + 4 symbols ( 595B, D35B, 2A7B, A95B ) */
function getBiosPwdForSonyTag(serial){ function getBiosPwdForDellTag(serial){
var serial_arr = StrintToArray(serial); var serial_arr = StrintToArray(serial);
serial_arr = serial_arr.concat(calc_suffix_tag(serial_arr)); serial_arr = serial_arr.concat(calc_suffix_tag(serial_arr));
return answerToString(dell_encode(serial_arr,23, serial)); return answerToString(dell_encode(serial_arr,23, serial));
} }
/* 12 symbols + 4 symbols ( 595B, D35B, 2A7B ) */ /* 12 symbols + 4 symbols ( 595B, D35B, 2A7B, A95B ) */
function getBiosPwdForSonyHddNew(serial){ function getBiosPwdForDellHddNew(serial){
var serial_arr = StrintToArray(serial); var serial_arr = StrintToArray(serial);
serial_arr = serial_arr.concat(calc_suffix_hdd_new(serial_arr)); serial_arr = serial_arr.concat(calc_suffix_hdd_new(serial_arr));
return answerToString(dell_encode(serial_arr,23, serial)); return answerToString(dell_encode(serial_arr,23, serial));
@@ -505,7 +505,7 @@ function getBiosPwdForSonyHddNew(serial){
/* Depends only in first two chars /* Depends only in first two chars
* 12 symbols */ * 12 symbols */
function getBiosPwdForSonyHddOld(serial){ function getBiosPwdForDellHddOld(serial){
var t_arr = calc_suffix_hdd_old(serial); var t_arr = calc_suffix_hdd_old(serial);
var ret_str = ""; var ret_str = "";
for(var i=0;i<t_arr.length;i++){ for(var i=0;i<t_arr.length;i++){
@@ -847,6 +847,23 @@ function numberChecker(serial, len_arr, decimal, hexdecimal){
return false; return false;
} }
} }
function dellChecker(serial, len_arr, series_arr){
series_arr = (typeof(series_arr) == 'undefine') ? false : series_arr;
if((!series_arr) && has_element(serial.length, len_arr)){
return true;
}
var ls = serial.length;
for(var i=0;i<len_arr.len_arr;i++){
var l = series_arr[i].length
if(serial.substr(ls-l,ls) == series_arr[i]){
return true;
}
}
return false;
}
/* Just shortcut */ /* Just shortcut */
function autoCheckAndRun(serial, run_func, len_arr, decimal, hexdecimal){ function autoCheckAndRun(serial, run_func, len_arr, decimal, hexdecimal){
if(numberChecker(serial, len_arr,decimal,hexdecimal)){ if(numberChecker(serial, len_arr,decimal,hexdecimal)){
@@ -870,6 +887,18 @@ function autoCheckAndRunWithKey(serial, run_func,
return false; return false;
} }
} }
/* Just shortcut */
function dellCheckAndRunWithKey(serial, run_func, key, len_arr, series){
if(dellChecker(serial, len_arr, series)){
var r_ob = new Object();
r_ob[key] = run_func(serial);
return r_ob;
} else {
return false;
}
}
/* Auto function return password if serial is valid, /* Auto function return password if serial is valid,
* or false if it is bad */ * or false if it is bad */
function autoGetBiosPwdForSony(serial){ function autoGetBiosPwdForSony(serial){
@@ -925,6 +954,11 @@ function autoGetBiosPwdForFSIhex(serial){
[8,20], false, true); [8,20], false, true);
} }
function autoGetBiosPwdForDellHddOld(serial){
return dellCheckAndRunWithKey(serial, getBiosPwdForDellHddOld,
DELL_HDD_OLD, [11], false);
}
var arr_of_bios_pwgen_fun = [autoGetBiosPwdForSony, var arr_of_bios_pwgen_fun = [autoGetBiosPwdForSony,
autoGetBiosPwdForSamsung, autoGetBiosPwdForSamsung,
autoGetBiosPwdForAllPhoenix, autoGetBiosPwdForAllPhoenix,