aboutsummaryrefslogtreecommitdiff
path: root/src/main.c
AgeCommit message (Collapse)Author
2009-06-18core: gracefully handle SIGTERM and SIGINT by shutting down cleanlyDan Williams
2009-06-18udev: move device probing and detection to udevDan Williams
Get rid of dependency on HAL, using libgudev instead. Fix up the plugin API to no longer use either HAL or udev defines, but let plugins use whatever mechanism they want for getting more information out of the device given the subsystem and device node name. Modems are now defined as "master" devices which "own" a one or more ports. A port could be a serial tty device or a network device or whatever. The plugin figures out whether it supports a given port or not and then assigns it to a new or existing modem. Modems now have a 'valid' property that should be set to TRUE when the modem has enough ports to operate correctly. For devices (ex. 'hso') that use a network device for data transfer, the modem would need to grab at least one TTY and the network device associated with that physical device to be 'valid'. Also move the generic modem support code to a plugin like other modem plugins, and change the I-support-this-device mechanism to return a number indicating the level of support. For example, the generic plugin would return a quite low number if the device indicates via probing that it can do GSM or CDMA, but a more specific plugin can indicate better support for the device, and thus the more specific plugin would win control.
2009-04-14Handle cases where HAL is not running/disappears/reappears.Tambet Ingo
2009-02-10add --enable-more-warnings=yes/no and fix up resulting errorsDan Williams
2009-02-04Fix a typo in error message when MM couldn't acquire it's DBus service name.Tambet Ingo
2008-10-30Enable/disable debugging on SIGUSR1.Tambet Ingo
2008-09-11Rewrite serial device communications.Tambet Ingo
Instead of vague "send something, wait something" the responses are now analyzed by (overridable) parsers. Makes all the modem implementations much easier since each caller knows without any code whether the call succeeded or failed. Another thing that makes modem code simpler (and the whole thing more robust), is the queueing of sent commands. Each queued command has a command and a callback which is quaranteed to get called, even if sending failed. Define and implement error reporting.
2008-07-31Initial commit.Tambet Ingo