1
2 MAC_PREFIXES = {
3 'Sony-Ericsson' : (
4 '00:01:EC',
5 '00:0A:D9',
6 '00:0E:07',
7 '00:0F:DE',
8 '00:12:EE',
9 '00:15:E0',
10 '00:16:20',
11 '00:16:B8',
12 '00:18:13',
13 '00:19:63',
14 '00:1A:75',
15 '00:1B:59',
16 '00:1C:A4',
17 '00:1D:28',
18 '00:1E:45',
19 '00:80:37',
20 ),
21 'Nokia' : (
22 '00:02:EE',
23 '00:0B:E1',
24 '00:0E:ED',
25 '00:0F:BB',
26 '00:10:B3',
27 '00:11:9F',
28 '00:12:62',
29 '00:13:70',
30 '00:13:FD',
31 '00:14:A7',
32 '00:15:2A',
33 '00:15:A0',
34 '00:15:DE',
35 '00:16:4E',
36 '00:16:BC',
37 '00:17:4B',
38 '00:17:B0',
39 '00:18:0F',
40 '00:18:42',
41 '00:18:8D',
42 '00:18:C5',
43 '00:19:2D',
44 '00:19:4F',
45 '00:19:79',
46 '00:19:B7',
47 '00:1A:16',
48 '00:1A:89',
49 '00:1A:DC',
50 '00:1B:33',
51 '00:1B:AF',
52 '00:1B:EE',
53 '00:1C:35',
54 '00:1C:9A',
55 '00:1C:D4',
56 '00:1C:D6',
57 '00:1D:3B',
58 '00:1D:6E',
59 '00:1D:98',
60 '00:1D:E9',
61 '00:1D:FD',
62 '00:1E:3A',
63 '00:1E:3B',
64 '00:1E:A3',
65 '00:1E:A4',
66 '00:40:43',
67 '00:A0:8E',
68 '00:E0:03',
69 ),
70 'Siemens' : (
71 '00:01:E3',
72 '00:05:19',
73 '00:0B:23',
74 '00:0B:A3',
75 '00:0D:41',
76 '00:0E:8C',
77 '00:0F:BB',
78 '00:11:06',
79 '00:11:33',
80 '00:13:A3',
81 '00:18:D1',
82 '00:19:28',
83 '00:19:99',
84 '00:1A:D0',
85 '00:1A:E8',
86 '00:1B:1B',
87 '00:1C:06',
88 '00:30:05',
89 '00:50:07',
90 '00:90:40',
91 '00:C0:E4',
92 '08:00:06',
93 ),
94 'Samsung' : (
95 '00:00:F0',
96 '00:02:78',
97 '00:09:18',
98 '00:0D:AE',
99 '00:0D:E5',
100 '00:0F:73',
101 '00:12:47',
102 '00:12:FB',
103 '00:13:77',
104 '00:15:99',
105 '00:15:B9',
106 '00:16:32',
107 '00:16:6B',
108 '00:16:6C',
109 '00:16:DB',
110 '00:17:C9',
111 '00:17:D5',
112 '00:18:AF',
113 '00:1A:8A',
114 '00:1B:98',
115 '00:1C:43',
116 '00:1D:25',
117 '00:1D:F6',
118 '00:1E:7D',
119 '00:E0:64',
120 ),
121 'LG' : (
122 '00:05:C9',
123 '00:0B:29',
124 '00:12:56',
125 '00:14:80',
126 '00:19:A1',
127 '00:1C:62',
128 '00:1E:75',
129 '00:1E:B2',
130 '00:50:CE',
131 '00:E0:91',
132 ),
133 'BenQ' : (
134 '00:03:9D',
135 '00:17:CA',
136 ),
137 'Motorola' : (
138 '00:01:AF',
139 '00:04:56',
140 '00:04:BD',
141 '00:08:0E',
142 '00:0A:28',
143 '00:0B:06',
144 '00:0C:E5',
145 '00:0E:5C',
146 '00:0E:C7',
147 '00:0F:9F',
148 '00:11:1A',
149 '00:11:80',
150 '00:11:AE',
151 '00:12:25',
152 '00:12:8A',
153 '00:12:C9',
154 '00:13:71',
155 '00:14:04',
156 '00:14:9A',
157 '00:14:E8',
158 '00:15:2F',
159 '00:15:9A',
160 '00:15:A8',
161 '00:16:26',
162 '00:16:75',
163 '00:16:B5',
164 '00:17:00',
165 '00:17:84',
166 '00:17:E2',
167 '00:17:EE',
168 '00:18:A4',
169 '00:18:C0',
170 '00:19:2C',
171 '00:19:5E',
172 '00:19:A6',
173 '00:19:C0',
174 '00:1A:1B',
175 '00:1A:66',
176 '00:1A:77',
177 '00:1A:AD',
178 '00:1A:DB',
179 '00:1A:DE',
180 '00:1B:52',
181 '00:1B:DD',
182 '00:1C:11',
183 '00:1C:12',
184 '00:1C:C1',
185 '00:1C:FB',
186 '00:1D:6B',
187 '00:1D:BE',
188 '00:1E:46',
189 '00:1E:5A',
190 '00:1E:8D',
191 '00:20:40',
192 '00:20:75',
193 '00:A0:BF',
194 '00:C0:F9',
195 '00:E0:0C',
196 ),
197 'Alcatel' : (
198 '00:07:72',
199 '00:08:9A',
200 '00:0E:86',
201 '00:0F:62',
202 '00:11:3F',
203 '00:11:8B',
204 '00:15:3F',
205 '00:16:4D',
206 '00:17:CC',
207 '00:19:8F',
208 '00:1A:F0',
209 '00:1C:8E',
210 '00:1D:4C',
211 '00:20:32',
212 '00:20:60',
213 '00:20:DA',
214 '00:80:21',
215 '00:80:39',
216 '00:80:9F',
217 '00:A0:81',
218 '00:C0:BE',
219 '00:D0:95',
220 '00:D0:F6',
221 '00:E0:B1',
222 '00:E0:DA',
223 ),
224 'Sharp' : (
225 '00:17:5C',
226 '00:1C:EE',
227 '08:00:1F'
228 )
229 }
230
231 GAMMU_CONN_BLUETOOTH_ALL = (
232 'bluephonet',
233 'bluefbus',
234 'bluerfgnapbus',
235 'blueat',
236 'blueobex',
237 'bluerfobex',
238 'bluerfphonet',
239 'bluerffbus',
240 'bluerfat',
241 )
242 GAMMU_CONN_BLUETOOTH_NOKIA = (
243 'bluephonet',
244 'bluefbus',
245 'bluerfgnapbus',
246 'bluerfphonet',
247 'bluerffbus',
248 'blueat',
249 'bluerfat',
250 'blueobex',
251 'bluerfobex',
252 )
253 GAMMU_CONN_BLUETOOTH_STANDARD = (
254 'blueat',
255 'blueobex',
256 'bluerfgnapbus',
257 )
258 GAMMU_CONN_BLUETOOTH = {
259 'Sony-Ericsson' : GAMMU_CONN_BLUETOOTH_STANDARD,
260 'Siemens' : GAMMU_CONN_BLUETOOTH_STANDARD,
261 'BenQ' : GAMMU_CONN_BLUETOOTH_STANDARD,
262 'Samsung' : GAMMU_CONN_BLUETOOTH_STANDARD,
263 'LG' : GAMMU_CONN_BLUETOOTH_STANDARD,
264 'Motorola' : GAMMU_CONN_BLUETOOTH_STANDARD,
265 'Nokia' : GAMMU_CONN_BLUETOOTH_NOKIA,
266 'Alcatel' : GAMMU_CONN_BLUETOOTH_STANDARD,
267 'Sharp' : GAMMU_CONN_BLUETOOTH_STANDARD,
268 }
269
270 GAMMU_CONN_CABLE = (
271 'at19200',
272 'at115200',
273 'fbusdlr3',
274 'fbus',
275 'mbus',
276 'fbuspl2303',
277 'phonetblue',
278 'fbusblue',
279 )
280 GAMMU_CONN_IRDA = (
281 'irdaphonet',
282 'at19200',
283 )
284 GAMMU_CONN_BLUERF = (
285 'at19200',
286 )
287 GAMMU_CONN_DEVICES = (
288 (('/dev/ttyS%d' % i for i in range(3)), GAMMU_CONN_CABLE ),
289 (('/dev/ttyUSB%d' % i for i in range(3)), GAMMU_CONN_CABLE ),
290 (('/dev/ttyACM%d' % i for i in range(3)), GAMMU_CONN_CABLE ),
291 (('/dev/rfrcomm%d' % i for i in range(1)), GAMMU_CONN_BLUERF ),
292 (('/dev/ircomm%d' % i for i in range(1)), GAMMU_CONN_IRDA ),
293 (('/dev/usb/tts/%d' % i for i in range(3)), GAMMU_CONN_CABLE ))
294
296 for vendor in MAC_PREFIXES.keys():
297 if address[:8].upper() in MAC_PREFIXES[vendor]:
298 return vendor
299 return None
300
306