File: ChangeLog

package info (click to toggle)
usb-modeswitch 2.5.0%2Brepack0-1~bpo8%2B1
  • links: PTS, VCS
  • area: main
  • in suites: jessie-backports
  • size: 384 kB
  • sloc: ansic: 1,810; tcl: 775; makefile: 258; sh: 221
file content (301 lines) | stat: -rw-r--r-- 17,765 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301

History of USB_ModeSwitch
=========================

Version 2.5.0, 2017/01/17
    ATTENTION: Parameter transmitted from udev now reduced to %k (kernel
    name), however, rules file parameters can be '%b/%k' or '%k' - this
    fixes issues with parameter handling by the systemd unit file;
    remove endpoint reset ahead of bulk message transmission, only reset
    if endpoints are actually stalled, helping with quirky device behaviour
    (see www.draisberghof.de/usb_modeswitch/bb/viewtopic.php?f=2&t=2582 );
    stability fix by making a buffer in the config parser static, preventing
    problems seen in Fedora (thanks to Lubomir Rintel for patches and hints
    regarding the three previous issues); removed premature driver unbinding
    in wrapper which could disrupt certain devices already in target mode
    (reported by Aleksander Morgado); improved check for determining install
    mode (essential with generic config files present, e.g. 12d1:#linux)
Version 2.4.0, 2016/06/12
    ATTENTION: All ad-hoc driver binding code (using new_id driver attribute)
    removed - was a potential source of side effects and should now be
    obsoleted by good kernel support for modems; Added "dummy" setting for
    config files, to conditionally refrain from handling a device (see this
    topic: www.draisberghof.de/usb_modeswitch/bb/viewtopic.php?f=4&t=2458 );
    extended StandardEject sequence to include LUN 1, required for some D-Link
    devices; add device class 239 ("miscellaneous") to sanity check (thanks to
    Daniel Drake for reporting); udev shell script - removed driver binding,
    removed almost all waiting and forking, improved check for systemd (thanks
    to Daniel Drake for problem analysis and solution, see this topic/patch:
    www.draisberghof.de/usb_modeswitch/bb/viewtopic.php?p=16777#p16777 ,
    gist.github.com/dsd/9f83c4830ab78ce94078aedb2cf16a8f )
Version 2.3.0, 2016/01/12
    ATTENTION: -I flag is now history and being ignored - determining SCSI
    attributes is really an 'outside task'; -n flag (NeedResponse) is being
    ignored, CSW response will now always be read; introduction of parameter
    "OptionMode", wrapping the standard bulk message for all newer Huawei
    devices; fixed missing variable initialization in dispatcher script which
    could lead to crash (thanks, Dmitry Kunilov!); fixed bug which prevented
    early logging; fixed success report for Cisco AM10; some source code
    formatting and clean-up
Version 2.2.6, 2015/11/01
    Renamed function abort(), avoiding possible conflicts in static builds
    with libjim (thanks, Gustavo Zacharias); removed storage class check of
    interface 0 from dispatcher, enabling new multi-config devices in data
    package 20151101
Version 2.2.5, 2015/07/16
    Fixed bug in configuration check, possibly leading to segfault (thanks,
    Leonid Lisovskiy); fixed Pantech commandline parameter evaluation (was
    not working at all); added driver unbind step via sysfs in wrapper,
    getting rid of the USB subsystem complaint "interface 0 claimed by
    usb-storage while 'usb_modeswitch' <does this and that>"
Version 2.2.4, 2015/07/14
    Fixed buggy check of USB configuration selection (possibly leading
    to segfault), tested with Alcatel X602D; removed call to 'libusb_strerror'
    from libusb initialization - not available in earlier libusb1 versions
Version 2.2.3, 2015/06/29
    Fixed problem arising with systemd version 221 (220 untested), which
    affects starting the usb_modeswitch systemd unit from the sh script
    (reported by Archlinux users)
Version 2.2.2, 2015/06/27
    Added catch for libusb init error (thanks, Henrik Gustafsson); removed
    global function result variable; added catch for USB configuration
    read error (both thanks to "otila"); fixed wrapper script where port
    search for symlinking modem port was broken ("/dev/gsmmodem"); changed
    PantechMode parameter to represent different targets; added global
    config option to disable MBIM checking and setting alltogether (request
    from "kai"); changed udev sh script so that systemd processing takes
    precedence over upstart; changed systemd template unit parameter to
    avoid escaping problems
Version 2.2.1, 2015/01/15
    Fixed unreliable switching function for Cisco AM10
Version 2.2.0, 2014/05/29
    Introduction of parameter "HuaweiNewMode", wrapping the standard bulk
    message for all newer Huawei devices; support for generic fall-back
    config files, combined with OS switch (per vendor ID), implementation
    to use a specific switching command on Android for all Huawei devices
    (see README of data package for details); this change was suggested
    by Huawei
Version 2.1.1, 2014/03/27
    Code cleanup, better use of libusb1; this also fixes problems with
    determination of the active USB configuration (Samsung, Option modems);
    "Interface" parameter was not working as expected, fixed (see also:
    https://bugs.launchpad.net/bugs/1261923 ); fixed bogus interface release
    in "inquire" function, again a report by "Sonya@zte"
Version 2.1.0, 2014/01/28
    ATTENTION: -I flag meaning reversed, default is to skip SCSI inquiry;
    introduction of StandardEject, replacing many MessageContents with the
    same function, reducing size of device config files, and always including
    the 'Allow Medium Removal' before ejecting (thanks to Lars Melin for
    the idea); fix in "bulk_read", removing bogus CSW request (report from
    "Sonya@zte")
Version 2.0.1, 2013/09/03
    Fixed stupid string size bug which could lead to memory corruption
    (thanks to Leonid Myravjev)
Version 2.0.0, 2013/09/01
    Switched to libusb1.0, with much help from folks of the wl500g project
    (http://wl500g.googlecode.com): Vladislav Grishenko, Leonid Lisovskiy,
    Roman Samarev, Andrey Tikhomirov;
    major code and debug output cleanup; man page corrections and additions
    (thanks to Thomas Haller);
    experimental systemd and upstart integration, if present
    (Explanation: newer udev versions kill all subprocesses, detached or
    not. The suggested way to handle longer running processes like the
    usb_modeswitch_dispatcher is to add simple services or tasks and start
    these by sending signals from the udev rule)
    !! Attention, system integrators: a crude install facility is included
    in the Makefile to check if "upstart" or "systemd" is active and to
    install the matching service file; you may want to adapt it better to
    your respective system, possibly adding dependencies/targets to the
    services. Note that the udev starter script usb_modeswitch.sh also
    checks for the existence of the service/unit files
Version 1.2.7, 2013/08/07
    Two new dedicated control message functions to support Pantech LTE
    (thanks to Adam Goode) and Blackberry Q10/Z10 (thanks to Daniel Mende)
Version 1.2.6, 2013/06/02
    Several changes to streamline compiling as part of larger projects
    (thanks to Nicolas Carrier), mostly in Makefile; fix compiler warnings
    appearing in certain build environments (N. Carrier); new Quanta
    procedure (thanks to Andrey Tikhomirov) for Quanta 1K3 LTE; fix for
    error with cascaded hubs in dispatcher script (hint from N. Carrier)
Version 1.2.5, 2012/11/09
    Initial support for MBIM devices, use with data package >= 20121109;
    checking for these is the automatic default, new parameter NoMBIMCheck
    prevents the check per device in case of problems; new global option
    to set "delay_use" of usb-storage (as low values may prevent
    mode-switching); fix for handling multi-configuration devices (thanks
    to Bjørn Mork for advice)
Version 1.2.4, 2012/08/12
    Additional interface checks to prevent sending UFI commands to non-
    storage interfaces (prompted by more ambiguous device IDs popping up);
    change in SierraMode for handling newer devices which caused an error
    abort before; Makefile fix for parallelized make runs
Version 1.2.3, 2012/01/28
    Fixed two bugs both causing the embedded-jimsh install variant of the
    dispatcher crash (the "pure-script" install variant was NOT affected);
    fixed some "regexp" incompatibilities with Debian's libjim
Version 1.2.2, 2012/01/19
    Fixed bad bug preventing mode switch for devices using TargetClass;
    improved logging in case of negative success check
Version 1.2.1, 2011/12/26
    Fixed possible ambiguities when multiple identical modems are plugged
    synchronously; this is achieved by adding -b and -g parameter (busnum
    and devnum) for proper id'ing; some resulting workflow changes and
    shortcuts in "system integration" mode (use sysfs/wrapper for success
    control, reduce informative checks); improved hub usage robustness;
    future data packages can be ridded of redundancies (default ID, success
    check parameters), resulting in smaller files;
    fixed bad bug which may prevent switching completely when logging is
    not activated; fixed possible overflow in dispatcher C code (thanks to
    Gilles Espinasse)
Version 1.2.0, 2011/10/23
    Added QisdaMode for Qisda H21 (thanks to Chi-Hang Long for the code);
    dispatcher can now be installed with an embedded interpreter, so that
    Tcl is no longer required; added command line options for binary program
    to accept configuration data via stdin or as a long string parameter -
    this fixes the bug with non-writable temporary file during boot;
    reversed skipping of pre-switching delay, which has caused problems;
    fixed potential buffer overflow (thanks to Rafael Silva for the find);
    get first interface right even on some broken devices (thanks to
    Alexander Gordeev for the patch); increased post-switch delay before
    driver binding to avoid possible conflict with usb-storage
Version 1.1.9, 2011/08/05
    Added CiscoMode for Valet device; additional checking for CDC ACM device
    to prevent erroneous driver loading after switching; no more post-switch
    check for access to initial device if target parameters are given
Version 1.1.8, 2011/06/19
    Cleaned up switchSendMessage(); added workaround for quirky devices not
    reporting configuration setting; added non-CSW response for arbitrary
    bulk transfers; added SequansMode and MobileActionMode; check for active
    configuration will be skipped if bNumConfigurations is 1 (most cases)
Version 1.1.7, 2011/02/27
    Attention: paths for runtime files and database have changed! Old places
    will be found but are deprecated; /usr/share/usb_modeswitch for database,
    /var/lib/usb_modeswitch for "remembered" IDs;
    fix for configuration setting race (thanks to Amit Mendapara); discovered
    incompatibility between Tcl versions <= 8.3 and >=8.4, so 8.4 is the
    minimum prerequisite now;
    first availability of an alternative source pack which includes "jimsh",
    a fast Tcl mini shell, intended for resource-constrained systems
Version 1.1.6, 2010/12/22
    Moved warm-boot driver binding to sh wrapper, was unreliable in 1.1.5;
    sh wrapper overhaul, made compatible with Ubuntu's "dash" shell, tclsh
    calls reduced further; initial device checking includes current
    bConfigurationValue now, should work with config setting for multiple
    devices; made tcl script conform to limitations of "jimsh", the minimal
    tcl shell (hint from Barry Kauler); fixes for "usbserial" fallback
    (driver binding for old systems); in the C program, changed parameter
    "MessageDelay" (hitherto unused) to "ReleaseDelay", to be used in one
    device configuration (delay interface release after bulk message sending)
Version 1.1.5, 2010/11/28
    Added special control message for Kobil devices (patch from Filip Aben);
    try to get active configuration for interface class checking (there are
    some new devices 'switching' via configuration selection);
    fixed "0000" target product ID - again; new bash and tcl wrapper logic:
    the convenience functions for driver binding and symlinking will now
    start the tcl shell ONLY for known devices; changed and appended logging
    capabilities of said convenience functions; add loading of "usbserial"
    as a fallback for older systems to support new devices;
    add workaround for bug in libusb1 which affects device search during
    success check
Version 1.1.4, 2010/08/17
    The package should work at boot time now (cold and warm);
    product IDs of "0000" do exist but were not accepted, fixed (thanks to
    Sakis Dimopoulos); response endpoint is now always detected (led to
    possible error report when resetting all endpoints in version 1.1.3);
    wrapper script can now work with a packed collection of config files as
    well as with the plain folder of files; use with the "install-packed"
    make target of the data package (for use on systems with resource
    constraints); wrapper fix for the symlink feature: handling of multiple
    interrupt ports was incomplete; wrapper does not longer use a temporary
    file for the symlink feature (security considerations, Marco d'Itri)
Version 1.1.3, 2010/06/21
    Added delay option to separate multiple message transfers by millisecs;
    fixed (possibly dangerous) sloppy string handling (thanks to Christophe
    Fergeau); added "clear_halt" for response endpoint; small additions in
    Makefile (install with -D); changes in option handling (NO MORE DEFAULT
    CONFIG FILE!) and help text; symlink feature in wrapper can now cope
    with devices providing more than one interrupt port; wrapper now ignores
    package manager leftovers in config folder; replaced bash-specific syntax
    in wrapper; changed ZTE skipping (if existing rules are found) to warning
Version 1.1.2, 2010/04/18
    Added support for two additional bulk messages; wrapper handles special
    ZTE case; generalized driver loading, new parameter "DriverModule" and
    "DriverIDPath"; new wrapper facility to add symlink pointing to interrupt
    port (used in rule file from data pack >= 20100418)
Version 1.1.1, 2010/03/17
    Attention: old usb_modeswitch.conf renamed to usb_modeswitch.setup!
    Add separate config file for wrapper (global settings for switching and
    logging); add config file option to disable driver loading; handling of
    kernel attribute AVOID_RESET_QUIRK added; bug fixed in SonyMode (reported
    by "no-0n3"); bug fixed in SuccessCheck logic; minor flow alignments and
    fixes; new devices
Version 1.1.0, 2010/01/24
    Attention: wrapper script location changed, uninstall old versions!
    Major fixes in the wrapper script (stabilizing and time-saving);
    back to unified installation, defaults to "integrated" approach;
    new -D parameter to enable "integrated" behaviour; bugs fixed in
    success check; man file included (borrowed from the Debian package);
    C code and binary works with the compat library from libusb-1.0;
    some new devices
Version 1.0.7, 2010/01/06
    Bug fixed for Sony mode, thanks to Marco Chiaranda; fix for parameter
    substitution in newer udev versions, fix for bad bug in wrapper script
    practically disabling automatic mode
Version 1.0.6, 2009/12/21
    New "GCT Mode", fixes for device quirks (NXP Dragonfly), fix for multiple
    Huawei devices, cleanups, loads of new devices in config file and database,
    minor tcl script changes
Version 1.0.5, 2009/08/26
    More changes and fixes regarding success check; "--version" option;
    config "database" updated
Version 1.0.4, 2009/08/23
    Success check bugs (and others) fixed
Version 1.0.3, 2009/08/20
    Success check improved; experimental system integration (fully automated),
    optional; new parameter "TargetProductList" needed for this; other
    necessary small adaptations; more devices
Version 1.0.2, 2009/06/10
    Output bugs fixed
Version 1.0.1, 2009/06/08
    Added output of descriptor strings for further identification
Version 1.0.0, 2009/06/01
    Attention: possible incompatibilities for command line control!
    On/off flags don't require arguments anymore (-H, -S, -O, -d, -R,
    -n, new: -I), meaning "-R 0" does a reset like "-R 1" or "-R";
    long option names changed to standard format (e.g. --HuaweiMode to
    --huawei-mode); added device inquiry, for future help with device
    identification; catch error -19 as possible success; send and response
    endpoints now autoselected (consequently NeedResponse is back);
    new devices
Version 0.9.7, 2009/04/15
    Updated SonyMode, MD 400 now stable; automatic default endpoint
    detection from Andrew Bird
Version 0.9.7beta, 2009/03/15
    Major code clean up, optional success control (both suggested
    by Daniel Cooper), new devices
Version 0.9.6, 2009/01/08
    Special modes added for Sierra and Sony Ericsson, new devices
Version 0.9.5, 2008/10/27
    New options for USB tuning (jokedst), lots of new devices, clean up
Version 0.9.4, 2008/06/09
    Compat fix for libusb on FreeBSD quirks, more devices
Version 0.9.4beta2, 2008/03/19
    Successful udev device release fix
Version 0.9.4beta, 2008/03/16
    Multiple device support
Version 0.9.3, 2008/03/09
    More devices, no changes from beta version
Version 0.9.3beta, 2007/12/30
    New TargetClass parameter for recent Option firmware (Paul Hardwick), more
    devices
Version 0.9.2, 2007/11/02
    New Huawei mode (code from Miroslav Bobovsky, added by Denis Sutter), more
    devices
Version 0.9.1beta, 2007/09/04 (jokedst)
    Added command line parsing, cleaned up config stuff, doc updates
Version 0.9beta, 2007/08/15
    Name change from "icon_switch", parameter file and generalizing
Version 0.2, 2006/09/25
    Code cleaning, more messages
Version 0.1, 2006/09/24
    (as "icon_switch") Just very basic functionality ...