Commit Graph

615 Commits

Author SHA1 Message Date
Ryan Raasch d1db227d20 Enable / Disable CREAD functionality in gattty 2009-10-21 19:06:43 -05:00
Denis Kenzior feda620c94 Fix: Stop crashing when unrefing chat in callback 2009-10-16 17:46:28 -05:00
Denis Kenzior 43e5152934 Fix: Do not leak chat references in case of error 2009-10-15 16:15:17 -05:00
Denis Kenzior 20dc22a6c4 Fix: Cleanup debug formats 2009-10-15 16:15:17 -05:00
Denis Kenzior d4d1617684 Fix: Do not send shutdown more than once 2009-10-15 16:15:17 -05:00
Denis Kenzior a8af38d209 Fix: Be more paranoid in checking DLC validity 2009-10-15 16:15:17 -05:00
Denis Kenzior 112d07e14e Refactor: Add driver model to GAtMux
GAtMux can now be made to work with multiple multiplexing protocols.
Currently on the 27.010 (07.10) Advanced and Basic modes are supported.
However, further protocol support can be added by providing the
necessary driver functions for GAtMux
2009-10-15 16:15:17 -05:00
Denis Kenzior bcf962c79c Forgot to add void* to get_data 2009-10-15 16:15:17 -05:00
Denis Kenzior 6bfd76123b Forgot to add driverdata functions 2009-10-15 16:15:17 -05:00
Denis Kenzior a4a54f6625 Refactor: Enable multiplexer drivers for GAtMux 2009-10-15 16:15:17 -05:00
Denis Kenzior 1575f2dcd1 Fix: Notify sources upon shutdown 2009-10-15 16:15:16 -05:00
Denis Kenzior 5826fc9c15 Add ability to open/close multiple DLCs 2009-10-15 16:15:16 -05:00
Denis Kenzior 4734ebcb46 Refactor: Add convenience method to start 0710 MUX
Use an existing GAtChat that has been setup appropriately to conver the
channel into a MUX
2009-10-15 16:15:16 -05:00
Denis Kenzior 9aa2182261 Add ability to retrieve the atchat IOChannel 2009-10-15 16:15:16 -05:00
Denis Kenzior 556186eb35 Remove more unused code 2009-10-15 16:15:16 -05:00
Denis Kenzior 4c5cf38ddb Fix: Use DISC on dlc 0 instead of CLD
Some MUX implementations do not seem to support Multiplexer Closedown
(CLD) command.  The standard specifies that sending DISC on DLC 0 should
act exactly the same as CLD.
2009-10-08 12:53:25 -05:00
Denis Kenzior e2415161de Fix: Make compile on some obscure platforms 2009-10-08 12:53:25 -05:00
Denis Kenzior f9db94cd73 Cleanup: Remove more dead code 2009-10-08 12:53:25 -05:00
Denis Kenzior efadf058c3 Cleanup: Get rid of unused member
ctx->server is never set to anything but 0.  This was intended to handle
server side functionality of the GSM 07.10 multiplexer, but never fully
implemented.  Since GAtMux is only really meant for the client side, we
can safely remove this dead code.
2009-10-08 12:53:25 -05:00
Denis Kenzior 273c8b06a0 Get rid of from_tty variant, use gattty instead 2009-10-08 12:53:25 -05:00
Denis Kenzior 7e82686e70 Fix: Make next_hexstring handle optional quotes
Ericsson MBM devices send CRSM information as hex strings, yet enclose
them in quotes which is not according to the standard.
2009-10-02 18:25:56 -05:00
Marcel Holtmann cfbc902287 Add support for switching to a different GAtSyntax at runtime 2009-10-02 12:29:02 +02:00
Marcel Holtmann 729056cb2e Fix missing include for close() function call 2009-10-02 03:25:35 +02:00
Denis Kenzior 6a78e402d3 Replace g_at_chat_new_from_tty with g_at_tty_open 2009-10-01 16:43:19 -05:00
Marcel Holtmann a37f0dbad6 Add skeleton for gsmdial test application 2009-09-24 17:39:09 -07:00
Zhenhua Zhang 78244d6190 Unref GIOChannel in g_at_chat_new_from_tty 2009-09-24 10:01:07 -07:00
Marcel Holtmann c4a5f3a483 Fix trailing whitespace 2009-09-18 13:56:03 -07:00
Denis Kenzior a1e67482bb Simplify cleanup logic 2009-09-18 13:33:22 -05:00
Marcel Holtmann 47b1d09b6e Hook up GAtMux with GSM 07.10 implementation 2009-09-08 09:04:11 +02:00
Marcel Holtmann 8de68799a5 Remove AT command and re-init support from GSM 07.10 2009-09-08 08:51:46 +02:00
Marcel Holtmann abc7a934ee Use NULL for init of function callbacks 2009-09-08 08:39:51 +02:00
Marcel Holtmann 3a0518ec27 Export the GSM 07.10 status flags 2009-09-08 08:26:48 +02:00
Denis Kenzior 2ee7f4a6f8 Fix g_at_chat_unref from command callback
The resources were being used after being freed in this case
2009-09-07 23:21:50 -05:00
Marcel Holtmann 094fdd4e71 Add functions for disconnect and debug handling 2009-09-06 00:31:26 +02:00
Marcel Holtmann c9ba0e7df5 Integrate the multiplexer into the AT chat library 2009-09-06 00:25:16 +02:00
Denis Kenzior 740312f8fb Add GSM Permissive parser 2009-09-04 20:37:48 -05:00
Denis Kenzior 1a1f7d34d2 Add unquoted string capability
This is completely broken according to the standard, but some vendors
use this in their "special" commands.
2009-09-03 23:20:22 -05:00
Denis Kenzior c9d704955c Add PDU listing support 2009-08-31 23:03:35 -05:00
Denis Kenzior 789610389e Fix a problem with CtrlZ echo
When a PDU is submitted and echoed by the modem, the CtrlZ character
is also echoed back.  Fix the parser to handle this case appropriately.
2009-08-29 10:47:16 -05:00
Marcel Holtmann 70aab2a826 Convert to fully non-recursive build system 2009-08-24 23:49:40 -07:00
Denis Kenzior 5e4ff5ced9 Ensure g_timeout_add source can be removed safely 2009-08-07 16:20:59 -05:00
Denis Kenzior a53559e88f Fix trailing whitespace 2009-08-06 17:24:23 -05:00
Denis Kenzior d2c106b4db Be more lenient for PDU lines 2009-08-06 17:05:52 -05:00
Denis Kenzior e3466d9b92 Remove unneeded declarations 2009-08-06 17:05:31 -05:00
Denis Kenzior 88b327cff5 Cleanup the debug support patch 2009-08-06 16:38:46 -05:00
Andres Salomon d66fd48bf9 gatchat: add debugging infrastructure
This patch adds debugging support to GAtChat (specifically of what's going
across the serial line).  Callbacks can be set via g_at_chat_set_debugging,
and that callback is called after any channel reads or writes.
2009-08-06 16:38:45 -05:00
Denis Kenzior 1418c2aec1 Make overflow code a bit better 2009-08-06 16:38:45 -05:00
Denis Kenzior 83820c88b2 Refactor GAtChat to accept user-provided parsers
Intended for really broken modems.  A default 27.007 compliant
parser is provided.
2009-08-06 16:38:39 -05:00
Denis Kenzior 239ab461f7 Fix refcounting in GAtChat 2009-08-06 15:42:23 -05:00
Denis Kenzior d4536b3d2b Fix a crash with unsolicited notifications
When a line comes in from the modem, we check against prefixes
in outstanding commands and unsolicited notifications.  If the
outstanding command has not yet been sent (cmd_bytes_written == 0),
we still check it resulting in access violation.
2009-07-21 14:43:33 -05:00
Denis Kenzior 86864c819c Add extra_pdu_crlf quirk 2009-07-15 15:51:33 -05:00
Denis Kenzior 78a646797c Add set / get flags for GAtChat 2009-07-15 15:51:28 -05:00
Denis Kenzior 3dcf25807a Fix modem wakeup handling 2009-07-15 11:50:04 -05:00
Denis Kenzior 22ad7dc7c5 Fix range handling 2009-07-15 11:49:06 -05:00
Denis Kenzior c74ea2093f Fix case where CMGS returns an error before pdu
Commands like CMGS might return an error before the entire command
has been submitted.  This results in gatchat stalling completely.
2009-07-07 14:34:00 -05:00
Denis Kenzior 595407f65b Fix uninitialized use of bufpos 2009-07-01 10:48:51 -05:00
Marcel Holtmann 08b81f37a1 Add support for opening TTYs directly 2009-06-30 12:53:26 -07:00
Denis Kenzior c91ae28018 Fixes to parser state when command prompt is used 2009-06-19 21:14:00 -05:00
Denis Kenzior b648a112f2 Improve string parsing code
Currently next_string and next_hexstring functions use a static
buffer in the iterator to store the value.  This value is clobbered
as soon as next_string or next_hexstring is called.  Instead,
we copy the entire line in iter_next and use it as a scratch buffer.
The only limitation is that lines of max 2048 are possible, however
these are limited to around this size by parts of the standard.
2009-06-16 16:38:24 -05:00
Denis Kenzior 69372e642e Add g_at_send_listing function 2009-06-16 16:38:19 -05:00
Denis Kenzior 2222e1e38d Additional fixes to multiline responses
The previous fix did not take into account the logic in have_line
function, which takes care of certain modems that do not prefix
their responses by <cr><lf> at all.  This fix should take both
into consideration
2009-06-08 22:45:03 -05:00
Denis Kenzior fafdda30b9 Fix multiline responses in GAtChat
The standard is a bit fuzzy on how multiline responses are returned
GAtChat assumed that they will always start with <cr><lf>, however
this doesn't seem to be correct.  Add a new state which is entered
when a response is obtained.  If <cr> is encountered, then it
is processed regularly, otherwise the parser assumes that the
next line is part of the multiline response
2009-06-08 14:08:18 -05:00
Andrzej Zaborowski 41afb58bd7 Add hex-encoded character string getter to AtChat 2009-05-26 18:15:53 -05:00
Denis Kenzior 64c4276473 Add AT chat library implementation 2009-05-06 14:42:54 -07:00
Marcel Holtmann 4ea27466bf Add directory for AT chat library 2009-05-06 14:42:51 -07:00