printerxpl-forge 6.2.0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (97) hide show
  1. nse/README.md +204 -0
  2. nse/__init__.py +6 -0
  3. nse/install_nse.py +412 -0
  4. nse/lib/printerxpl.lua +238 -0
  5. nse/scripts/cups-info.nse +74 -0
  6. nse/scripts/cups-queue-info.nse +43 -0
  7. nse/scripts/hp-printers-cve-2022-1026.nse +121 -0
  8. nse/scripts/http-device-mac.nse +107 -0
  9. nse/scripts/http-hp-ilo-info.nse +121 -0
  10. nse/scripts/http-info-xerox-enum.nse +101 -0
  11. nse/scripts/http-vuln-cve2022-1026.nse +158 -0
  12. nse/scripts/lexmark-config.nse +89 -0
  13. nse/scripts/pjl-ready-message.nse +106 -0
  14. nse/scripts/printer-banner.nse +217 -0
  15. nse/scripts/printer-cups-rce.nse +189 -0
  16. nse/scripts/printer-cve-detect.nse +279 -0
  17. nse/scripts/printer-discover.nse +205 -0
  18. nse/scripts/printer-firmware-exposed.nse +219 -0
  19. nse/scripts/printer-hp-pjl.nse +192 -0
  20. nse/scripts/printer-http-ews.nse +293 -0
  21. nse/scripts/printer-ipp-info.nse +235 -0
  22. nse/scripts/printer-lexmark-ipp.nse +203 -0
  23. nse/scripts/printer-passback.nse +204 -0
  24. nse/scripts/printer-pjl-info.nse +146 -0
  25. nse/scripts/printer-printnightmare.nse +211 -0
  26. nse/scripts/printer-snmp-info.nse +176 -0
  27. nse/scripts/printer-vuln-check.nse +256 -0
  28. nse/scripts/snmp-device-mac.nse +93 -0
  29. nse/scripts/snmp-info.nse +146 -0
  30. nse/scripts/snmp-sysdescr.nse +70 -0
  31. printerxpl_forge-6.2.0.dist-info/METADATA +919 -0
  32. printerxpl_forge-6.2.0.dist-info/RECORD +97 -0
  33. printerxpl_forge-6.2.0.dist-info/WHEEL +5 -0
  34. printerxpl_forge-6.2.0.dist-info/entry_points.txt +4 -0
  35. printerxpl_forge-6.2.0.dist-info/licenses/LICENSE +21 -0
  36. printerxpl_forge-6.2.0.dist-info/top_level.txt +4 -0
  37. src/assets/fonts/gunplay.pfa +1671 -0
  38. src/assets/fonts/kshandwrt.pfa +315 -0
  39. src/assets/fonts/laksoner.pfa +2402 -0
  40. src/assets/fonts/paintcans.pfa +9699 -0
  41. src/assets/fonts/stencilod.pfa +4076 -0
  42. src/assets/fonts/takecover.pfa +26138 -0
  43. src/assets/fonts/topsecret.pfa +6652 -0
  44. src/assets/fonts/whoa.pfa +773 -0
  45. src/assets/mibs/HOST-RESOURCES-MIB +1540 -0
  46. src/assets/mibs/Printer-MIB +4389 -0
  47. src/assets/mibs/README.md +9 -0
  48. src/assets/mibs/SNMPv2-MIB +854 -0
  49. src/assets/overlays/hacker.eps +596 -0
  50. src/assets/overlays/smiley.eps +214 -0
  51. src/assets/overlays/smiley2.eps +240 -0
  52. src/core/attack_orchestrator.py +1025 -0
  53. src/core/capabilities.py +323 -0
  54. src/core/destructive_audit.py +430 -0
  55. src/core/discovery.py +488 -0
  56. src/core/osdetect.py +74 -0
  57. src/core/poly_runner.py +579 -0
  58. src/core/printer.py +1426 -0
  59. src/main.py +2134 -0
  60. src/modules/install_printer.py +318 -0
  61. src/modules/login_bruteforce.py +852 -0
  62. src/modules/pcl.py +506 -0
  63. src/modules/pjl.py +3575 -0
  64. src/modules/print_job.py +1290 -0
  65. src/modules/ps.py +1102 -0
  66. src/payloads/__init__.py +98 -0
  67. src/payloads/assets/overlays/notice.eps +9 -0
  68. src/protocols/__init__.py +19 -0
  69. src/protocols/firmware.py +738 -0
  70. src/protocols/ipp.py +216 -0
  71. src/protocols/ipp_attacks.py +609 -0
  72. src/protocols/lpd.py +141 -0
  73. src/protocols/network_map.py +1004 -0
  74. src/protocols/raw.py +173 -0
  75. src/protocols/smb.py +359 -0
  76. src/protocols/ssrf_pivot.py +427 -0
  77. src/protocols/storage.py +587 -0
  78. src/ui/__init__.py +6 -0
  79. src/ui/interactive.py +742 -0
  80. src/ui/spinner.py +112 -0
  81. src/ui/tables.py +132 -0
  82. src/utils/banner_grabber.py +852 -0
  83. src/utils/codebook.py +456 -0
  84. src/utils/config.py +522 -0
  85. src/utils/cve_loader.py +158 -0
  86. src/utils/default_creds.py +134 -0
  87. src/utils/discovery_online.py +1327 -0
  88. src/utils/exploit_manager.py +805 -0
  89. src/utils/fuzzer.py +220 -0
  90. src/utils/helper.py +732 -0
  91. src/utils/local_printers.py +307 -0
  92. src/utils/ml_engine.py +491 -0
  93. src/utils/operators.py +474 -0
  94. src/utils/ports.py +234 -0
  95. src/utils/vuln_scanner.py +823 -0
  96. src/utils/wordlist_loader.py +412 -0
  97. src/version.py +36 -0
src/utils/codebook.py ADDED
@@ -0,0 +1,456 @@
1
+ #!/usr/bin/env python3
2
+ # -*- coding: utf-8 -*-
3
+
4
+
5
+ # Author : Andre Henrique (@mrhenrike)
6
+ # GitHub : https://github.com/mrhenrike
7
+ # LinkedIn : https://linkedin.com/in/mrhenrike
8
+ # X/Twitter : https://x.com/mrhenrike
9
+
10
+ # python standard library
11
+ import re
12
+
13
+
14
+ class codebook():
15
+
16
+ '''
17
+ ┌───────────────────────────────────────────────────┐
18
+ │ PJL Error Codes │
19
+ ├───────────────────────────────────────────────────┤
20
+ │ 10xxx: Informational Messages │
21
+ │ 11xxx: Background Paper Mount │
22
+ │ 12xxx: Background Paper Tray Status │
23
+ │ 15xxx: Output Bin Status │
24
+ │ 20xxx: PJL Parser Errors │
25
+ │ 25xxx: PJL Parser Warnings │
26
+ │ 27xxx: PJL Semantic Errors │
27
+ │ 30xxx: Auto-Continuable Conditions │
28
+ │ 32xxx: PJL File System Errors │
29
+ │ 35xxx: Potential Operator Intervention Conditions │
30
+ │ 40xxx: Operator Intervention Required │
31
+ │ 41xxx: Foreground Paper Mount │
32
+ │ 42xxx: Paper Jam Errors │
33
+ │ 43xxx: Optional Paper Handling Device Errors │
34
+ │ 44xxx: Paper Jam Information │
35
+ │ 50xxx: Hardware Errors │
36
+ └───────────────────────────────────────────────────┘
37
+ '''
38
+
39
+ def get_errors(self, code):
40
+ return (self.codelist[key] for key in self.codelist if re.match(key, code))
41
+
42
+ codelist = {
43
+ # 10xxx: Informational Messages
44
+ '10001': "READY (online)",
45
+ '10002': "READY (offline)",
46
+ '10003': "WARMING UP",
47
+ '10004': "SELF TEST",
48
+ '10005': "RESET, CLEARING MEMORY",
49
+ '10006': "TONER LOW",
50
+ '10007': "CANCELING JOB",
51
+ '10010': "STATUS BUFFER OVERFLOW",
52
+ '10013': "SELF TEST",
53
+ '10011': "INITIALIZING",
54
+ '10014': "PRINTING TEST",
55
+ '10015': "TYPEFACE LIST",
56
+ '10016': "ENGINE TEST",
57
+ '10017': "DEMO PAGE",
58
+ '10018': "MENU RESET",
59
+ '10019': "RESET ACTIVE I/O",
60
+ '10020': "RESET ALL I/O",
61
+ '10021': "COLD RESET",
62
+ '10022': "CONFIG PAGE",
63
+ '10023': "PROCESSING JOB",
64
+ '10024': "DATA RECEIVED",
65
+ '10025': "ACCESS DENIED",
66
+ '10026': "NO JOB TO CANCEL",
67
+ '10027': "CLEARING PAPER PATH",
68
+ '10028': "PRINTING ERROR LOG",
69
+ '10029': "FORMFEEDING",
70
+ '10030': "DISPLAY JOB MESSACE RECEIVED",
71
+ '10031': "ENGINE CLEANING",
72
+
73
+ # 11xxx: Background Paper Mount
74
+ '11.00': "Unknown Paper",
75
+ '11.01': "Unknown Envelope",
76
+ '11.02': "Letter Paper",
77
+ '11.03': "Legal Paper",
78
+ '11.04': "A4 Paper",
79
+ '11.05': "Executive Paper",
80
+ '11.06': "Ledger Paper",
81
+ '11.07': "A3 Paper",
82
+ '11.08': "COM10 Envelope",
83
+ '11.09': "Monarch Envelope",
84
+ '11.10': "C5 Envelope",
85
+ '11.11': "DL Envelope",
86
+ '11.12': "Japan B4 Paper",
87
+ '11.13': "Japan B5 Paper",
88
+ '11.14': "B5 Envelope",
89
+ '11.15': "Custom Media Paper",
90
+ '11.16': "J-Postcard",
91
+ '11.17': "J-RoundTrip Postcard",
92
+ '11.18': "A5 Paper",
93
+ '11.19': "Letter-R Paper",
94
+ '11.20': "A4-R Paper",
95
+ '11.21': "A5-R Paper",
96
+ '11.22': "Japan B5-R Paper",
97
+ '11.23': "Exec-R Paper",
98
+ '11.24': "A6 Paper",
99
+ '11.25': "Foolscap Paper",
100
+ '11.26': "Japan B6 Paper",
101
+
102
+ # 12xxx: Background Paper Tray Status
103
+ '12.01': "Tray Open",
104
+ '12.02': "Tray Lifting",
105
+
106
+ # 15xxx: Output Bin Status
107
+ '15..1': "Output Bin Full",
108
+ '15..2': "Output Bin Open",
109
+ '15..3': "Output Bin Broken",
110
+
111
+ # 20xxx: PJL Parser Errors
112
+ '20001': "Generic syntax error (entire PJL command ignored)",
113
+ '20002': "Unsupported command",
114
+ '20004': "Unsupported personality, system, or I/O port",
115
+ '20005': "PJL command buffer overflow",
116
+ '20006': "Illegal character or line terminated by the UEL",
117
+ '20007': "<WS> or [<CR>]<LF> missing after closing quotes",
118
+ '20008': "Invalid character in an alphanumeric value",
119
+ '20009': "Invalid character in a numeric value",
120
+ '20010': "Invalid character at the start of a string, alphanumeric value, or numeric value",
121
+ '20011': "String missing closing double-quote character",
122
+ '20012': "Numeric value starts with a decimal point",
123
+ '20013': "Numeric value does not contain any digits",
124
+ '20014': "No alphanumeric value after command modifier",
125
+ '20015': "Option name and equal sign encountered, but the value field is missing",
126
+ '20016': "More than one command modifier",
127
+ '20017': "Command modifier encountered after an option (command modifier must precede option)",
128
+ '20018': "Command not an alphanumeric value",
129
+ '20019': "Numeric value encountered when an alphanumeric value expected",
130
+ '20020': "String encountered when an alphanumeric value expected",
131
+ '20021': "Unsupported command modifier",
132
+ '20022': "Command modifier missing",
133
+ '20023': "Option missing",
134
+ '20024': "Extra data received after option name (used for commands like SET that limit the number of options supported)",
135
+ '20025': "Two decimal points in a numeric value",
136
+ '20026': "Invalid binary value",
137
+
138
+ # 25xxx: PJL Parser Warnings
139
+ '25001': "Generic warning error (part of the PJL command ignored)",
140
+ '25002': "PJL prefix missing",
141
+ '25003': "Alphanumeric value too long",
142
+ '25004': "String too long",
143
+ '25005': "Numeric value too long",
144
+ '25006': "Unsupported option name",
145
+ '25007': "Option name requires a value which is missing",
146
+ '25008': "Option name requires a value of a different type",
147
+ '25009': "Option name received with a value, but this option does not support values",
148
+ '25010': "Same option name received more than once",
149
+ '25011': "Ignored option name due to value underflow or overflow",
150
+ '25012': "Value for option experienced data loss due to data conversion (value truncated or rounded)",
151
+ '25013': "Value for option experienced data loss due to value being out of range; the value used was the closest supported limit",
152
+ '25014': "Value is of the correct type, but is out of range (value was ignored)",
153
+ '25016': "Option name received with an alphanumeric value, but this value is not supported",
154
+ '25017': "String empty, option ignored",
155
+ '25018': "A Universal Exit Language command was expected but not found",
156
+
157
+ # 27xxx: PJL Semantic Errors
158
+ '27001': "Generic semantic error",
159
+ '27002': "EOJ command encountered without a previously matching JOB command. An EOJ command does not have a matching JOB command if the number of valid EOJ commands received is greater than the number of valid JOB commands received.",
160
+ '27003': "Password protected—attempted to change NVRAM value when password is set and the job is not a secure PJL job.",
161
+ '27004': "Cannot modify the value of a read-only variable.",
162
+ '27005': "Can only use DEFAULT with this variable; cannot use SET.",
163
+ '27006': "Attempted to pass a NULL string to a command or command option that requires the string to contain at least one character.",
164
+ '27007': "Attempted to DEFAULT a variable which can only be SET.",
165
+
166
+ # 30xxx: Auto-Continuable Conditions
167
+ '30010': "STATUS BUFFER OVERFLOW",
168
+ '30016': "20 MEM OVERFLOW or 20 MEMORY OVERFLOW DATA LOST or 20 INSUFFICIENT MEMORY, PRESS GO KEY",
169
+ '30017': "21 PRINT OVERRUN or 21 PRINT OVERRUN DATA LOST or 21 PAGE TOO COMPLEX",
170
+ '30018': "40 ERROR or 40.1 HP MIO 1 ERROR or 40.2 HP MIO 2 ERROR or 40 SER IO ERROR",
171
+ '30027': "22 I/O CONFIG ERROR or 22 SER IO ERROR 22 HP MIO 1 IO ERROR CHECK SETUP or 22 HP MIO 2 IO ERROR CHECK SETUP or 22 PARALLEL IO ERROR CHECK SETUP",
172
+ '30034': "41.x ERROR or 41.3 PAPER ERROR",
173
+ '30035': "68 ERROR CHECK CONFIGURATION or 68 NVRAM ERROR, SETTINGS NOT SAVED or 68 ERROR",
174
+ '30036': "68 SERVICE or 68 NVRAM FULL CHECK CONFIGURATION or 68 NVRAM ERROR, SETTINGS NOT SAVED",
175
+ '30072': "49 REMOVE PAGE",
176
+ '30076': "PERSONALITY MEMORY OVERFLOW/ OUT OF MEMORY",
177
+ '30094': "41.1 GENERAL MISPRINT ERROR",
178
+ '30095': "41.2 BEAM DETECT MALFUNCTION",
179
+ '30096': "41.3 IMPROPER PAPER SIZE or 41.3 UNEXPECTED PAPER SIZE",
180
+ '30097': "41.4 NO VIDEO SYNC",
181
+ '30098': "41.5 NOISY VIDEO SYNC REQ SIGNAL",
182
+ '30099': "INVALID INPUT SOURCE",
183
+ '30100': "INVALID OUTPUT DESTINATION",
184
+ '30101': "BINDING AGENT OUT OF SUPPLIES",
185
+ '30102': "BINDING AGENT MEDIA MISALIGNMENT",
186
+ '30103': "BINDING AGENT MEDIA CAPACITY EXCEEDED",
187
+ '30104': "EXTERNAL INPUT DEVICE PAPER PATH ERROR",
188
+ '30105': "EXTERNAL OUTPUT DEVICE PAPER PATH ERROR",
189
+ '30106': "EXTERNAL INPUT DEVICE OPERATIONAL ERROR",
190
+ '30107': "EXTERNAL OUTPUT DEVICE OPERATIONAL ERROR",
191
+ '30108': "40 HP MIO ERROR, PRESS GO KEY",
192
+ '30109': "40 BAD SERIAL DATA FORMAT, PRESS GO KEY",
193
+ '30110': "22 HP MIO ERROR, PRESS GO KEY",
194
+ '30111': "22 PARALLEL IO ERROR, PRESS GO KEY",
195
+ '30112': "22 SERIAL IO ERROR, PRESS GO KEY",
196
+ '30113': "STOPPING CHECK LAST PAGE",
197
+ '30114': "PRESS SELECT TO CANCEL JOB",
198
+ '30119': "MEDIA FEED ERROR",
199
+
200
+ # 32xxx: PJL File System Errors
201
+ '30000': "General error",
202
+ '30001': "Volume not available",
203
+ '30002': "Disk full",
204
+ '30003': "File not found",
205
+ '30004': "No free file descriptors",
206
+ '30005': "Invalid number of bytes",
207
+ '30006': "File already exists",
208
+ '30007': "Illegal name",
209
+ '30008': "Can't delete root",
210
+ '30009': "File operation attempted on a directory",
211
+ '30010': "Directory operation attempted on a file",
212
+ '30011': "Not same volume",
213
+ '30012': "Read only",
214
+ '30013': "Directory full",
215
+ '30014': "Directory not empty",
216
+ '30015': "Bad disk",
217
+ '30016': "No label",
218
+ '30017': "Invalid parameter",
219
+ '30018': "No contiguous space",
220
+ '30019': "Can't change root",
221
+ '30020': "File Descriptor obsolete",
222
+ '30021': "Deleted",
223
+ '30022': "No block device",
224
+ '30023': "Bad seek",
225
+ '30024': "Internal error",
226
+ '30025': "Write only",
227
+ '30026': "Write protected",
228
+ '30027': "No filename",
229
+ '30051': "End of directory",
230
+ '30052': "No file system",
231
+ '30053': "No memory",
232
+ '30054': "Vol name out of range",
233
+ '30055': "Bad FS",
234
+ '30056': "Hardware failure",
235
+
236
+ # 35xxx: Potential Operator Intervention Conditions
237
+ '35028': "BAD MIO",
238
+ '35029': "W1 IMAGE ADAPT or IMAGE ASSIST or MEMORY LOW, PAGE SIMPLIFIED",
239
+ '35030': "WA JOB ALTERED",
240
+ '35031': "W2 INVALID PERS or REQUESTED LANGUAGE NOT AVAILABLE",
241
+ '35032': "WL WARNINGS LOST",
242
+ '35037': "W3 JOB ABORTED or CANCELING JOB or INSUFFICIENT MEMORY, JOB CLEARED",
243
+ '35039': "W9 JOB 600/LTR",
244
+ '35040': "W0 JOB 600/A4",
245
+ '35041': "W8 JOB 600/OFF",
246
+ '35042': "W7 JOB 300/LGL",
247
+ '35043': "W5 JOB 300/LTR",
248
+ '35044': "W6 JOB 300/A4",
249
+ '35045': "W4 JOB 300/OFF",
250
+ '35073': "WM CHK MEM CNFIG or MEMORY SETTINGS CHANGED",
251
+ '35074': "WM MEM CNFIG N/A",
252
+ '35075': "USER MAINTENANCE REQUESTED",
253
+ '35076': "WM personality MEM FULL or XXXX MEMORY FULL, STORED DATA LOST",
254
+ '35078': "Entered powersave mode (00 POWERSAVE) or POWERSAVE ON",
255
+ '35081': "WM JOB 300",
256
+ '35082': "WD DISK NOT INIT or Volume 0 NOT INIT (Volume 0 will be indicated as either DISK, FLASH, or RAMDISK as appropriate)",
257
+ '35084': "WM JOB 600/LGL",
258
+ '35085': "WM JOB 600/A3",
259
+ '35086': "WM JOB 600/11x17",
260
+ '35087': "WM JOB 300/A3",
261
+ '35088': "WM JOB 300/11x17",
262
+ '35115': "Volume 1 NOT INIT (Volume 1 is not initialized. Volume 1 will be indicated as either DISK, FLASH, or RAMDISK as appropriate)",
263
+ '35117': "Volume 2 NOT INIT (Volume 2 is not initialized. Volume 2 will be indicated as either DISK, FLASH, or RAMDISK as appropriate.)",
264
+
265
+ # 40xxx: Operator Intervention Required
266
+ '40000': "SLEEP MODE (STANDBY)",
267
+ '40005': "Cartridge error during align cartridges (or reading setup sheet—DesignJet)",
268
+ '40010': "14 NO EP CART or INSTALL TONER CARTRIDGE or no electrical contact with one or more ink cartridges (DesignJet)",
269
+ '40011': "Accessing ink cartridges (DesignJet)",
270
+ '40019': "REMOVE PAPER FROM [bin name]",
271
+ '40020': "NO MICR TONER or INSTALL MICR TONER CARTRIDGE",
272
+ '40021': "12 PRINTER OPEN OR NO EP CART or CLOSE PRINTER COVER (or lower lever or lower window—DesignJet)",
273
+ '40022': "13 PAPER JAM or REMOVE PAPER JAM",
274
+ '40024': "FE CARTRIDGE",
275
+ '40026': "PC INSTALL or INSTALL TRAY 2",
276
+ '40038': "16 LOW TONER or TONER LOW or TONER LOW, PRESS GO KEY",
277
+ '40046': "FI INSERT CART",
278
+ '40047': "FR REMOVE CART",
279
+ '40048': "[PJL OPMSG]",
280
+ '40049': "[PJL STMSG]",
281
+ '40050': "50 SERVICE or 50 FUSER ERROR, CYCLE POWER",
282
+ '40051': "51 ERROR or 51 PRINTER ERROR, CYCLE POWER",
283
+ '40052': "52 ERROR or 52 PRINTER ERROR, CYCLE POWER",
284
+ '40053': "53-xy-zz ERROR",
285
+ '40054': "54 ERROR",
286
+ '40055': "55 ERROR",
287
+ '40056': "56 ERROR",
288
+ '40057': "57 SERVICE or 57 MOTOR FAILURE, CALL SERVICE",
289
+ '40058': "58 SERVICE or FAN MOTOR FAILURE, CALL SERVICE",
290
+ '40059': "59 ERROR",
291
+ '40061': "61.x SERVICE",
292
+ '40062': "62.x SERVICE",
293
+ '40063': "63 SERVICE",
294
+ '40064': "64 SERVICE or PRINTER ERROR, CYCLE POWER",
295
+ '40065': "65 SERVICE",
296
+ '40066': "External paper handling device failure",
297
+ '40067': "67 SERVICE",
298
+ '40068': "69 SERVICE",
299
+ '40069': "70 ERROR",
300
+ '40070': "71 ERROR",
301
+ '40071': "72 SERVICE",
302
+ '40079': "PRINTER MANUALLY TAKEN OFFLINE or OFFLINE or FORMFEEDING or SERVICE MODE or 00 OFFLINE",
303
+ '40080': "EE INCOMPATIBLE or LC INCOMPATIBLE",
304
+ '40083': "FS DISK FAILURE or 311.1.1 DISK FAILURE or Volume 0 FAILURE (Volume 0 will be indicated as either DISK, FLASH, or RAMDISK as appropriate)",
305
+ '40089': "INCOMPLETE TRAY 3 INSTALLED",
306
+ '40090': "INCOMPATIBLE ENVELOPE FEEDER INSTALLED",
307
+ '40092': "81 SERVICE (XXX)",
308
+ '40093': "REMOVE DUPLEX JAM",
309
+ '40096': "41.3 UNEXPECTED PAPER SIZE CHECK PAPER IN TRAY",
310
+ '40099': "56.1 ERROR PRESS SELECT KEY",
311
+ '40100': "56.2 ERROR PRESS SELECT KEY",
312
+ '40102': "FINISHER ALIGN ERROR [BIN NAME]",
313
+ '40103': "FINISH LIMIT REACHED [BIN NAME]",
314
+ '40104': "INPUT DEVICE FEED PATH OPEN",
315
+ '40105': "OUTPUT DEVICE DELIVERY PATH OPEN",
316
+ '40106': "INPUT OPERATION ERROR X.YY",
317
+ '40107': "OUTPUT OPERATION ERROR X.YY",
318
+ '40116': "Volume 1 FAILURE (Failure on Volume 1. Volume 1 will be indicated as either DISK, FLASH, or RAMDISK as appropriate)",
319
+ '40118': "Volume 2 FAILURE (Failure on Volume 2. Volume 2 is indicated as either DISK, FLASH, or RAMDISK as appropriate.)",
320
+ '40119': "PAPER MISFEED",
321
+ '40120': "Open face-up output bin",
322
+ '40121': "Close face-up output bin",
323
+ '40122': "Duplexer must be installed",
324
+ '40123': "Duplexer error, remove duplexer",
325
+ '40124': "Bad duplexer connection",
326
+ '40128': "DRUM ERROR REPLACE DRUM KIT",
327
+ '40129': "DRUM LIFE OUT REPLACE DRUM KIT",
328
+ '40130': "DRUM LIFE LOW REPLACE DRUM KIT",
329
+ '40131': "TRANSFER KIT OUT REPLACE KIT",
330
+ '40132': "TRANSFER KIT LOW REPLACE KIT",
331
+ '40141': "WASTE TONER FULL REPLACE DRUM KIT",
332
+ '40142': "INSTALL DRUM KIT",
333
+ '40143': "REINSTALL TRANSFER BELT",
334
+ '40144': "PRESS GO TO PRINT PRESS SELECT TO CHANGE TONER",
335
+ '40146': "41.5 UNEXPECTED PAPER TYPE CHECK PAPER IN TRAY",
336
+
337
+ # 41xxx: Foreground Paper Mount
338
+ '41.00': "Unknown Paper",
339
+ '41.01': "Unknown Envelope",
340
+ '41.02': "Letter Paper",
341
+ '41.03': "Legal Paper",
342
+ '41.04': "A4 Paper",
343
+ '41.05': "Executive Paper",
344
+ '41.06': "Ledger Paper",
345
+ '41.07': "A3 Paper",
346
+ '41.08': "COM10 Envelope",
347
+ '41.09': "Monarch Envelope",
348
+ '41.10': "C5 Envelope",
349
+ '41.11': "DL Envelope",
350
+ '41.12': "Japan B4 Paper",
351
+ '41.13': "Japan B5 Paper",
352
+ '41.14': "B5 Envelope",
353
+ '41.15': "Custom Media Paper",
354
+ '41.16': "J-Postcard",
355
+ '41.17': "J-RoundTrip Postcard",
356
+ '41.18': "A5 Paper",
357
+ '41.19': "Letter-R Paper",
358
+ '41.20': "A4-R Paper",
359
+ '41.21': "A5-R Paper",
360
+ '41.22': "Japan B5-R Paper",
361
+ '41.23': "Exec-R Paper",
362
+ '41.24': "A6 Paper",
363
+ '41.25': "Foolscap Paper",
364
+ '41.26': "Japan B6 Paper",
365
+
366
+ # 42xxx: Paper Jam Errors
367
+ '42.00': "Non-specific jam",
368
+ '42.01': "Paper feed 1, paper late jam",
369
+ '42.02': "Paper feed 2, paper late jam",
370
+ '42.03': "Fuser output, paper late jam",
371
+ '42.04': "Fuser output, paper stopped jam",
372
+ '42.05': "Face down output, paper late jam",
373
+ '42.06': "Face down output, paper stopped jam",
374
+ '42.07': "2-Sided turn around, paper late jam",
375
+ '42.08': "2-Sided turn around, paper stopped jam",
376
+ '42.09': "2-Sided path, paper late jam",
377
+ '42.10': "2-Sided path, paper stopped jam",
378
+ '42.11': "External input device paper jam",
379
+ '42.12': "External output device paper jam",
380
+ '42.13': "Fuser accordion jam",
381
+ '42.14': "Fuser accordion jam",
382
+ '42.15': "Printer could not auto eject paper",
383
+
384
+ # 43xxx: Optional Paper Handling Device Errors
385
+ '430.1': "Unable to communicate with the PHC",
386
+ '430.2': "Out of sequence packet",
387
+ '430.3': "Bad transaction",
388
+ '430.4': "Invalid status bits",
389
+ '430.5': "Invalid status code",
390
+ '430.6': "Invalid device specified",
391
+ '430.7': "Invalid tray specified",
392
+ '430.8': "Invalid bin specified",
393
+ '430.9': "Invalid number of special purpose bytes",
394
+ '43.10': "Invalid number of NVEE bytes",
395
+ '43.11': "General PHC malfunction",
396
+ '43.12': "Bad PHC RAM",
397
+ '43.13': "PHC ROM checksum error",
398
+ '43.14': "Faulty PHC FIFO",
399
+ '43.15': "PHC cannot communicate with device(s)",
400
+ '43.16': "PHC never ready during initialization",
401
+ '43.17': "FIFO empty when expecting data",
402
+ '43.18': "FIFO full when tray to send data",
403
+ '43.19': "Invalid page ACK (formatter not expecting a page ACK)",
404
+ '43.20': "Page ACK timeout",
405
+ '43.21': "Inconsistent paper size",
406
+ '43.22': "Wrong page ACK",
407
+ '43.23': "Device(s) never ready during installation",
408
+ '43.24': "Negative ACK of ready tray",
409
+
410
+ # 44xxx: Paper Jam Information
411
+ '44.00': "Paper jam in unknown location",
412
+ '44.01': "Paper jam in the paper input area",
413
+ '44.02': "Paper jam in the paper output area (may need to open rear door of printer)",
414
+ '44.03': "Paper jam underneath the top cover. Remove toner cartridge to clear.",
415
+ '44.04': "Paper jam in the duplexer",
416
+ '44.05': "Paper jam in the duplex front cover area",
417
+ '44.06': "Paper jam in the face down output area",
418
+ '44.07': "Paper jam in the front door area",
419
+
420
+ # 50xxx: Hardware Errors
421
+ '50000': "General Hardware Failure",
422
+ '50001': "ROM or RAM Error, ROM Checksum Failed (or interface error [DesignJet])",
423
+ '50002': "RAM Error, RAM Test Failed (or part malfunction [DesignJet])",
424
+ '50003': "Engine Fuser Error",
425
+ '50004': "Engine Beam Detect Error",
426
+ '50005': "Engine Scanner Error",
427
+ '50006': "Engine Fan Error",
428
+ '50007': "Engine Communications Error",
429
+ '50008': "50.1 FUSER ERROR CYCLE POWER or LOW FUSER TEMPERATURE",
430
+ '50009': "50.2 FUSER ERROR CYCLE POWER or FUSER TOOK TOO LONG TO WARM UP",
431
+ '50010': "50.3 FUSER ERROR CYCLE POWER or FUSER TOO HOT",
432
+ '50011': "50.4 FUSER ERROR CYCLE POWER or BAD FUSER",
433
+ '50012': "51.1 ERROR PRESS SELECT KEY or BEAM DETECT MALFUNCTION",
434
+ '50013': "51.2 ERROR PRESS SELECT KEY or LASER MALFUNCTION",
435
+ '50014': "52.1 ERROR PRESS SELECT KEY or SCANNER STARTUP FAILURE",
436
+ '50015': "52.2 ERROR PRESS SELECT KEY or SCANNER ROTATION FAILURE",
437
+ '50016': "57.1 FAN FAILURE CALL SERVICE or FAN MOTOR 1 FAILURE",
438
+ '50017': "57.2 FAN FAILURE CALL SERVICE or FAN MOTOR 2 FAILURE",
439
+ '50018': "57.2 FAN FAILURE CALL SERVICE or FAN MOTOR 3 FAILURE",
440
+ '50019': "57.4 FAN FAILURE CALL SERVICE or FAN MOTOR 4 FAILURE",
441
+ '50020': "UPPER INPUT TRAY LIFTER MALFUNCTION",
442
+ '50021': "LOWER INPUT TRAY LIFTER MALFUNCTION",
443
+ '50022': "58.3 PRINTER ERROR CYCLE POWER or MULTIPURPOSE TRAY LIFTER MALFUNCTION",
444
+ '50023': "59.1 PRINTER ERROR CYCLE POWER or MAIN MOTOR STARTUP FAILURE",
445
+ '50024': "59.2 PRINTER ERROR CYCLE POWER or MAIN MOTOR ROTATION FAILURE",
446
+ '50025': "FINISHER MALFUNCTION [BIN NAME] or EXTERNAL BINDING DEVICE HAS A MALFUNCTION",
447
+ '50026': "DEVICE ERROR X.YY CYCLE POWER or AN EXTERNAL DEVICE HAS REPORTED A MALFUNCTION",
448
+ '50027': "DUPLEX ERROR CHECK DUPLEX UNIT or DUPLEX UNIT GUIDE FAILED AND REQUIRES SERVICE",
449
+ '50028': "55.XX ERROR PRESS SELECT KEY or COMMUNICATION FAILURE BETWEEN FORMATTER AND ENGINE",
450
+ '50029': "64 PRINTER ERROR CYCLE POWER or VIDEO DMA TRANSFER TIMED OUT",
451
+ '50030': "FAN MOTOR 5 FAILURE",
452
+ '50031': "FAN MOTOR 6 FAILURE",
453
+ '50032': "FAN MOTOR 7 FAILURE",
454
+ '50033': "FAN MOTOR 8 FAILURE",
455
+ '505..': "Firmware Error, Power Cycle",
456
+ '50599': "Processor Error, Power Cycle"}