recog 2.0.13 → 2.0.14

Sign up to get free protection for your applications and to get access to all the features.
Files changed (52) hide show
  1. checksums.yaml +4 -4
  2. data/CONTRIBUTING.md +19 -6
  3. data/features/{xml → data}/failing_banners_fingerprints.xml +0 -0
  4. data/features/{xml → data}/matching_banners_fingerprints.xml +0 -0
  5. data/features/{xml → data}/no_tests.xml +0 -0
  6. data/features/{xml/banners.xml → data/sample_banner.txt} +0 -0
  7. data/features/{xml → data}/successful_tests.xml +0 -0
  8. data/features/{xml → data}/tests_with_failures.xml +0 -0
  9. data/features/{xml → data}/tests_with_warnings.xml +0 -0
  10. data/features/match.feature +2 -2
  11. data/features/support/env.rb +1 -1
  12. data/lib/recog/version.rb +1 -1
  13. data/misc/order.xsl +17 -0
  14. data/spec/lib/fingerprint_self_test_spec.rb +8 -0
  15. data/xml/apache_os.xml +270 -334
  16. data/xml/architecture.xml +28 -41
  17. data/xml/fingerprints.xsd +37 -0
  18. data/xml/ftp_banners.xml +52 -58
  19. data/xml/h323_callresp.xml +597 -695
  20. data/xml/hp_pjl_id.xml +370 -409
  21. data/xml/http_cookies.xml +304 -348
  22. data/xml/http_servers.xml +3202 -3483
  23. data/xml/http_wwwauth.xml +342 -409
  24. data/xml/imap_banners.xml +149 -190
  25. data/xml/mdns_device-info_txt.xml +97 -111
  26. data/xml/mdns_workstation_txt.xml +6 -6
  27. data/xml/mysql_banners.xml +99 -198
  28. data/xml/mysql_error.xml +4 -11
  29. data/xml/nntp_banners.xml +42 -45
  30. data/xml/ntp_banners.xml +2 -3
  31. data/xml/pop_banners.xml +214 -247
  32. data/xml/rsh_resp.xml +68 -76
  33. data/xml/sip_banners.xml +19 -19
  34. data/xml/sip_user_agents.xml +63 -74
  35. data/xml/smb_native_os.xml +387 -433
  36. data/xml/smtp_banners.xml +1318 -1460
  37. data/xml/smtp_debug.xml +24 -27
  38. data/xml/smtp_ehlo.xml +19 -22
  39. data/xml/smtp_expn.xml +61 -70
  40. data/xml/smtp_help.xml +139 -160
  41. data/xml/smtp_mailfrom.xml +14 -16
  42. data/xml/smtp_noop.xml +28 -31
  43. data/xml/smtp_quit.xml +16 -18
  44. data/xml/smtp_rcptto.xml +8 -10
  45. data/xml/smtp_rset.xml +12 -13
  46. data/xml/smtp_turn.xml +12 -13
  47. data/xml/smtp_vrfy.xml +66 -76
  48. data/xml/snmp_sysdescr.xml +7257 -8016
  49. data/xml/snmp_sysobjid.xml +392 -434
  50. data/xml/ssh_banners.xml +783 -867
  51. data/xml/upnp_banners.xml +594 -628
  52. metadata +11 -9
@@ -1,357 +1,324 @@
1
- <?xml version="1.0"?>
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
2
  <!--
3
3
  For printers running the PJL protocol (usually on 9100/tcp), their type can be requested
4
4
  by the INFO ID command. The printer types (strings surrounded by double quotes) are
5
5
  matched against these patterns to fingerprint the printer.
6
6
  -->
7
-
8
7
  <fingerprints>
9
- <!--
8
+ <!--
10
9
  LaserJet and Designjet are registered trademarks of HP. Therefore matching for the keywords
11
10
  is sufficient for asserting all relevant information
12
11
  -->
13
- <fingerprint pattern="laserjet (.*)(?: series)?" flags="REG_ICASE">
14
- <description>HP JetDirect Printer</description>
15
- <example>HP LaserJet 4100 Series</example>
16
- <example>HP LaserJet 2200</example>
17
- <example>LASERJET 4050</example>
18
- <example>LASERJET 4 PLUS</example>
19
- <example>hp LaserJet 1320 series</example>
20
- <example>hp color LaserJet 4600</example>
21
- <example>HP Color LaserJet 3600</example>
22
- <example>HP LASERJET 4ML</example>
23
- <example>hp LaserJet 4345 mfp</example>
24
- <example>HP Color LaserJet CM2320nf MFP</example>
25
- <example>HP LaserJet 600 M602</example>
26
- <example>HP LaserJet 1022n</example>
27
- <example>HP LaserJet M1120n MFP</example>
28
- <example>HP LaserJet P1505n</example>
29
- <example>HP LaserJet P2014n</example>
30
- <example>HP LaserJet P2035n</example>
31
- <example>HP LaserJet P2055 Series</example>
32
- <example>HP LaserJet Professional M1212nf MFP</example>
33
- <example>HP LaserJet Professional P1606dn</example>
34
- <example>20080613_1836 HP LaserJet P2055 Series</example>
35
- <example>20080718_1441 HP LaserJet P2055 Series</example>
36
- <example>20081103_1652 HP LaserJet P2055 Series</example>
37
- <example>20081124_1804 HP LaserJet P2055 Series</example>
38
- <example>20081124_1858 HP LaserJet P2055 Series</example>
39
- <param pos="0" name="service.vendor" value="HP"/>
40
- <param pos="0" name="service.product" value="JetDirect"/>
41
- <param pos="0" name="service.family" value="JetDirect"/>
42
- <param pos="0" name="os.vendor" value="HP"/>
43
- <param pos="0" name="os.device" value="Printer"/>
44
- <param pos="0" name="os.family" value="LaserJet"/>
45
- <param pos="1" name="os.product"/>
46
- </fingerprint>
47
-
12
+ <fingerprint pattern="laserjet (.*)(?: series)?" flags="REG_ICASE">
13
+ <description>HP JetDirect Printer</description>
14
+ <example>HP LaserJet 4100 Series</example>
15
+ <example>HP LaserJet 2200</example>
16
+ <example>LASERJET 4050</example>
17
+ <example>LASERJET 4 PLUS</example>
18
+ <example>hp LaserJet 1320 series</example>
19
+ <example>hp color LaserJet 4600</example>
20
+ <example>HP Color LaserJet 3600</example>
21
+ <example>HP LASERJET 4ML</example>
22
+ <example>hp LaserJet 4345 mfp</example>
23
+ <example>HP Color LaserJet CM2320nf MFP</example>
24
+ <example>HP LaserJet 600 M602</example>
25
+ <example>HP LaserJet 1022n</example>
26
+ <example>HP LaserJet M1120n MFP</example>
27
+ <example>HP LaserJet P1505n</example>
28
+ <example>HP LaserJet P2014n</example>
29
+ <example>HP LaserJet P2035n</example>
30
+ <example>HP LaserJet P2055 Series</example>
31
+ <example>HP LaserJet Professional M1212nf MFP</example>
32
+ <example>HP LaserJet Professional P1606dn</example>
33
+ <example>20080613_1836 HP LaserJet P2055 Series</example>
34
+ <example>20080718_1441 HP LaserJet P2055 Series</example>
35
+ <example>20081103_1652 HP LaserJet P2055 Series</example>
36
+ <example>20081124_1804 HP LaserJet P2055 Series</example>
37
+ <example>20081124_1858 HP LaserJet P2055 Series</example>
38
+ <param pos="0" name="service.vendor" value="HP"/>
39
+ <param pos="0" name="service.product" value="JetDirect"/>
40
+ <param pos="0" name="service.family" value="JetDirect"/>
41
+ <param pos="0" name="os.vendor" value="HP"/>
42
+ <param pos="0" name="os.device" value="Printer"/>
43
+ <param pos="0" name="os.family" value="LaserJet"/>
44
+ <param pos="1" name="os.product"/>
45
+ </fingerprint>
48
46
  <fingerprint pattern="(designjet \S+)" flags="REG_ICASE">
49
- <description>HP Designjet printer</description>
50
- <example>hp designjet 110plus</example>
51
- <example>DESIGNJET 1050C</example>
52
- <example>DESIGNJET 1055CM</example>
53
- <example>DESIGNJET 700</example>
54
- <param pos="0" name="service.vendor" value="HP"/>
55
- <param pos="0" name="service.product" value="JetDirect"/>
56
- <param pos="0" name="service.family" value="JetDirect"/>
57
- <param pos="0" name="os.vendor" value="HP"/>
58
- <param pos="0" name="os.family" value="DesignJet"/>
59
- <param pos="0" name="os.device" value="Printer"/>
60
- <param pos="1" name="os.product"/>
47
+ <description>HP Designjet printer</description>
48
+ <example>hp designjet 110plus</example>
49
+ <example>DESIGNJET 1050C</example>
50
+ <example>DESIGNJET 1055CM</example>
51
+ <example>DESIGNJET 700</example>
52
+ <param pos="0" name="service.vendor" value="HP"/>
53
+ <param pos="0" name="service.product" value="JetDirect"/>
54
+ <param pos="0" name="service.family" value="JetDirect"/>
55
+ <param pos="0" name="os.vendor" value="HP"/>
56
+ <param pos="0" name="os.family" value="DesignJet"/>
57
+ <param pos="0" name="os.device" value="Printer"/>
58
+ <param pos="1" name="os.product"/>
61
59
  </fingerprint>
62
-
63
60
  <fingerprint pattern="^Xerox ColorQube (\S+)$">
64
- <description>Xerox ColorQube Multifunction Printer</description>
65
- <example>Xerox ColorQube 8570DN</example>
66
- <example>Xerox ColorQube 8570DT</example>
67
- <example>Xerox ColorQube 8570N</example>
68
- <param pos="0" name="os.vendor" value="Xerox"/>
69
- <param pos="0" name="os.family" value="ColorQube"/>
70
- <param pos="1" name="os.product"/>
71
- <param pos="0" name="os.device" value="Multifunction Device"/>
61
+ <description>Xerox ColorQube Multifunction Printer</description>
62
+ <example>Xerox ColorQube 8570DN</example>
63
+ <example>Xerox ColorQube 8570DT</example>
64
+ <example>Xerox ColorQube 8570N</example>
65
+ <param pos="0" name="os.vendor" value="Xerox"/>
66
+ <param pos="0" name="os.family" value="ColorQube"/>
67
+ <param pos="1" name="os.product"/>
68
+ <param pos="0" name="os.device" value="Multifunction Device"/>
72
69
  </fingerprint>
73
-
74
- <fingerprint pattern="^Brother (.+)$">
75
- <description>Brother Printer</description>
76
- <example>Brother HL-1660e</example>
77
- <param pos="0" name="os.vendor" value="Brother"/>
78
- <param pos="0" name="os.device" value="Printer"/>
79
- <param pos="1" name="os.product"/>
80
- </fingerprint>
81
-
82
- <!-- Assert the product range as a product fingerprint. -->
83
- <fingerprint pattern="^(iR ?\S+)">
84
- <description>Canon iR multifunction device</description>
85
- <example>iR 3180C EUR</example>
86
- <example>iR C4080/C4580</example>
87
- <example>iR1020/1024/1025</example>
88
- <param pos="0" name="os.vendor" value="Canon"/>
89
- <param pos="0" name="os.family" value="iR Series"/>
90
- <param pos="0" name="os.device" value="Multifunction Device"/>
91
- <param pos="1" name="os.product"/>
92
- </fingerprint>
93
-
94
- <fingerprint pattern="^(?:Dell (?:Color Laser |Laser Printer )?|(?:Color Laser |Laser Printer ))(\d+(?:n|cn|dn|cdn))(?: Color Laser| Laser Printer)?$"> -->
95
- <description>Dell Laser Printer</description>
96
- <example>Dell Laser Printer 1710n</example>
97
- <example>Dell Color Laser 3110cn</example>
98
- <example>Laser Printer 5100cn</example>
99
- <example>Dell 2130cn Color Laser</example>
100
- <example>Dell 2330dn Laser Printer</example>
101
- <example>Dell 2350dn Laser Printer</example>
102
- <example>Dell 3130cn Color Laser</example>
103
- <example>Dell 5130cdn Color Laser</example>
104
- <example>Dell 5230n Laser Printer</example>
105
- <example>Dell 2145cn</example>
106
- <param pos="0" name="os.vendor" value="Dell"/>
107
- <param pos="0" name="os.family" value="Laser Printer"/>
108
- <param pos="0" name="os.device" value="Printer"/>
109
- <param pos="1" name="os.product"/>
110
- </fingerprint>
111
-
112
- <fingerprint pattern="^Dell (\d+(?:n|cn|dn|cdn)) MFP$">
113
- <description>Dell Laser multifunction device</description>
114
- <example>Dell 2135cn MFP</example>
115
- <example>Dell 2335dn MFP</example>
116
- <param pos="0" name="os.vendor" value="Dell"/>
117
- <param pos="0" name="os.family" value="Laser Printer"/>
118
- <param pos="0" name="os.device" value="Multifunction Device"/>
119
- <param pos="1" name="os.product"/>
120
- </fingerprint>
121
-
122
- <fingerprint pattern="^HP (\S+ Digital Sender)$">
123
- <description>HP Digital Sender scanner</description>
124
- <example>HP 9250C Digital Sender</example>
125
- <param pos="0" name="os.vendor" value="HP"/>
126
- <param pos="0" name="os.device" value="Scanner"/>
127
- <param pos="0" name="os.family" value="Digital Sender"/>
128
- <param pos="1" name="os.product"/>
129
- </fingerprint>
130
-
131
- <fingerprint pattern="^(?:IBM )?Infoprint(?: Color)? (\S+)$">
132
- <description>IBM Infoprint Printer</description>
133
- <param pos="0" name="os.vendor" value="IBM"/>
134
- <param pos="0" name="os.family" value="Infoprint"/>
135
- <param pos="0" name="os.device" value="Printer"/>
136
- <param pos="1" name="os.product"/>
137
- </fingerprint>
138
-
139
- <fingerprint pattern="^KM-(.*)$">
140
- <description>Konica Minolta printer</description>
141
- <example>KM-5050</example>
142
- <param pos="0" name="os.vendor" value="Lexmark"/>
143
- <param pos="0" name="os.device" value="Printer"/>
144
- <param pos="1" name="os.product"/>
145
- </fingerprint>
146
-
147
- <fingerprint pattern="^(FS-\S+MFP\S*)$">
148
- <description>Kyocera Mita Multifunction device</description>
149
- <example>FS-C2126MFP</example>
150
- <example>FS-C2126MFP+</example>
151
- <example>FS-1035MFP/DP</example>
152
- <param pos="0" name="os.vendor" value="Kyocera Mita"/>
153
- <param pos="0" name="os.device" value="Multifunction Device"/>
154
- <param pos="0" name="os.family" value="FS"/>
155
- <param pos="1" name="os.product"/>
156
- </fingerprint>
157
-
158
- <fingerprint pattern="^(FS-(?:C)?\d+(?:D|DN))$">
159
- <description>Kyocera Mita Printer</description>
160
- <example>FS-C8500DN</example>
161
- <example>FS-4100DN</example>
162
- <example>FS-2020D</example>
163
- <param pos="0" name="os.vendor" value="Kyocera Mita"/>
164
- <param pos="0" name="os.device" value="Printer"/>
165
- <param pos="0" name="os.family" value="FS"/>
166
- <param pos="1" name="os.product"/>
167
- </fingerprint>
168
-
169
- <fingerprint pattern="^(TASKalfa \S+)$">
170
- <description>Kyocera Mita TASKalfa multifunction device</description>
171
- <example>TASKalfa 300ci</example>
172
- <example>TASKalfa 520i</example>
173
- <example>TASKalfa 250ci</example>
174
- <param pos="0" name="os.vendor" value="Kyocera Mita"/>
175
- <param pos="0" name="os.device" value="Multifunction Device"/>
176
- <param pos="0" name="os.family" value="TASKalfa"/>
177
- <param pos="1" name="os.product"/>
178
- </fingerprint>
179
-
180
- <fingerprint pattern="^Lexmark (.*)$">
181
- <description>Lexmark JetDirect printer</description>
182
- <example>Lexmark C910</example>
183
- <example>Lexmark Optra LaserPrinter</example>
184
- <example>Lexmark Optra S 1250</example>
185
- <param pos="0" name="os.vendor" value="Lexmark"/>
186
- <param pos="0" name="os.device" value="Printer"/>
187
- <param pos="1" name="os.product"/>
188
- </fingerprint>
189
-
190
- <fingerprint pattern="^Oce (fx[^\s:]+):.*$" flags="REG_ICASE">
191
- <description>Oce FX series multifunction device</description>
192
- <example os.product="fx3000">Oce fx3000:8C5-B29:Ver.D:U0707161719:B0601271355</example>
193
- <param pos="0" name="os.vendor" value="Oce"/>
194
- <param pos="0" name="os.family" value="FX Series"/>
195
- <param pos="0" name="os.device" value="Multifunction Device"/>
196
- <param pos="1" name="os.product"/>
197
- </fingerprint>
198
-
199
- <fingerprint pattern="^Oce (VL\S+):.*$" flags="REG_ICASE">
200
- <description>Oce VarioLink multifunction device</description>
201
- <example>Oce VL3200:8C5-D92:Ver.B</example>
202
- <param pos="0" name="os.vendor" value="Oce"/>
203
- <param pos="0" name="os.family" value="VarioLink"/>
204
- <param pos="0" name="os.device" value="Multifunction Device"/>
205
- <param pos="1" name="os.product"/>
206
- </fingerprint>
207
-
208
- <!-- IGI is Imagistics International, which was acquired by Oce.
70
+ <fingerprint pattern="^Brother (.+)$">
71
+ <description>Brother Printer</description>
72
+ <example>Brother HL-1660e</example>
73
+ <param pos="0" name="os.vendor" value="Brother"/>
74
+ <param pos="0" name="os.device" value="Printer"/>
75
+ <param pos="1" name="os.product"/>
76
+ </fingerprint>
77
+ <!-- Assert the product range as a product fingerprint. -->
78
+ <fingerprint pattern="^(iR ?\S+)">
79
+ <description>Canon iR multifunction device</description>
80
+ <example>iR 3180C EUR</example>
81
+ <example>iR C4080/C4580</example>
82
+ <example>iR1020/1024/1025</example>
83
+ <param pos="0" name="os.vendor" value="Canon"/>
84
+ <param pos="0" name="os.family" value="iR Series"/>
85
+ <param pos="0" name="os.device" value="Multifunction Device"/>
86
+ <param pos="1" name="os.product"/>
87
+ </fingerprint>
88
+ <fingerprint pattern="^(?:Dell (?:Color Laser |Laser Printer )?|(?:Color Laser |Laser Printer ))(\d+(?:n|cn|dn|cdn))(?: Color Laser| Laser Printer)?$">
89
+ <description>Dell Laser Printer</description>
90
+ <example>Dell Laser Printer 1710n</example>
91
+ <example>Dell Color Laser 3110cn</example>
92
+ <example>Laser Printer 5100cn</example>
93
+ <example>Dell 2130cn Color Laser</example>
94
+ <example>Dell 2330dn Laser Printer</example>
95
+ <example>Dell 2350dn Laser Printer</example>
96
+ <example>Dell 3130cn Color Laser</example>
97
+ <example>Dell 5130cdn Color Laser</example>
98
+ <example>Dell 5230n Laser Printer</example>
99
+ <example>Dell 2145cn</example>
100
+ <param pos="0" name="os.vendor" value="Dell"/>
101
+ <param pos="0" name="os.family" value="Laser Printer"/>
102
+ <param pos="0" name="os.device" value="Printer"/>
103
+ <param pos="1" name="os.product"/>
104
+ </fingerprint>
105
+ <fingerprint pattern="^Dell (\d+(?:n|cn|dn|cdn)) MFP$">
106
+ <description>Dell Laser multifunction device</description>
107
+ <example>Dell 2135cn MFP</example>
108
+ <example>Dell 2335dn MFP</example>
109
+ <param pos="0" name="os.vendor" value="Dell"/>
110
+ <param pos="0" name="os.family" value="Laser Printer"/>
111
+ <param pos="0" name="os.device" value="Multifunction Device"/>
112
+ <param pos="1" name="os.product"/>
113
+ </fingerprint>
114
+ <fingerprint pattern="^HP (\S+ Digital Sender)$">
115
+ <description>HP Digital Sender scanner</description>
116
+ <example>HP 9250C Digital Sender</example>
117
+ <param pos="0" name="os.vendor" value="HP"/>
118
+ <param pos="0" name="os.device" value="Scanner"/>
119
+ <param pos="0" name="os.family" value="Digital Sender"/>
120
+ <param pos="1" name="os.product"/>
121
+ </fingerprint>
122
+ <fingerprint pattern="^(?:IBM )?Infoprint(?: Color)? (\S+)$">
123
+ <description>IBM Infoprint Printer</description>
124
+ <param pos="0" name="os.vendor" value="IBM"/>
125
+ <param pos="0" name="os.family" value="Infoprint"/>
126
+ <param pos="0" name="os.device" value="Printer"/>
127
+ <param pos="1" name="os.product"/>
128
+ </fingerprint>
129
+ <fingerprint pattern="^KM-(.*)$">
130
+ <description>Konica Minolta printer</description>
131
+ <example>KM-5050</example>
132
+ <param pos="0" name="os.vendor" value="Lexmark"/>
133
+ <param pos="0" name="os.device" value="Printer"/>
134
+ <param pos="1" name="os.product"/>
135
+ </fingerprint>
136
+ <fingerprint pattern="^(FS-\S+MFP\S*)$">
137
+ <description>Kyocera Mita Multifunction device</description>
138
+ <example>FS-C2126MFP</example>
139
+ <example>FS-C2126MFP+</example>
140
+ <example>FS-1035MFP/DP</example>
141
+ <param pos="0" name="os.vendor" value="Kyocera Mita"/>
142
+ <param pos="0" name="os.device" value="Multifunction Device"/>
143
+ <param pos="0" name="os.family" value="FS"/>
144
+ <param pos="1" name="os.product"/>
145
+ </fingerprint>
146
+ <fingerprint pattern="^(FS-(?:C)?\d+(?:D|DN))$">
147
+ <description>Kyocera Mita Printer</description>
148
+ <example>FS-C8500DN</example>
149
+ <example>FS-4100DN</example>
150
+ <example>FS-2020D</example>
151
+ <param pos="0" name="os.vendor" value="Kyocera Mita"/>
152
+ <param pos="0" name="os.device" value="Printer"/>
153
+ <param pos="0" name="os.family" value="FS"/>
154
+ <param pos="1" name="os.product"/>
155
+ </fingerprint>
156
+ <fingerprint pattern="^(TASKalfa \S+)$">
157
+ <description>Kyocera Mita TASKalfa multifunction device</description>
158
+ <example>TASKalfa 300ci</example>
159
+ <example>TASKalfa 520i</example>
160
+ <example>TASKalfa 250ci</example>
161
+ <param pos="0" name="os.vendor" value="Kyocera Mita"/>
162
+ <param pos="0" name="os.device" value="Multifunction Device"/>
163
+ <param pos="0" name="os.family" value="TASKalfa"/>
164
+ <param pos="1" name="os.product"/>
165
+ </fingerprint>
166
+ <fingerprint pattern="^Lexmark (.*)$">
167
+ <description>Lexmark JetDirect printer</description>
168
+ <example>Lexmark C910</example>
169
+ <example>Lexmark Optra LaserPrinter</example>
170
+ <example>Lexmark Optra S 1250</example>
171
+ <param pos="0" name="os.vendor" value="Lexmark"/>
172
+ <param pos="0" name="os.device" value="Printer"/>
173
+ <param pos="1" name="os.product"/>
174
+ </fingerprint>
175
+ <fingerprint pattern="^Oce (fx[^\s:]+):.*$" flags="REG_ICASE">
176
+ <description>Oce FX series multifunction device</description>
177
+ <example os.product="fx3000">Oce fx3000:8C5-B29:Ver.D:U0707161719:B0601271355</example>
178
+ <param pos="0" name="os.vendor" value="Oce"/>
179
+ <param pos="0" name="os.family" value="FX Series"/>
180
+ <param pos="0" name="os.device" value="Multifunction Device"/>
181
+ <param pos="1" name="os.product"/>
182
+ </fingerprint>
183
+ <fingerprint pattern="^Oce (VL\S+):.*$" flags="REG_ICASE">
184
+ <description>Oce VarioLink multifunction device</description>
185
+ <example>Oce VL3200:8C5-D92:Ver.B</example>
186
+ <param pos="0" name="os.vendor" value="Oce"/>
187
+ <param pos="0" name="os.family" value="VarioLink"/>
188
+ <param pos="0" name="os.device" value="Multifunction Device"/>
189
+ <param pos="1" name="os.product"/>
190
+ </fingerprint>
191
+ <!-- IGI is Imagistics International, which was acquired by Oce.
209
192
  I can't find MX-MBX3 or any variant online. -->
210
- <fingerprint pattern="^OceIGI MX-\S+" flags="REG_ICASE">
211
- <description>Oce-acquired IGI printer</description>
212
- <example>OceIGI MX-NBX3 02-Jul-07 14:47</example>
213
- <param pos="0" name="os.vendor" value="Oce"/>
214
- <param pos="0" name="os.device" value="Printer"/>
215
- </fingerprint>
216
-
217
- <!-- im3510/4510 is actually a range of model numbers, but asserting a range
193
+ <fingerprint pattern="^OceIGI MX-\S+" flags="REG_ICASE">
194
+ <description>Oce-acquired IGI printer</description>
195
+ <example>OceIGI MX-NBX3 02-Jul-07 14:47</example>
196
+ <param pos="0" name="os.vendor" value="Oce"/>
197
+ <param pos="0" name="os.device" value="Printer"/>
198
+ </fingerprint>
199
+ <!-- im3510/4510 is actually a range of model numbers, but asserting a range
218
200
  of models as a product is preferableto asserting nothing. -->
219
- <fingerprint pattern="^Imagistics (im\S+) (.+)" flags="REG_ICASE">
220
- <description>Oce IM series multifunction device</description>
221
- <example>Imagistics im3510/4510 02-Aug-04 10:56</example>
222
- <param pos="0" name="os.vendor" value="Oce"/>
223
- <param pos="0" name="os.family" value="IM Series"/>
224
- <param pos="0" name="os.device" value="Multifunction Device"/>
225
- <param pos="0" name="system.time.format" value="dd-MMM-yy HH:mm"/>
226
- <param pos="1" name="os.product"/>
227
- <param pos="2" name="system.time"/>
228
- </fingerprint>
229
-
230
- <!-- C610 is a series; there are several models with suffixes n, dn, dtn, cdn -->
231
- <fingerprint pattern="^OKI (C\d+)\S*$">
232
- <description>Okidata color printer</description>
233
- <example>OKI C610</example>
234
- <example>OKI C710</example>
235
- <!-- Conjectured -->
236
- <example>OKI C710dn</example>
237
- <param pos="0" name="os.vendor" value="Okidata"/>
238
- <param pos="0" name="os.device" value="Printer"/>
239
- <param pos="1" name="os.product"/>
240
- </fingerprint>
241
-
242
- <fingerprint pattern="^OKI (MC\d+)\S*$">
243
- <description>Okidata multifunction device</description>
244
- <example>OKI MC860</example>
245
- <param pos="0" name="os.vendor" value="Okidata"/>
246
- <param pos="0" name="os.device" value="Multifunction Device"/>
247
- <param pos="1" name="os.product"/>
248
- </fingerprint>
249
-
250
- <fingerprint pattern="^RICOH ((?:Aficio|MP|SP) .*)$" flags="REG_ICASE">
251
- <description>Ricoh Aficio Printer</description>
252
- <example>RICOH Aficio 2075</example>
253
- <example>RICOH Aficio AP610N</example>
254
- <example>RICOH Aficio SP 8100DN</example>
255
- <example>RICOH MP C1500/615C</example>
256
- <param pos="0" name="os.vendor" value="Ricoh"/>
257
- <param pos="0" name="os.family" value="Aficio"/>
258
- <param pos="1" name="os.product"/>
259
- <param pos="0" name="os.device" value="Printer"/>
260
- </fingerprint>
261
-
262
- <!-- NRG was acquired by Ricoh; classify NRG printers as such.
201
+ <fingerprint pattern="^Imagistics (im\S+) (.+)" flags="REG_ICASE">
202
+ <description>Oce IM series multifunction device</description>
203
+ <example>Imagistics im3510/4510 02-Aug-04 10:56</example>
204
+ <param pos="0" name="os.vendor" value="Oce"/>
205
+ <param pos="0" name="os.family" value="IM Series"/>
206
+ <param pos="0" name="os.device" value="Multifunction Device"/>
207
+ <param pos="0" name="system.time.format" value="dd-MMM-yy HH:mm"/>
208
+ <param pos="1" name="os.product"/>
209
+ <param pos="2" name="system.time"/>
210
+ </fingerprint>
211
+ <!-- C610 is a series; there are several models with suffixes n, dn, dtn, cdn -->
212
+ <fingerprint pattern="^OKI (C\d+)\S*$">
213
+ <description>Okidata color printer</description>
214
+ <example>OKI C610</example>
215
+ <example>OKI C710</example>
216
+ <example>OKI C710dn</example>
217
+ <param pos="0" name="os.vendor" value="Okidata"/>
218
+ <param pos="0" name="os.device" value="Printer"/>
219
+ <param pos="1" name="os.product"/>
220
+ </fingerprint>
221
+ <fingerprint pattern="^OKI (MC\d+)\S*$">
222
+ <description>Okidata multifunction device</description>
223
+ <example>OKI MC860</example>
224
+ <param pos="0" name="os.vendor" value="Okidata"/>
225
+ <param pos="0" name="os.device" value="Multifunction Device"/>
226
+ <param pos="1" name="os.product"/>
227
+ </fingerprint>
228
+ <fingerprint pattern="^RICOH ((?:Aficio|MP|SP) .*)$" flags="REG_ICASE">
229
+ <description>Ricoh Aficio Printer</description>
230
+ <example>RICOH Aficio 2075</example>
231
+ <example>RICOH Aficio AP610N</example>
232
+ <example>RICOH Aficio SP 8100DN</example>
233
+ <example>RICOH MP C1500/615C</example>
234
+ <param pos="0" name="os.vendor" value="Ricoh"/>
235
+ <param pos="0" name="os.family" value="Aficio"/>
236
+ <param pos="1" name="os.product"/>
237
+ <param pos="0" name="os.device" value="Printer"/>
238
+ </fingerprint>
239
+ <!-- NRG was acquired by Ricoh; classify NRG printers as such.
263
240
  Be consistent with snmp_sysdescr.xml. -->
264
- <fingerprint pattern="^NRG ([MS]P \S+)$" flags="REG_ICASE">
265
- <description>Ricoh NRG printer</description>
266
- <example>NRG MP 171</example>
267
- <example>NRG MP 3350</example>
268
- <example>NRG MP C2550</example>
269
- <example>NRG MP C2800</example>
270
- <example>NRG MP C3500</example>
271
- <example>NRG MP C4000</example>
272
- <example>NRG MP C4500</example>
273
- <example>NRG SP C231SF</example>
274
- <param pos="0" name="os.vendor" value="Ricoh"/>
275
- <param pos="0" name="os.device" value="Printer"/>
276
- <param pos="1" name="os.product"/>
277
- </fingerprint>
278
-
279
- <!-- Gestetner == NRG, and was acquired by Ricoh.
241
+ <fingerprint pattern="^NRG ([MS]P \S+)$" flags="REG_ICASE">
242
+ <description>Ricoh NRG printer</description>
243
+ <example>NRG MP 171</example>
244
+ <example>NRG MP 3350</example>
245
+ <example>NRG MP C2550</example>
246
+ <example>NRG MP C2800</example>
247
+ <example>NRG MP C3500</example>
248
+ <example>NRG MP C4000</example>
249
+ <example>NRG MP C4500</example>
250
+ <example>NRG SP C231SF</example>
251
+ <param pos="0" name="os.vendor" value="Ricoh"/>
252
+ <param pos="0" name="os.device" value="Printer"/>
253
+ <param pos="1" name="os.product"/>
254
+ </fingerprint>
255
+ <!-- Gestetner == NRG, and was acquired by Ricoh.
280
256
  Assert the range of products as os.product. -->
281
- <fingerprint pattern="^Gestetner (MP\S+/DSc\S+)$" flags="REG_ICASE">
282
- <description>Ricoh Gestetner multifunction device</description>
283
- <example>Gestetner MPC2500/DSc525</example>
284
- <param pos="0" name="os.vendor" value="Ricoh"/>
285
- <param pos="0" name="os.device" value="Multifunction Device"/>
286
- <param pos="1" name="os.product"/>
287
- </fingerprint>
288
-
289
- <fingerprint pattern="^HYDRA$" flags="REG_ICASE">
290
- <description>RSI Hydra printer</description>
291
- <example>HYDRA</example>
292
- <param pos="0" name="os.vendor" value="RSI"/>
293
- <param pos="0" name="os.device" value="Printer"/>
294
- <param pos="0" name="os.product" value="Hydra"/>
295
- </fingerprint>
296
-
297
- <fingerprint pattern="^Savin (\S+)$" flags="REG_ICASE">
298
- <description>Savin Printer</description>
299
- <example>SAVIN 4075</example>
300
- <param pos="0" name="os.vendor" value="Savin"/>
301
- <param pos="0" name="os.device" value="Printer"/>
302
- <param pos="1" name="os.product"/>
303
- </fingerprint>
304
-
305
- <fingerprint pattern="^Samsung ((?:SCX|CLX)-\S+) Series$" flags="REG_ICASE">
306
- <description>Samsung multifunction device</description>
307
- <example>Samsung SCX-5835_5935 Series</example>
308
- <!-- Conjectured -->
309
- <example>Samsung CLX-4195 Series</example>
310
- <param pos="0" name="os.vendor" value="Samsung"/>
311
- <param pos="0" name="os.device" value="Multifunction Device"/>
312
- <param pos="1" name="os.product"/>
313
- </fingerprint>
314
-
315
- <fingerprint pattern="^Samsung ((?:ML|CLP)-\S+) Series$" flags="REG_ICASE">
316
- <description>Samsung printer</description>
317
- <example>Samsung CLP-680 Series</example>
318
- <example>Samsung ML-5012_5512 Series</example>
319
- <param pos="0" name="os.vendor" value="Samsung"/>
320
- <param pos="0" name="os.device" value="Printer"/>
321
- <param pos="1" name="os.product"/>
322
- </fingerprint>
323
-
324
- <fingerprint pattern="^SHARP (\S+-\S+) .*$" flags="REG_ICASE">
325
- <description>Sharp Printer</description>
326
- <example>Sharp MX-NBX3 18-Mar-08 10:22</example>
327
- <example>Sharp AR-P17 24-Mar-04 19:55</example>
328
- <param pos="0" name="os.vendor" value="Sharp"/>
329
- <param pos="0" name="os.device" value="Printer"/>
330
- <param pos="1" name="os.product"/>
331
- </fingerprint>
332
-
333
- <fingerprint pattern="^Source Technologies (\S+)$" flags="REG_ICASE">
334
- <description>Source Technologies Printer</description>
335
- <example>Source Technologies ST-9620</example>
336
- <param pos="0" name="os.vendor" value="Source Technologies"/>
337
- <param pos="0" name="os.device" value="Printer"/>
338
- <param pos="1" name="os.product"/>
339
- </fingerprint>
340
-
341
- <!-- Consistent with snmp_sysdescr.xml -->
342
- <fingerprint pattern="^TOSHIBA (e-STUDIO\S+)(?:\s+.*)?" certainty="0.9">
343
- <description>Toshiba e-STUDIO multifunction device</description>
344
- <example>TOSHIBA e-STUDIO350 V468Z 20061013</example>
345
- <example>TOSHIBA e-STUDIO350-450 V444Z 20041104</example>
346
- <example>TOSHIBA e-STUDIO450 V468Z 20061013</example>
347
- <example>TOSHIBA e-STUDIO500S</example>
348
- <param pos="0" name="os.vendor" value="Toshiba"/>
349
- <param pos="0" name="os.family" value="e-STUDIO"/>
350
- <param pos="0" name="os.device" value="Multifunction Device"/>
351
- <param pos="1" name="os.product"/>
352
- </fingerprint>
353
-
354
- <!-- TODO:
257
+ <fingerprint pattern="^Gestetner (MP\S+/DSc\S+)$" flags="REG_ICASE">
258
+ <description>Ricoh Gestetner multifunction device</description>
259
+ <example>Gestetner MPC2500/DSc525</example>
260
+ <param pos="0" name="os.vendor" value="Ricoh"/>
261
+ <param pos="0" name="os.device" value="Multifunction Device"/>
262
+ <param pos="1" name="os.product"/>
263
+ </fingerprint>
264
+ <fingerprint pattern="^HYDRA$" flags="REG_ICASE">
265
+ <description>RSI Hydra printer</description>
266
+ <example>HYDRA</example>
267
+ <param pos="0" name="os.vendor" value="RSI"/>
268
+ <param pos="0" name="os.device" value="Printer"/>
269
+ <param pos="0" name="os.product" value="Hydra"/>
270
+ </fingerprint>
271
+ <fingerprint pattern="^Savin (\S+)$" flags="REG_ICASE">
272
+ <description>Savin Printer</description>
273
+ <example>SAVIN 4075</example>
274
+ <param pos="0" name="os.vendor" value="Savin"/>
275
+ <param pos="0" name="os.device" value="Printer"/>
276
+ <param pos="1" name="os.product"/>
277
+ </fingerprint>
278
+ <fingerprint pattern="^Samsung ((?:SCX|CLX)-\S+) Series$" flags="REG_ICASE">
279
+ <description>Samsung multifunction device</description>
280
+ <example>Samsung SCX-5835_5935 Series</example>
281
+ <example>Samsung CLX-4195 Series</example>
282
+ <param pos="0" name="os.vendor" value="Samsung"/>
283
+ <param pos="0" name="os.device" value="Multifunction Device"/>
284
+ <param pos="1" name="os.product"/>
285
+ </fingerprint>
286
+ <fingerprint pattern="^Samsung ((?:ML|CLP)-\S+) Series$" flags="REG_ICASE">
287
+ <description>Samsung printer</description>
288
+ <example>Samsung CLP-680 Series</example>
289
+ <example>Samsung ML-5012_5512 Series</example>
290
+ <param pos="0" name="os.vendor" value="Samsung"/>
291
+ <param pos="0" name="os.device" value="Printer"/>
292
+ <param pos="1" name="os.product"/>
293
+ </fingerprint>
294
+ <fingerprint pattern="^SHARP (\S+-\S+) .*$" flags="REG_ICASE">
295
+ <description>Sharp Printer</description>
296
+ <example>Sharp MX-NBX3 18-Mar-08 10:22</example>
297
+ <example>Sharp AR-P17 24-Mar-04 19:55</example>
298
+ <param pos="0" name="os.vendor" value="Sharp"/>
299
+ <param pos="0" name="os.device" value="Printer"/>
300
+ <param pos="1" name="os.product"/>
301
+ </fingerprint>
302
+ <fingerprint pattern="^Source Technologies (\S+)$" flags="REG_ICASE">
303
+ <description>Source Technologies Printer</description>
304
+ <example>Source Technologies ST-9620</example>
305
+ <param pos="0" name="os.vendor" value="Source Technologies"/>
306
+ <param pos="0" name="os.device" value="Printer"/>
307
+ <param pos="1" name="os.product"/>
308
+ </fingerprint>
309
+ <!-- Consistent with snmp_sysdescr.xml -->
310
+ <fingerprint pattern="^TOSHIBA (e-STUDIO\S+)(?:\s+.*)?" certainty="0.9">
311
+ <description>Toshiba e-STUDIO multifunction device</description>
312
+ <example>TOSHIBA e-STUDIO350 V468Z 20061013</example>
313
+ <example>TOSHIBA e-STUDIO350-450 V444Z 20041104</example>
314
+ <example>TOSHIBA e-STUDIO450 V468Z 20061013</example>
315
+ <example>TOSHIBA e-STUDIO500S</example>
316
+ <param pos="0" name="os.vendor" value="Toshiba"/>
317
+ <param pos="0" name="os.family" value="e-STUDIO"/>
318
+ <param pos="0" name="os.device" value="Multifunction Device"/>
319
+ <param pos="1" name="os.product"/>
320
+ </fingerprint>
321
+ <!-- TODO:
355
322
  Xerox AccXES devices are documented to return:
356
323
 
357
324
  "<printer name> <release #>"
@@ -361,75 +328,69 @@ matched against these patterns to fingerprint the printer.
361
328
  AccXES printer, and <release #> corresponds to a software release
362
329
  number.
363
330
  -->
364
-
365
- <fingerprint pattern="^(?:ID=)?Xerox (Phaser \S+)$" certainty="0.9">
366
- <description>Xerox Phaser Printer</description>
367
- <example>Xerox Phaser 6180MFP-D</example>
368
- <example>ID=Xerox Phaser 5400</example>
369
- <example>Xerox Phaser 4400DT</example>
370
- <example>Xerox Phaser 4400N</example>
371
- <example>Xerox Phaser 4500DT</example>
372
- <example>Xerox Phaser 4500N</example>
373
- <example>Xerox Phaser 4510DT</example>
374
- <example>Xerox Phaser 4510N</example>
375
- <example>Xerox Phaser 5500DN</example>
376
- <example>Xerox Phaser 5550DN</example>
377
- <example>Xerox Phaser 5550DT</example>
378
- <example>Xerox Phaser 6300DN</example>
379
- <example>Xerox Phaser 6360DN</example>
380
- <example>Xerox Phaser 6360DT</example>
381
- <example>Xerox Phaser 7750DN</example>
382
- <example>Xerox Phaser 7750GX</example>
383
- <example>Xerox Phaser 7760DN</example>
384
- <example>Xerox Phaser 7760GX</example>
385
- <example>Xerox Phaser 8400N</example>
386
- <example>Xerox Phaser 8550DP</example>
387
- <example>Xerox Phaser 8560</example>
388
- <example>Xerox Phaser 8560DN</example>
389
- <example>Xerox Phaser 8560N</example>
390
- <example>Xerox Phaser 8860MFP</example>
391
- <param pos="0" name="os.vendor" value="Xerox"/>
392
- <param pos="0" name="os.family" value="Phaser"/>
393
- <param pos="0" name="os.device" value="Printer"/>
394
- <param pos="1" name="os.product"/>
395
- </fingerprint>
396
-
397
- <fingerprint pattern="^Xerox (WorkCentre .*)$" certainty="0.9">
398
- <description>Xerox Workcentre Printer</description>
399
- <example>Xerox WorkCentre 7425</example>
400
- <example>Xerox WorkCentre Pro 245</example>
401
- <example>Xerox WorkCentre Pro 55, v1 Multifunction System</example>
402
- <param pos="0" name="os.vendor" value="Xerox"/>
403
- <param pos="0" name="os.family" value="WorkCentre"/>
404
- <param pos="1" name="os.product"/>
405
- <param pos="0" name="os.device" value="Printer"/>
406
- </fingerprint>
407
-
408
- <fingerprint pattern="^(XC\S+)$" certainty="0.9">
409
- <description>Xerox XC Printer</description>
410
- <example>XC560</example>
411
- <param pos="0" name="os.vendor" value="Xerox"/>
412
- <param pos="0" name="os.family" value="XC"/>
413
- <param pos="0" name="os.device" value="Printer"/>
414
- <param pos="1" name="os.product"/>
415
- </fingerprint>
416
-
417
- <fingerprint pattern="^(DC\S+)$" certainty="0.9">
418
- <description>Xerox DocuColor Printer</description>
419
- <example>DC250</example>
420
- <param pos="0" name="os.vendor" value="Xerox"/>
421
- <param pos="0" name="os.family" value="DocuColor"/>
422
- <param pos="0" name="os.device" value="Printer"/>
423
- <param pos="1" name="os.product"/>
424
- </fingerprint>
425
-
426
- <fingerprint pattern="^(EX\d+-\d+)$" certainty="0.9">
427
- <description>Xerox EX Print Server, powered by EFI Fiery</description>
428
- <example>EX4112-4127</example>
429
- <param pos="0" name="os.vendor" value="Xerox"/>
430
- <param pos="0" name="os.family" value="EX"/>
431
- <param pos="0" name="os.device" value="Print server"/>
432
- <param pos="1" name="os.product"/>
433
- </fingerprint>
434
-
435
- </fingerprints>
331
+ <fingerprint pattern="^(?:ID=)?Xerox (Phaser \S+)$" certainty="0.9">
332
+ <description>Xerox Phaser Printer</description>
333
+ <example>Xerox Phaser 6180MFP-D</example>
334
+ <example>ID=Xerox Phaser 5400</example>
335
+ <example>Xerox Phaser 4400DT</example>
336
+ <example>Xerox Phaser 4400N</example>
337
+ <example>Xerox Phaser 4500DT</example>
338
+ <example>Xerox Phaser 4500N</example>
339
+ <example>Xerox Phaser 4510DT</example>
340
+ <example>Xerox Phaser 4510N</example>
341
+ <example>Xerox Phaser 5500DN</example>
342
+ <example>Xerox Phaser 5550DN</example>
343
+ <example>Xerox Phaser 5550DT</example>
344
+ <example>Xerox Phaser 6300DN</example>
345
+ <example>Xerox Phaser 6360DN</example>
346
+ <example>Xerox Phaser 6360DT</example>
347
+ <example>Xerox Phaser 7750DN</example>
348
+ <example>Xerox Phaser 7750GX</example>
349
+ <example>Xerox Phaser 7760DN</example>
350
+ <example>Xerox Phaser 7760GX</example>
351
+ <example>Xerox Phaser 8400N</example>
352
+ <example>Xerox Phaser 8550DP</example>
353
+ <example>Xerox Phaser 8560</example>
354
+ <example>Xerox Phaser 8560DN</example>
355
+ <example>Xerox Phaser 8560N</example>
356
+ <example>Xerox Phaser 8860MFP</example>
357
+ <param pos="0" name="os.vendor" value="Xerox"/>
358
+ <param pos="0" name="os.family" value="Phaser"/>
359
+ <param pos="0" name="os.device" value="Printer"/>
360
+ <param pos="1" name="os.product"/>
361
+ </fingerprint>
362
+ <fingerprint pattern="^Xerox (WorkCentre .*)$" certainty="0.9">
363
+ <description>Xerox Workcentre Printer</description>
364
+ <example>Xerox WorkCentre 7425</example>
365
+ <example>Xerox WorkCentre Pro 245</example>
366
+ <example>Xerox WorkCentre Pro 55, v1 Multifunction System</example>
367
+ <param pos="0" name="os.vendor" value="Xerox"/>
368
+ <param pos="0" name="os.family" value="WorkCentre"/>
369
+ <param pos="1" name="os.product"/>
370
+ <param pos="0" name="os.device" value="Printer"/>
371
+ </fingerprint>
372
+ <fingerprint pattern="^(XC\S+)$" certainty="0.9">
373
+ <description>Xerox XC Printer</description>
374
+ <example>XC560</example>
375
+ <param pos="0" name="os.vendor" value="Xerox"/>
376
+ <param pos="0" name="os.family" value="XC"/>
377
+ <param pos="0" name="os.device" value="Printer"/>
378
+ <param pos="1" name="os.product"/>
379
+ </fingerprint>
380
+ <fingerprint pattern="^(DC\S+)$" certainty="0.9">
381
+ <description>Xerox DocuColor Printer</description>
382
+ <example>DC250</example>
383
+ <param pos="0" name="os.vendor" value="Xerox"/>
384
+ <param pos="0" name="os.family" value="DocuColor"/>
385
+ <param pos="0" name="os.device" value="Printer"/>
386
+ <param pos="1" name="os.product"/>
387
+ </fingerprint>
388
+ <fingerprint pattern="^(EX\d+-\d+)$" certainty="0.9">
389
+ <description>Xerox EX Print Server, powered by EFI Fiery</description>
390
+ <example>EX4112-4127</example>
391
+ <param pos="0" name="os.vendor" value="Xerox"/>
392
+ <param pos="0" name="os.family" value="EX"/>
393
+ <param pos="0" name="os.device" value="Print server"/>
394
+ <param pos="1" name="os.product"/>
395
+ </fingerprint>
396
+ </fingerprints>