Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Asterisk 10, 11, 13, 14 compatibility fixes. And a few other fixes. #216

Open
wants to merge 137 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
137 commits
Select commit Hold shift + click to select a range
d13f113
Parse a +CMGS notification and hack it to send an event with reference.
wdoekes Sep 5, 2015
ea62b24
Add Asterisk 10 support.
wdoekes Sep 5, 2015
aebd073
Add more Asterisk 10 support.
wdoekes Sep 5, 2015
9108a96
Add Asterisk 11 support.
wdoekes Sep 5, 2015
46cc1dd
Add .gitignore.
wdoekes Sep 5, 2015
50110f3
Add Asterisk 13 support.
wdoekes Sep 5, 2015
897b27c
Translate NUL to @ in incoming SMS.
wdoekes Sep 5, 2015
cd03d3a
Fix so Asterisk 1.8 compilation works again.
wdoekes Sep 6, 2015
7eb9b85
Spaces cleanup. Asterisk version number cleanup.
wdoekes Sep 6, 2015
5801434
Applied chan-dongle-alphanumeric-pdu.patch.
yylyyl Sep 19, 2015
1cf0f4b
Move ASTERISK_VERSION_NUM setting to ./configure invocation:
wdoekes Sep 20, 2015
6e28278
Fix channel unlock issue in Asterisk >= 12.
wdoekes Sep 20, 2015
6dad123
Clean up horrific ASTERISK_VERSION_NUM #if/#elif in channel_request.
wdoekes Sep 20, 2015
c5c0c5d
build: Properly force a recompile on config.h change.
wdoekes Sep 20, 2015
c3490bb
Clean up format_cap_set stuff. Possibly fixing Local channel support.
wdoekes Sep 20, 2015
db3c629
Clarify --with-astversion parameter in ./configure.
wdoekes Dec 25, 2015
53e0be5
Fix compile issues with master (Asterisk 14).
wdoekes May 10, 2016
c2d9c34
Don't crash ongoing calls when receiving SMS.
wdoekes Sep 4, 2016
9529a68
Fix compile issues with Asterisk 14.
wdoekes Sep 4, 2016
bf38e68
Fix decoding of SMS with non-language characters.
wdoekes Sep 30, 2016
15f2a39
Add macros for decoding TP-DA, TP-OA and TP-RA addresses.
wdoekes Oct 1, 2016
39c3e04
Support TON=5 with any NPI (instead of just 0) for alphanumeric address.
wdoekes Oct 1, 2016
51c9cec
Merge pull request #11 from bg111/master
wdoekes Oct 1, 2016
c1109d6
Merge pull request #10 from wdoekes/number_type_alnum_d0_d1
wdoekes Oct 2, 2016
c24a315
Fix so compilation with different include dirs work.
wdoekes Oct 2, 2016
6f316d1
Add travis file.
wdoekes Oct 2, 2016
a2c6a24
Build fix for Asterisk 12.
wdoekes Oct 2, 2016
8c657be
Add Travis badge. Update README to Markdown.
wdoekes Oct 2, 2016
1e60445
Merge branch 'travis'
wdoekes Oct 2, 2016
428a746
Unbreak compiled module loading broken in c24a3150.
wdoekes Oct 2, 2016
dcf4f68
Better fix for breakage from c24a3150.
wdoekes Oct 2, 2016
e221694
Adds a DongleSendUSSD function (Device, USSD) dialplan function
fadasi Oct 6, 2016
eeb503a
Merge pull request #16 from fadasi/master
wdoekes Oct 6, 2016
2a5a097
Clarify ./bootstrap procedure. Drop ancient INSTALL docs.
wdoekes Nov 13, 2016
283f399
bootstrap: Fix file naming (not 'bootstap').
wdoekes Jan 20, 2017
8bbba90
build: Improve --with-astversion to take X.Y.Z version.
wdoekes Jan 20, 2017
5b99b75
build: Explain that you may use --with-asterisk on configure.
wdoekes Jan 20, 2017
48df4f6
build: Fix builds for Asterisk < 10.y.z. And fix Travis CI-test.
wdoekes Jan 20, 2017
fba6ed1
pdu/tests: Clean up pdu_parse if-tree and restore test capability.
wdoekes Apr 16, 2017
2152a58
pdu/tests: Add tests for multipart 7bit encoded message decoding.
wdoekes Apr 16, 2017
9f32405
char_conv: Handle 7bit encoded multi-part SMS correctly.
wdoekes Apr 16, 2017
9c10081
pdu/parsing: Fix unsupported DCS value 0xF0.
wdoekes Apr 16, 2017
212ea86
docs: Add note about avoiding "SMS-injection".
wdoekes Apr 16, 2017
e324cfe
logging: Add missing LFs to WARNINGs/ERRORs.
wdoekes Apr 16, 2017
704deed
travis: Make check after the build.
wdoekes Apr 16, 2017
b0a2dec
decoding: Decode 7bit alphabet to unicode.
wdoekes Apr 16, 2017
7c8e6b8
cleanup: Fix a few typo's.
wdoekes Apr 17, 2017
14a966d
cleanup: Fix some more typo's. The locks all seem okay.
wdoekes Apr 17, 2017
45d8fbc
cleanup/fix: Undo pvt=NULL "fix" which was bad.
wdoekes Apr 18, 2017
d6c2982
cleanup: Remove leftover round_robin_mtx comments.
wdoekes Apr 28, 2017
78a2e97
cleanup: Unindent/flatten pvt_start() in chan_dongle.c.
wdoekes Apr 28, 2017
c929b35
fix: Fix incidental deadlock with Jitterbuffer or Asterisk 12+.
wdoekes Apr 28, 2017
b6c7fdf
adding instructions for applying Jitter buffer and automatic gain con…
garronej Jun 1, 2017
217daf4
Merge pull request #34 from garronej/master
wdoekes Jun 1, 2017
c57ef0d
Ignore """+CMTI: "SM",-1""" with negative index.
wdoekes Jul 24, 2017
1e452f7
Attempt to open the dongle in exclusive mode using TIOCEXCL.
wdoekes Jul 24, 2017
53e83a4
Fix audio endianess problem on big endian systems.
micmac1 Sep 3, 2017
d1a86f6
Add Asterisk 14/15 Travis checks.
wdoekes Sep 3, 2017
4ef5ad7
Revert "fix Sparc loud noise problem #201"
wdoekes Sep 13, 2017
8c14e40
Lower default timeout of 2sec to 5sec and 15sec to 40sec
wdoekes Mar 5, 2018
cfab716
Improve asterisk/modules dir autodetection
wdoekes Mar 5, 2018
fe2861e
Hide -Wimplicit-fallthrough= false positives
wdoekes Mar 5, 2018
bf0e955
pdu/parsing: Fix unsupported DCS value 19
wdoekes Mar 12, 2018
6ba9cf2
pdu/parsing: Allow all values for TP-PID
wdoekes Mar 12, 2018
3e2b3ca
travis: Unbreak CI
wdoekes Mar 12, 2018
fd544d6
USSD encoding fix for E3531
grray Jun 19, 2018
4e16d96
Add with-iconv
misuzu Oct 15, 2019
62259b2
Trim trailing garbage from provider name causing ast_json_vpack error
wdoekes Nov 20, 2019
e08f0d4
Fix missing trailing LF in README
wdoekes Nov 20, 2019
2067262
Add chanvar setting ast_debug to aid in future debugging
wdoekes Nov 20, 2019
8b1827c
Better params for the JITTERBUFFER in README
garronej Jan 21, 2019
c0bfc32
travis: Alter asterisk include files remote path
wdoekes Dec 12, 2019
24bf23c
Merge pull request #72 from misuzu/with-iconv
wdoekes Dec 17, 2019
923db63
Disable Asterisk 1.8 travis test
wdoekes Feb 12, 2020
fe3b185
Disable travis test with unstable asterisk versions
maxvonbuelow Feb 13, 2020
f46dd16
Added complete GSM-7 tables; Implemented GSM-7 escape
maxvonbuelow Feb 13, 2020
1161b7c
Implemented concatenated SMS support
maxvonbuelow Feb 13, 2020
2983cab
Merge branch 'master' into master
magcks Feb 13, 2020
ee17874
Merge pull request #75 from magcks/master
wdoekes Feb 19, 2020
1815ddd
Rename enque to enqueue, and remove fishy function pointer casts
wdoekes Feb 24, 2020
9968d4a
send sms to local and internal network numbers
miopa Jul 22, 2018
cb610d4
E3531 support
maxvonbuelow Mar 3, 2020
9e86540
Merge pull request #80 from magcks/E3531s2
wdoekes May 3, 2020
a4a7a34
Add configure.ac checks for sqlite3
wdoekes May 3, 2020
ba5e721
Fix for stuck SMS.
hselasky Sep 29, 2017
413cad9
Fix bug in SMS parsing logic.
hselasky Mar 2, 2020
1d00a5d
Merge pull request #79 from hselasky/master
wdoekes May 3, 2020
868bbd4
Seperated PDU parsing (and building) into hex parsing, actual PDU dec…
maxvonbuelow Feb 27, 2020
1e5b916
Resolved conflicts w/ #79
maxvonbuelow May 14, 2020
b18ca62
Merge pull request #77 from magcks/unhexpdu
wdoekes May 14, 2020
71e3206
Fixed issue #85
maxvonbuelow May 15, 2020
7bdef5e
Merge pull request #86 from magcks/unhexpdu
wdoekes May 15, 2020
6f377e7
Use incoming_sms_index field as indication of incoming SMS instead of…
hselasky May 28, 2020
dd658fb
Fix compile warning. Ensure enum2str() is declared.
hselasky May 28, 2020
0b68e29
Fix uninitialized use of res variable.
hselasky May 28, 2020
ea421a5
Fix compile warning for clang: Unsequenced modification of i.
hselasky May 28, 2020
d456f22
Remove unused variables.
hselasky May 28, 2020
403ecee
Fix compile warnings.
hselasky May 28, 2020
db20b69
Fix variable type.
hselasky May 28, 2020
4426101
Always receive next SMS regardless of error.
hselasky May 28, 2020
81064ef
Fix integer to pointer conversion.
hselasky May 28, 2020
5110695
Fix regression issue after PDU parsing was separated.
hselasky May 28, 2020
328b2b7
Merge pull request #90 from hselasky/master
wdoekes May 28, 2020
b8eb673
Removed some magic. Sorry, I'm not a wizard
Jun 3, 2020
fe26c84
Use Asterisk function `ast_unescape_c` on SMS text when sending via AMI
miopa Jun 16, 2020
9322431
Merge pull request #101 from miopa/patch-2
wdoekes Jun 17, 2020
fd04f63
Add guard against NULL args.payload
phcoder Jun 5, 2020
6358664
Merge pull request #99 from phcoder/payload
wdoekes Jun 19, 2020
e700abc
fix ucs-2 empty sms bug
Jun 24, 2020
0d1bad5
Merge pull request #96 from p-velasco/pin-implementation
wdoekes Jun 25, 2020
4a15ac8
Better type safe sms inbox
Jul 4, 2020
4652c90
Suppress errors on initial sms poll
Jul 4, 2020
213f677
Merge pull request #107 from 4e4o/master
wdoekes Aug 19, 2020
bde8838
FreeBSD has slightly another place for lock files
h31p Aug 26, 2020
fc4d5d8
A better change to the logging
hardillb Sep 2, 2020
f1517b4
Updated interfaces for E171
mghadam Nov 30, 2020
2bd3fc2
Added E153Du-1 device id ports
mghadam Dec 23, 2020
ca9b692
fix Cannot parse UCS-2 error (#131)
129tyc Apr 19, 2021
5a0ee53
Abort compilation on warnings
wdoekes Sep 19, 2021
222039f
Fix compiler warnings; add casts, add const when easy, remove unused
wdoekes Sep 19, 2021
81b0fda
Try GitHub Actions instead of "Free Plan Will Always Be Free"-Travis
wdoekes Sep 19, 2021
a35294b
Fix make check compiler warnings and check errors
wdoekes Sep 19, 2021
427a665
Merge branch 'fix-compiler-warnings'
wdoekes Sep 19, 2021
46be41b
Better variable locality in at_enqueue_initialization
wdoekes Sep 19, 2021
6073c91
Add Quectel support
wdoekes Sep 19, 2021
5837b98
Quick fix for mips-openwrt-linux-musl-gcc maybe-uninitialized warning
wdoekes Sep 19, 2021
df6e3ed
Don't do -Werror by default, use ./configure --enable-warnings-as-errors
wdoekes Sep 19, 2021
5c88561
Remove use_ucs2_encoding (#146)
rojer Sep 29, 2021
24e656a
Merge branch 'add-quectel-support'
wdoekes Sep 29, 2021
3d2a97f
Fix GSM7 decoding on big endian targets (#145)
rojer Sep 29, 2021
3d046f7
Do not choke on failed AT^CVOICE? or AT+QPCMV? during startup
wdoekes Oct 5, 2021
5a9cdc9
Remove probably-useless code at voice init failure
wdoekes Jan 17, 2022
f73a2b3
Add autoheader to ./bootstrap; add HAVE_LIBSQLITE3; error on smsdb in…
wdoekes Jan 17, 2022
7378810
Add PRI_time_t in case we want to printf time_t values
wdoekes Jan 17, 2022
57e025d
Fix formatting in error.h
wdoekes Jan 17, 2022
503dba8
Revert "Updated interfaces for E171"
wdoekes Nov 4, 2022
13450af
Consider long long (lld) for time_t (#173)
micmac1 Dec 26, 2023
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
44 changes: 44 additions & 0 deletions .github/workflows/thanks-for-nothing-travis.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,44 @@
name: Thanks for nothing, Travis

on: [push, pull_request]

jobs:

build:

strategy:
matrix:
include:
- title: Asterisk 13
asterisk_version: 13
- title: Asterisk 14
asterisk_version: 14
- title: Asterisk 16
asterisk_version: 16

runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v2

- name: Download ${{ matrix.title }} prerequisites
env:
ASTVER: ${{ matrix.asterisk_version }}
run:
wget http://junk.devs.nu/a/asterisk/asterisk-$ASTVER-include.tar.bz2 &&
tar jxf asterisk-$ASTVER-include.tar.bz2

- name: Bootstrap and configure for ${{ matrix.title }}
env:
ASTVER: ${{ matrix.asterisk_version }}
run:
./bootstrap &&
./configure --with-astversion=$ASTVER
--with-asterisk=./asterisk-$ASTVER/include DESTDIR=/tmp
--enable-warnings-as-errors

- name: Build for ${{ matrix.title }}
run: make clean all

- name: Check
run: make check
21 changes: 21 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
*.swp

*.o
*.o.d

/chan_dongle.so

/Makefile
/aclocal.m4
/autom4te.cache
/compile
/config.guess
/config.h
/config.log
/config.status
/config.sub
/configure
/install-sh
/missing
/stamp-h
/stamp-h1
34 changes: 0 additions & 34 deletions INSTALL

This file was deleted.

50 changes: 37 additions & 13 deletions Makefile.in
Original file line number Diff line number Diff line change
Expand Up @@ -3,30 +3,32 @@ PROJS = chan_dongles.so

chan_donglem_so_OBJS = app.o at_command.o at_parse.o at_queue.o at_read.o at_response.o \
chan_dongle.o channel.o char_conv.o cli.o helpers.o manager.o \
memmem.o ringbuffer.o cpvt.o dc_config.o pdu.o mixbuffer.o pdiscovery.o
memmem.o ringbuffer.o cpvt.o dc_config.o pdu.o mixbuffer.o pdiscovery.o error.o smsdb.o

chan_dongles_so_OBJS = single.o

test1_OBJS = test/test1.o ringbuffer.o mixbuffer.o
parse_OBJS = test/parse.o at_parse.o char_conv.o pdu.o
test1_OBJS = test/test1.o ringbuffer.o mixbuffer.o error.o
gen_OBJS = test/gen.o char_conv.o pdu.o error.o
parse_OBJS = test/parse.o at_parse.o char_conv.o pdu.o error.o
discovery_OBJS = tools/discovery.o tools/tty.o

SOURCES = app.c at_command.c at_parse.c at_queue.c at_read.c at_response.c \
chan_dongle.c channel.c char_conv.c cli.c cpvt.c dc_config.c helpers.c \
manager.c memmem.c ringbuffer.c single.c pdu.c mixbuffer.c pdiscovery.c
manager.c memmem.c ringbuffer.c single.c pdu.c mixbuffer.c pdiscovery.c \
error.c smsdb.c

test_SOURCES = test/test1.c test/parse.c
test_SOURCES = test/test1.c test/parse.c test/gen.c
tools_SOURCES = tools/discovery.c tools/tty.c

HEADERS = app.h at_command.h at_parse.h at_queue.h at_read.h at_response.h \
chan_dongle.h channel.h char_conv.h cli.h cpvt.h dc_config.h export.h \
helpers.h manager.h memmem.h ringbuffer.h pdu.h mixbuffer.h pdiscovery.h \
mutils.h
mutils.h error.h smsdb.h

tools_HEADERS = tools/tty.h

EXTRA_DIST = BUGS COPYRIGHT.txt LICENSE.txt README.txt TODO.txt INSTALL \
Makefile.in config.h.in configure.in stamp-h.in etc contrib
Makefile.in config.h.in configure.ac stamp-h.in etc contrib

BUILD_TOOLS = configure config.sub install-sh missing config.guess

Expand All @@ -38,7 +40,8 @@ INSTALL = @INSTALL@
CHMOD = chmod

# -DAST_MODULE=\"$(PROJM)\" -D_THREAD_SAFE
CFLAGS = @CFLAGS@ -I$(srcdir) @CPPFLAGS@ @DEFS@ @AC_CFLAGS@
CFLAGS = @CFLAGS@ -I$(srcdir) -std=gnu99 -DAST_MODULE_SELF_SYM=__internal_chan_dongle_self \
@CPPFLAGS@ @DEFS@ @AC_CFLAGS@
LDFLAGS = @LDFLAGS@
SOLINK = @SOLINK@
LIBS = @LIBS@
Expand All @@ -51,7 +54,15 @@ all: @TARGET@

install: all
$(STRIP) $(PROJM)
$(INSTALL) -m 755 $(PROJM) @DESTDIR@
ifneq (@DESTDIR@,)
$(INSTALL) -m 644 $(PROJM) @DESTDIR@
else
@echo >&2
@echo "*** Asterisk modules directory was not auto-detected." >&2
@echo "*** Please copy $(PROJM) to the appropriate modules directory yourself." >&2
@echo >&2
@false
endif

$(PROJM): $(chan_donglem_so_OBJS) Makefile
$(LD) $(LDFLAGS) $(SOLINK) -o $@ $(chan_donglem_so_OBJS) $(LIBS)
Expand All @@ -61,14 +72,22 @@ $(PROJS): $(chan_dongles_so_OBJS) Makefile
$(CHMOD) 755 $@
mv $@ chan_dongle.so

.c.o:
.c.o: Makefile config.h
$(CC) $(CFLAGS) $(MAKE_DEPS) -o $@ -c $<

tests: test/test1 test/parse
check: tests
./test/test1
./test/parse
./test/gen

tests: test/test1 test/parse test/gen

test/test1: $(test1_OBJS)
$(LD) $(LDFLAGS) -o $@ $(test1_OBJS) $(LIBS)

test/gen: $(gen_OBJS)
$(LD) $(LDFLAGS) -o $@ $(gen_OBJS) $(LIBS)

test/parse: $(parse_OBJS)
$(LD) $(LDFLAGS) -o $@ $(parse_OBJS) $(LIBS)

Expand All @@ -80,6 +99,11 @@ tools/discovery: $(discovery_OBJS)
clean:
$(RM) $(PROJM) $(PROJS) *.o *.core .*.d autom4te.cache test/test1 test/*.o tools/discovery test/*.o

distclean: clean
$(RM) Makefile aclocal.m4 compile \
config.guess config.h config.log config.status config.sub \
configure install-sh missing stamp-h stamp-h1

dist: $(SOURCES) $(HEADERS) $(EXTRA_DIST) $(BUILD_TOOLS)
@mkdir $(DISTNAME) $(DISTNAME)/test $(DISTNAME)/tools
@cp -a $(SOURCES) $(HEADERS) $(EXTRA_DIST) $(BUILD_TOOLS) $(DISTNAME)
Expand All @@ -88,8 +112,8 @@ dist: $(SOURCES) $(HEADERS) $(EXTRA_DIST) $(BUILD_TOOLS)
tar czf $(DISTNAME).tgz $(DISTNAME) --exclude .svn -h
@$(RM) $(DISTNAME)

${srcdir}/configure: configure.in
cd ${srcdir} && autoconf
configure: configure.ac
autoconf

config.h: stamp-h
stamp-h: config.h.in config.status
Expand Down
Loading