データ構造 | |
struct | err_code_struct |
関数 | |
const char * | smb_dos_err_name (uint8 e_class, uint16 num) |
const char * | get_dos_error_msg (WERROR result) |
const char * | smb_dos_err_class (uint8 e_class) |
char * | smb_dos_errstr (char *inbuf) |
WERROR | map_werror_from_unix (int error) |
変数 | |
err_code_struct | dos_msgs [] |
err_code_struct | server_msgs [] |
err_code_struct | hard_msgs [] |
struct { | |
int code | |
const char * e_class | |
err_code_struct * err_msgs | |
} | err_classes [] |
const char* smb_dos_err_name | ( | uint8 | e_class, | |
uint16 | num | |||
) |
参照先 code・err・err_classes・err_msgs・name.
参照元 get_dos_error_msg()・run_error_map_extract().
00163 { 00164 static pstring ret; 00165 int i,j; 00166 00167 for (i=0;err_classes[i].e_class;i++) 00168 if (err_classes[i].code == e_class) { 00169 if (err_classes[i].err_msgs) { 00170 err_code_struct *err = err_classes[i].err_msgs; 00171 for (j=0;err[j].name;j++) 00172 if (num == err[j].code) { 00173 return err[j].name; 00174 } 00175 } 00176 slprintf(ret, sizeof(ret) - 1, "%d",num); 00177 return ret; 00178 } 00179 00180 slprintf(ret, sizeof(ret) - 1, "Error: Unknown error class (%d,%d)",e_class,num); 00181 return(ret); 00182 }
const char* get_dos_error_msg | ( | WERROR | result | ) |
参照先 result・smb_dos_err_name().
参照元 cmd_spoolss_open_printer_ex()・reset_all_printerdata().
00187 { 00188 uint16 errnum; 00189 00190 errnum = W_ERROR_V(result); 00191 00192 return smb_dos_err_name(ERRDOS, errnum); 00193 }
const char* smb_dos_err_class | ( | uint8 | e_class | ) |
参照先 code・err_classes.
00199 { 00200 static pstring ret; 00201 int i; 00202 00203 for (i=0;err_classes[i].e_class;i++) { 00204 if (err_classes[i].code == e_class) { 00205 return err_classes[i].e_class; 00206 } 00207 } 00208 00209 slprintf(ret, sizeof(ret) - 1, "Error: Unknown class (%d)",e_class); 00210 return(ret); 00211 }
char* smb_dos_errstr | ( | char * | inbuf | ) |
参照先 code・DEBUGLEVEL・e_class・err・err_classes・err_msgs・message・name.
参照元 cli_smb_errstr().
00217 { 00218 static pstring ret; 00219 int e_class = CVAL(inbuf,smb_rcls); 00220 int num = SVAL(inbuf,smb_err); 00221 int i,j; 00222 00223 for (i=0;err_classes[i].e_class;i++) 00224 if (err_classes[i].code == e_class) { 00225 if (err_classes[i].err_msgs) { 00226 err_code_struct *err = err_classes[i].err_msgs; 00227 for (j=0;err[j].name;j++) 00228 if (num == err[j].code) { 00229 if (DEBUGLEVEL > 0) 00230 slprintf(ret, sizeof(ret) - 1, "%s - %s (%s)", 00231 err_classes[i].e_class, 00232 err[j].name,err[j].message); 00233 else 00234 slprintf(ret, sizeof(ret) - 1, "%s - %s", 00235 err_classes[i].e_class,err[j].name); 00236 return ret; 00237 } 00238 } 00239 00240 slprintf(ret, sizeof(ret) - 1, "%s - %d",err_classes[i].e_class,num); 00241 return ret; 00242 } 00243 00244 slprintf(ret, sizeof(ret) - 1, "Error: Unknown error (%d,%d)",e_class,num); 00245 return(ret); 00246 }
WERROR map_werror_from_unix | ( | int | error | ) |
参照先 map_nt_error_from_unix()・ntstatus_to_werror()・status.
参照元 _spoolss_startdocprinter()・print_job_delete().
00252 { 00253 NTSTATUS status = map_nt_error_from_unix(error); 00254 return ntstatus_to_werror(status); 00255 }
初期値:
{ {"ERRnowrite",19,"Attempt to write on write-protected diskette."}, {"ERRbadunit",20,"Unknown unit."}, {"ERRnotready",21,"Drive not ready."}, {"ERRbadcmd",22,"Unknown command."}, {"ERRdata",23,"Data error (CRC)."}, {"ERRbadreq",24,"Bad request structure length."}, {"ERRseek",25 ,"Seek error."}, {"ERRbadmedia",26,"Unknown media type."}, {"ERRbadsector",27,"Sector not found."}, {"ERRnopaper",28,"Printer out of paper."}, {"ERRwrite",29,"Write fault."}, {"ERRread",30,"Read fault."}, {"ERRgeneral",31,"General failure."}, {"ERRbadshare",32,"An open conflicts with an existing open."}, {"ERRlock",33,"A Lock request conflicted with an existing lock or specified an invalid mode, or an Unlock requested attempted to remove a lock held by another process."}, {"ERRwrongdisk",34,"The wrong disk was found in a drive."}, {"ERRFCBUnavail",35,"No FCBs are available to process request."}, {"ERRsharebufexc",36,"A sharing buffer has been exceeded."}, {NULL,-1,NULL}}
int code |
const char* e_class |
struct { ... } err_classes[] |