9 | """
10 |
11 | import os, cgi, string
12 |
13 | def ping(host):
14 | if len(string.split(host, "'")) != 1:
15 | return "Invalid host name."
16 | f = os.popen("ping -q -c 4 '%s'" % host)
17 | lines = f.readlines()
18 | f.close()
19 | lines = map(lambda line: line[:-1], lines)
20 | lines = filter(lambda line: line and line[:4] != "--- ", lines)
21 | return string.join(string.split(string.join(lines, " ")), " ")
22 |
23 | def do_cgi():
24 | print "Content-type: text/plain"
25 | print ""
26 |
27 | form = cgi.FieldStorage()
28 | if not form.has_key("host"):
29 | print "CGI argument `host' missing."
30 | else:
31 | host = form["host"].value
32 | print ping(host)
33 |
34 | if __name__ == "__main__":
35 | do_cgi()
36 |
--------------------------------------------------------------------------------
/contrib/sendsms:
--------------------------------------------------------------------------------
1 | #!/usr/bin/python
2 |
3 | import os, string, sys, urllib
4 |
5 | HOST = "localhost"
6 | PORT = 13013
7 | USERNAME = "tester"
8 | PASSWORD = "foobar"
9 |
10 | NUMBERS = "~/.sendsms.dat"
11 |
12 | def is_a_phone_number(str):
13 | if not str:
14 | return 0
15 | for c in str:
16 | if not c in "0123456789+- ":
17 | return 0
18 | return 1
19 |
20 | def recipient(arg):
21 | if is_a_phone_number(arg):
22 | return arg
23 | f = open(os.path.expanduser(NUMBERS), "r")
24 | arg = string.lower(arg)
25 | number = None
26 | for line in f.readlines():
27 | parts = string.split(line)
28 | if len(parts) == 2 and string.lower(parts[0]) == arg:
29 | number = parts[1]
30 | break
31 | f.close()
32 | if number:
33 | return number
34 | print "Unknown recipient", arg
35 | sys.exit(1)
36 |
37 | def sendsms():
38 | to = urllib.quote_plus(recipient(sys.argv[1]))
39 | text = urllib.quote_plus(string.join(sys.argv[2:], " "))
40 | url="http://%s:%d/cgi-bin/sendsms?username=%s&password=%s&to=%s&text=%s" \
41 | % (HOST, PORT, USERNAME, PASSWORD, to, text)
42 | f = urllib.urlopen(url)
43 | print f.read()
44 | f.close()
45 |
46 | if __name__ == "__main__":
47 | sendsms()
48 |
--------------------------------------------------------------------------------
/contrib/smstomail.cgi:
--------------------------------------------------------------------------------
1 | #!/usr/bin/python
2 |
3 | MAIL_SENDER = "liw"
4 | MAIL_RECEIVER = "liw"
5 |
6 | import cgi, os, string
7 |
8 | class Vars:
9 | def __init__(self):
10 | self._dict = cgi.FieldStorage()
11 |
12 | def __getitem__(self, key):
13 | return self._dict[key].value
14 |
15 | def smstomail():
16 | print "Content-Type: text/plain"
17 | print ""
18 |
19 | v = Vars()
20 |
21 | f = os.popen("/usr/sbin/sendmail -oi %s" % MAIL_RECEIVER, "w")
22 | f.write("From: %s\nTo: %s\nSubject: SMS message from %s\n\n%s:\n%s\n" %
23 | (MAIL_SENDER, MAIL_RECEIVER, v["from"], v["to"], v["text"]))
24 | f.close()
25 |
26 | print "Sent via mail to receiver."
27 |
28 | if __name__ == "__main__":
29 | smstomail()
30 |
--------------------------------------------------------------------------------
/contrib/web/form.php:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pruiz/kannel/cdbcfc129ab1f0cb301df741131bccf20d39c17f/contrib/web/form.php
--------------------------------------------------------------------------------
/contrib/web/index.html:
--------------------------------------------------------------------------------
1 |
2 |
9 |
10 |
--------------------------------------------------------------------------------
/contrib/web/menu.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Message Type
6 | Text
7 | Nokia Smart Messaging - Logo
8 | Nokia Smart Messaging - Group
9 | Nokia Smart Messaging - Picture
10 | Nokia Smart Messaging - Tune
11 | Nokia Smart Messaging - vCard
12 | Nokia Smart Messaging - vCal
13 | Nokia Smart Messaging - Profile
14 | Message Waiting Indicator
15 | Wap OTA - Wap Config
16 | Wap OTA - Wap Bookmark
17 | Wap OTA - Wap Push SI
18 | Wap OTA - Wap Push SL
19 | Siemens - MMC
20 | RAW
21 |
22 |
23 |
24 |
--------------------------------------------------------------------------------
/contrib/webalizer/ReadMe:
--------------------------------------------------------------------------------
1 | Scripts to generate webalizer pages from kannel access.log format.
2 |
3 | * smsc-id name have only one slash in it
4 | example: KannelClient-P12345
5 | First field is client name and second field is short number, "P"
6 | for production SMSC
7 |
8 | * sendsms-user and service name have at least two slashes in it
9 | example: KannelClient-MT-Logos or KannelClient-MO-ReplyLogo
10 | First field is client name, second is MT for sendsms-users
11 | (web generated MT messages) and MO for services (even if it is
12 | a MT message, it's a reply to an MO). Could be something like
13 | USER and SERVICE. Third field is the service name.
14 |
15 | * scripts have some hard-coded directories and filenames.
16 | I have a user kannel, in directory /home/kannel, inside a
17 | bin, etc and var/log. Just check and adjust them.
18 |
19 | * stats.sh could be run in crontab when everything is working
20 | ok
21 |
22 | * scripts uses to create a directory and
23 | the rest for the webalizer directory. This way, we could have
24 | different directories for different clients connected to kannel
25 |
26 |
27 |
28 | (c) 2001,2002 Bruno Rodrigues
29 | Under GPL Licence
30 |
31 |
--------------------------------------------------------------------------------
/contrib/webalizer/converte.pl:
--------------------------------------------------------------------------------
1 | #!/usr/bin/perl
2 |
3 | $exchange = shift;
4 |
5 | $exchange = "" if $exchange =~ /-/;
6 |
7 | $|=1;
8 | @months = ("Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec");
9 | %results = ( "Sent" => "200", "Receive" => "200", "FAILED Send" => 403, "DISCARDED" => "404");
10 |
11 | while ($line = ) {
12 | chop($line);
13 |
14 | # Lines to ignore
15 | # ---------------
16 | next if $line =~ /Log begins/;
17 | next if $line =~ /Log ends/;
18 |
19 | $line =~ /^([0-9]{4})-([0-9]{2})-([0-9]{2}) ([0-9]{2}):([0-9]{2}):([0-9]{2}) (.+?) SMS \[SMSC:(.*?)\] \[SVC:(.*?)\] \[from:(.*?)\] \[to:(.*?)\] \[flags:(.):(.):(.):(.):(.)\] \[msg:([0-9]+):(.*?)\] \[udh:([0-9]+):(.*?)\]$/i;
20 | ($year, $month, $day, $hour, $minute, $second, $result, $smsc, $svc, $from, $to, $f1, $f2, $f3, $f4, $f5, $msglen, $msg, $udhlen, $udh) = ($1, $2, $3, $4, $5, $6, $7, $8, $9, $10, $11, $12, $13, $14, $15, $16, $17, $18, $19, $20);
21 |
22 | $msg =~ s/[^a-zA-Z0-9]//g;
23 | $msg = substr($msg, 0, 60);
24 | $msg =~ tr/a-z/A-Z/;
25 |
26 | if($exchange ne "") {
27 | $to = $from;
28 | }
29 |
30 | $to .= ".pt" if $to =~ /^91/;
31 | $to .= ".fr" if $to =~ /^93/;
32 | $to .= ".es" if $to =~ /^96/;
33 | $to .= ".uk" if $to =~ /^95/;
34 |
35 | $string = $to;
36 | $string .= " - - [". $day;
37 | $string .= "/". $months[$month-1];
38 | $string .= "/". $year;
39 | $string .= ":". $hour;
40 | $string .= ":". $minute;
41 | $string .= ":". $second;
42 | $string .= " +0100] ". '"GET /'. $msg;
43 | $string .= ' HTTP/1.0" '. $results{$result};
44 | $string .= " ". ($msglen+$udhlen);
45 | $string .= ' "'. $f1. ",". $f2. ",". $f3. ",". $f4. ",". $f5 . '" -'."\n";
46 |
47 | print $string;
48 | }
49 |
--------------------------------------------------------------------------------
/contrib/webalizer/multi-line.pl:
--------------------------------------------------------------------------------
1 | #!/usr/bin/perl -w
2 |
3 | # This script joins multi-line entries from access.log
4 | # cat bearerbox_access.log | multi-line.pl
5 |
6 | $|=1;
7 |
8 | $linenum=0;
9 | $result="";
10 |
11 | while($line = ) {
12 | $linenum++;
13 | chop($line);
14 | next if $line =~ /Log begins/;
15 | next if $line =~ /Log ends/;
16 |
17 | if ( $result ne "" && $line =~ /^[0-9]{4}-[0-9]{2}-[0-9]{2} [0-9]{2}:[0-9]{2}:[0-9]{2} .+? .+? \[SMSC:.*?\] \[SVC:.*?\] \[from:.*?\] \[to:.*?\] \[flags:.:.:.:.:.+?\] \[msg:.+?:.*$/) {
18 | $result = "";
19 | print STDERR "$linenum:$line\n";
20 | }
21 |
22 | $result .= $line;
23 |
24 | if($result =~ /^[0-9]{4}-[0-9]{2}-[0-9]{2} [0-9]{2}:[0-9]{2}:[0-9]{2} .+? .+? \[SMSC:.*?\] \[SVC:.*?\] \[from:.*?\] \[to:.*?\] \[flags:.:.:.:.:.+?\] \[msg:.+?:.*?\] \[udh:.+?:.*?\]$/i) {
25 | print $result."\n";
26 | $result="";
27 | }
28 | }
29 |
30 |
--------------------------------------------------------------------------------
/contrib/webalizer/split.pl:
--------------------------------------------------------------------------------
1 | #!/usr/bin/perl -w
2 |
3 | # This script reads access.log (pass it through multi-line first!) and
4 | # split them by SMSC or Service
5 |
6 | # Just define your service and smsc names as:
7 | #
8 | # SMSC: (smsc-id in smsc groups)
9 | # -
10 | #
11 | # Service: (name in sms-service and sendsms-user)
12 | # --
13 | # SVC = for user, MT or USER
14 | # for service, MO or SERVICE
15 |
16 |
17 |
18 | $dir = shift || "/tmp";
19 |
20 | foreach $line (<>) {
21 |
22 | $line =~ /^.{19} (.+) \[SMSC:(.*?)\] \[SVC:(.*?)\].*$/;
23 |
24 | $status= $1; $smsc= $2; $service= $3;
25 |
26 | if( $status =~ /Receive/) {
27 | open(X, ">>$dir/$smsc.log");
28 | } else {
29 | open(X, ">>$dir/$service.log");
30 | }
31 |
32 | print X $line;
33 |
34 | close(X);
35 | }
36 |
--------------------------------------------------------------------------------
/contrib/webalizer/stats.sh:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 |
3 | logdir="var/tmp"
4 | http="public_html/web/stats"
5 |
6 | cd /home/kannel || exit 1
7 |
8 | old=""
9 |
10 | rm -f $logdir/*.log
11 |
12 | cat var/log/bearerbox_access.log$old | bin/multi-line.pl | bin/split.pl "$logdir/"
13 |
14 | # This block checks reads access.log from other machine
15 | #if [ "`/sbin/ifconfig | grep 100.204`" = "" ] ; then
16 | # other=204
17 | #else
18 | # other=205
19 | #fi
20 | #ssh .$other "cat var/log/bearerbox_access.log$old" | bin/multi-line.pl | bin/split.pl "$logdir/"
21 |
22 | for i in `(cd $logdir ; ls -1 *.log)` ; do
23 | dir=${i%%-*}
24 | file=${i#*-} ; file=${file%.log}
25 |
26 | echo "**$dir**$file**"
27 | if [ ! -d "$http/$dir" ] ; then
28 | mkdir -p "$http/$dir"
29 | fi
30 | if [ ! -d "$http/$dir/$file" ] ; then
31 | mkdir -p "$http/$dir/$file/"
32 | fi
33 | cat $logdir/$i | sort | bin/converte.pl $file | /usr/bin/webalizer -q -c etc/webalizer.conf -o $http/$dir/$file -t "$file" -
34 | done
35 | rm -f $logdir/*.log
36 |
--------------------------------------------------------------------------------
/debian/changelog:
--------------------------------------------------------------------------------
1 | kannel-cvs (1.3.1-20030404-1) unstable; urgency=low
2 |
3 | * CVS Daily build
4 |
5 | -- Bruno Rodrigues Sun, 26 Jan 2003 17:05:13 +0100
6 |
--------------------------------------------------------------------------------
/debian/changelog.devel:
--------------------------------------------------------------------------------
1 | kannel-devel (1.3.1-4) unstable; urgency=low
2 |
3 | * New package (Closes: #185381)
4 | * Fix bug in init script
5 |
6 | -- Bruno Rodrigues Sun, 4 May 2003 18:55:12 +0000
7 |
8 | kannel-devel (1.3.1-3) unstable; urgency=low
9 |
10 | * Updated Standards-Version to 3.5.9 and other cleaning up
11 | * Kannel-devel-docs is now architecture independent. Updated control and
12 | rule.
13 |
14 | -- Bruno Rodrigues Tue, 8 Apr 2003 20:08:50 +0000
15 |
16 | kannel-devel (1.3.1-2) unstable; urgency=low
17 |
18 | * Moved debian dir from orig.tar.gz to diff
19 | * Tidy up debian/ files
20 |
21 | -- Bruno Rodrigues Mon, 17 Mar 2003 21:20:19 +0000
22 |
23 | kannel-devel (1.3.1-1) unstable; urgency=low
24 |
25 | * New upstream version (development)
26 |
27 | -- Bruno Rodrigues Tue, 18 Feb 2003 05:52:44 +0000
28 |
29 | kannel-devel (1.3.0-2) unstable; urgency=low
30 |
31 | * Updated Standards-Version.
32 |
33 | -- Bruno Rodrigues Tue, 21 Jan 2003 01:34:48 +0000
34 |
35 | kannel-devel (1.3.0-1) unstable; urgency=low
36 |
37 | * New upstream version (development)
38 |
39 | -- Bruno Rodrigues Sat, 11 Jan 2003 16:23:39 +0100
40 |
41 | kannel-devel (1.1.6-1) unstable; urgency=low
42 |
43 | * New upstream version
44 | * Non-Official Package
45 |
46 | -- Bruno Rodrigues Thu, 28 Mar 2002 10:30:39 +0100
47 |
--------------------------------------------------------------------------------
/debian/changelog.stable:
--------------------------------------------------------------------------------
1 | kannel (1.4.0-0) unstable; urgency=low
2 |
3 | * New upstream version.
4 | * Bumped standards version
5 |
6 | -- Bruno Rodrigues Sat, 7 Aug 2004 13:45:02 +0200
7 |
8 | kannel (1.2.1-5) unstable; urgency=low
9 |
10 | * New maintainer (Closes: #185224)
11 | * Fix bug in init script
12 |
13 | -- Bruno Rodrigues Sun, 4 May 2003 18:54:43 +0000
14 |
15 | kannel (1.2.1-4) unstable; urgency=low
16 |
17 | * Updated Standards-Version to 3.5.9 and other cleaning up
18 | * Kannel-docs is now architecture independent. Updated control and rules
19 |
20 | -- Bruno Rodrigues Tue, 8 Apr 2003 20:08:40 +0000
21 |
22 | kannel (1.2.1-3) unstable; urgency=low
23 |
24 | * Moved debian dir from orig to diff
25 | * Added debian/compat
26 | * Tidy up
27 |
28 | -- Bruno Rodrigues Mon, 17 Mar 2003 18:42:36 +0000
29 |
30 | kannel (1.2.1-2) unstable; urgency=low
31 |
32 | * Updated Standards-Version to 3.5.8
33 |
34 | -- Bruno Rodrigues Sun, 26 Jan 2003 17:05:13 +0100
35 |
36 | kkannel (1.2.1-1) unstable; urgency=low
37 |
38 | * New upstream version
39 |
40 | -- Bruno Rodrigues Sun, 26 Jan 2003 17:05:13 +0100
41 |
42 | kannel (1.2.0-1) unstable; urgency=low
43 |
44 | * New upstream version
45 |
46 | -- Bruno Rodrigues Thu, 18 Jul 2002 10:30:39 +0100
47 |
48 | kannel (0.11.3.cvs-1) unstable; urgency=low
49 |
50 | * New upstream version 0.11.3. This Debian package has a few additional
51 | changes made in upstream CVS since the release:
52 | * SMS timestamps are set by Kannel, if the SMS center did not set them.
53 | * Bugfixes in assertions.
54 | * Fixes to a couple of WMLScript compilation bugs.
55 | * WTP protocol fix in cases when load is heavy and Ack packets are delayed.
56 | * WTP state machine fix: if an event can't be handled, it is just ignored,
57 | instead of the state machine being killed.
58 | * Debian packaging: postinst creates user kannel, init.d/kannel runs
59 | the boxes as that user.
60 |
61 | -- Lars Wirzenius Tue, 10 Oct 2000 15:54:01 +0300
62 |
63 | kannel (0.11.2.cvs-1) unstable; urgency=low
64 |
65 | * Updated version of Debian packaging, for the CVS version. Also added
66 | a Debian revision number to the version number: even though the debian/
67 | directory is part of upstream sources, there may be several Debian
68 | versions due to packaging etc per upstream release.
69 |
70 | -- Lars Wirzenius Tue, 3 Oct 2000 13:20:24 +0300
71 |
72 | kannel (0.7.9999) unstable; urgency=low
73 |
74 | * Initial version of Debian package. This is not an upstream release
75 | version. It is a CVS snapshot.
76 |
77 | -- Lars Wirzenius Wed, 29 Mar 2000 22:17:43 +0300
78 |
79 |
80 |
--------------------------------------------------------------------------------
/debian/compat:
--------------------------------------------------------------------------------
1 | 4
2 |
--------------------------------------------------------------------------------
/debian/control:
--------------------------------------------------------------------------------
1 | Source: kannel-cvs
2 | Section: net
3 | Priority: optional
4 | Maintainer: Bruno Rodrigues
5 | Build-Depends: debhelper (>> 4.0.0), libxml2-dev, libssl-dev, openssl, libmysqlclient10-dev, libpam0g-dev
6 | Build-Depends-Indep: debhelper (>> 4.0.0), docbook-dsssl, jadetex, transfig, imagemagick, gs
7 | Standards-Version: 3.5.9
8 |
9 | Package: kannel-cvs
10 | Architecture: any
11 | Section: net
12 | Priority: optional
13 | Depends: ${shlibs:Depends}
14 | Conflicts: kannel, kannel-devel
15 | Replaces: kannel, kannel-devel
16 | Description: WAP and SMS gateway (cvs)
17 | Kannel is a gateway for connecting WAP (Wireless Application Protocol)
18 | phones to the Internet. It also works as an SMS gateway, for providing
19 | SMS based services for GSM phones.
20 | .
21 | Compiled with ssl, mysql and native malloc.
22 | .
23 | Development and/or CVS versions are stable enough and encouraged to use
24 | to enable constant testing. CVS bugs are usually fixed in one or to days
25 | and a lot of developers use stable CVS versions in production.
26 |
27 | Package: kannel-cvs-extras
28 | Architecture: any
29 | Section: net
30 | Priority: optional
31 | Suggests: kannel-cvs, python
32 | Depends: ${shlibs:Depends}
33 | Description: WAP and SMS gateway extras (cvs)
34 | Kannel is a gateway for connecting WAP (Wireless Application Protocol)
35 | phones to the Internet. It also works as an SMS gateway, for providing
36 | SMS based services for GSM phones.
37 | .
38 | Test utilities and contrib data.
39 | .
40 | Development and/or CVS versions are stable enough and encouraged to use
41 | to enable constant testing. CVS bugs are usually fixed in one or to days
42 | and a lot of developers use stable CVS versions in production.
43 |
44 | Package: kannel-cvs-docs
45 | Architecture: all
46 | Section: net
47 | Suggests: kannel-cvs
48 | Priority: optional
49 | Description: WAP and SMS gateway documentation (cvs)
50 | Kannel is a gateway for connecting WAP (Wireless Application Protocol)
51 | phones to the Internet. It also works as an SMS gateway, for providing
52 | SMS based services for GSM phones.
53 | .
54 | Documentation in html, rtf and pdf format.
55 | .
56 | Development and/or CVS versions are stable enough and encouraged to use
57 | to enable constant testing. CVS bugs are usually fixed in one or to days
58 | and a lot of developers use stable CVS versions in production.
59 |
--------------------------------------------------------------------------------
/debian/control.devel:
--------------------------------------------------------------------------------
1 | Source: kannel-devel
2 | Section: net
3 | Priority: optional
4 | Maintainer: Bruno Rodrigues
5 | Build-Depends: debhelper (>> 4.0.0), libxml2-dev, libssl-dev, openssl, libmysqlclient10-dev, libpam0g-dev
6 | Build-Depends-Indep: debhelper (>> 4.0.0), docbook-dsssl, jadetex, transfig, imagemagick, gs
7 | Standards-Version: 3.5.9
8 |
9 | Package: kannel-devel
10 | Architecture: any
11 | Section: net
12 | Priority: optional
13 | Depends: ${shlibs:Depends}
14 | Conflicts: kannel, kannel-cvs
15 | Replaces: kannel, kannel-cvs
16 | Description: WAP and SMS gateway (development)
17 | Kannel is a gateway for connecting WAP (Wireless Application Protocol)
18 | phones to the Internet. It also works as an SMS gateway, for providing
19 | SMS based services for GSM phones.
20 | .
21 | Compiled with ssl, mysql and native malloc.
22 | .
23 | Development and/or CVS versions are stable enough and encouraged to use
24 | to enable constant testing. CVS bugs are usually fixed in one or to days
25 | and a lot of developers use stable CVS versions in production.
26 |
27 | Package: kannel-devel-extras
28 | Architecture: any
29 | Section: net
30 | Priority: optional
31 | Suggests: kannel-devel, python
32 | Depends: ${shlibs:Depends}
33 | Description: WAP and SMS gateway extras (development)
34 | Kannel is a gateway for connecting WAP (Wireless Application Protocol)
35 | phones to the Internet. It also works as an SMS gateway, for providing
36 | SMS based services for GSM phones.
37 | .
38 | Test utilities and contrib data.
39 | .
40 | Development and/or CVS versions are stable enough and encouraged to use
41 | to enable constant testing. CVS bugs are usually fixed in one or to days
42 | and a lot of developers use stable CVS versions in production.
43 |
44 | Package: kannel-devel-docs
45 | Architecture: all
46 | Section: net
47 | Suggests: kannel-devel
48 | Priority: optional
49 | Description: WAP and SMS gateway documentation
50 | Kannel is a gateway for connecting WAP (Wireless Application Protocol)
51 | phones to the Internet. It also works as an SMS gateway, for providing
52 | SMS based services for GSM phones.
53 | .
54 | Documentation in html, rtf and pdf format.
55 | .
56 | Development and/or CVS versions are stable enough and encouraged to use
57 | to enable constant testing. CVS bugs are usually fixed in one or to days
58 | and a lot of developers use stable CVS versions in production.
59 |
--------------------------------------------------------------------------------
/debian/control.stable:
--------------------------------------------------------------------------------
1 | Source: kannel
2 | Section: net
3 | Priority: optional
4 | Maintainer: Bruno Rodrigues
5 | Build-Depends: debhelper (>> 4.0.0), libxml2-dev, libssl-dev, openssl, libmysqlclient10-dev, libpam0g-dev
6 | Build-Depends-Indep: debhelper (>> 4.0.0), docbook-dsssl, jadetex, transfig, imagemagick, gs
7 | Standards-Version: 3.6.1
8 |
9 | Package: kannel
10 | Architecture: any
11 | Section: net
12 | Priority: optional
13 | Depends: ${shlibs:Depends}
14 | Suggests: kannel-extras, kannel-docs
15 | Description: WAP and SMS gateway
16 | Kannel is a gateway for connecting WAP (Wireless Application Protocol)
17 | phones to the Internet. It also works as an SMS gateway, for providing
18 | SMS based services for GSM phones.
19 | .
20 | Compiled with ssl, mysql and native malloc.
21 |
22 | Package: kannel-extras
23 | Architecture: any
24 | Section: net
25 | Priority: optional
26 | Suggests: kannel, python
27 | Depends: ${shlibs:Depends}
28 | Description: WAP and SMS gateway extras
29 | Kannel is a gateway for connecting WAP (Wireless Application Protocol)
30 | phones to the Internet. It also works as an SMS gateway, for providing
31 | SMS based services for GSM phones.
32 | .
33 | Test utilities and contrib data.
34 |
35 | Package: kannel-docs
36 | Architecture: all
37 | Section: net
38 | Suggests: kannel
39 | Priority: optional
40 | Description: WAP and SMS gateway documentation
41 | Kannel is a gateway for connecting WAP (Wireless Application Protocol)
42 | phones to the Internet. It also works as an SMS gateway, for providing
43 | SMS based services for GSM phones.
44 | .
45 | Documentation in HTML, RTF and PDF format.
46 |
--------------------------------------------------------------------------------
/debian/copyright:
--------------------------------------------------------------------------------
1 | This is Kannel, originally packaged for Debian by Lars Wirzenius
2 | and now maintained by Bruno Rodrigues
3 |
4 |
5 | Original author is the Kannel project, see http://www.kannel.org,
6 | run by Wapit Ltd, see http://www.wapit.com.
7 |
8 | Copyright (c) 1998 WAPIT OY LTD.
9 | All rights reserved.
10 |
11 | Redistribution and use in source and binary forms, with or without
12 | modification, are permitted provided that the following conditions
13 | are met:
14 |
15 | 1. Redistributions of source code must retain the above copyright notice,
16 | this list of conditions and the following disclaimer.
17 |
18 | 2. Redistributions in binary form must reproduce the above copyright
19 | notice, this list of conditions and the following disclaimer in the
20 | documentation and/or other materials provided with the distribution.
21 |
22 | 3. All advertising materials mentioning features or use of this software
23 | must display the following acknowledgement: This product includes software
24 | developed by WAPIT OY LTD.
25 |
26 | 4. The name of the author may not be used to endorse or promote products
27 | derived from this software without specific prior written permission.
28 |
29 |
30 | THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
31 | IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
32 | OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
33 | IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
34 | INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
35 | BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
36 | USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
37 | ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
38 | (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
39 | OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
40 |
--------------------------------------------------------------------------------
/debian/kannel-cvs-docs.docs:
--------------------------------------------------------------------------------
1 | debian/tmp/usr/share/doc/kannel/alligata
2 | debian/tmp/usr/share/doc/kannel/userguide
3 | debian/tmp/usr/share/doc/kannel/wtls
4 |
--------------------------------------------------------------------------------
/debian/kannel-cvs-extras.install:
--------------------------------------------------------------------------------
1 | debian/tmp/usr/lib/kannel/* usr/lib/kannel-cvs
2 | debian/tmp/usr/share/doc/kannel/contrib usr/share/kannel-cvs
3 |
--------------------------------------------------------------------------------
/debian/kannel-cvs.default:
--------------------------------------------------------------------------------
1 | START_WAPBOX=1
2 | #START_SMSBOX=1
3 |
--------------------------------------------------------------------------------
/debian/kannel-cvs.dirs:
--------------------------------------------------------------------------------
1 | var/log/kannel
2 | var/run/kannel
3 |
--------------------------------------------------------------------------------
/debian/kannel-cvs.docs:
--------------------------------------------------------------------------------
1 | AUTHORS
2 | README
3 | NEWS
4 | VERSION
5 |
--------------------------------------------------------------------------------
/debian/kannel-cvs.examples:
--------------------------------------------------------------------------------
1 | doc/examples/*
2 |
--------------------------------------------------------------------------------
/debian/kannel-cvs.install:
--------------------------------------------------------------------------------
1 | debian/tmp/usr/bin usr
2 | debian/tmp/usr/sbin usr
3 | debian/tmp/usr/share/man usr/share
4 | debian/kannel.conf /etc/kannel/
5 |
--------------------------------------------------------------------------------
/debian/kannel-cvs.links:
--------------------------------------------------------------------------------
1 | /usr/share/man/man8/kannel.8.gz /usr/share/man/man8/bearerbox.8.gz
2 | /usr/share/man/man8/kannel.8.gz /usr/share/man/man8/wapbox.8.gz
3 | /usr/share/man/man8/kannel.8.gz /usr/share/man/man8/smsbox.8.gz
4 |
--------------------------------------------------------------------------------
/debian/kannel-cvs.logrotate:
--------------------------------------------------------------------------------
1 | /var/log/kannel/*.log {
2 | daily
3 | missingok
4 | rotate 365
5 | compress
6 | delaycompress
7 | notifempty
8 | create 640 kannel adm
9 | sharedscripts
10 | postrotate
11 | killall -HUP bearerbox smsbox wapbox > /dev/null 2> /dev/null || true
12 | endscript
13 | }
14 |
--------------------------------------------------------------------------------
/debian/kannel-cvs.postinst:
--------------------------------------------------------------------------------
1 | #! /bin/sh
2 | # postinst script for kannel
3 | #
4 | # see: dh_installdeb(1)
5 |
6 | set -e
7 |
8 | # summary of how this script can be called:
9 | # * `configure'
10 | # * `abort-upgrade'
11 | # * `abort-remove' `in-favour'
12 | #
13 | # * `abort-deconfigure' `in-favour'
14 | # `removing'
15 | #
16 | # for details, see http://www.debian.org/doc/debian-policy/ or
17 | # the debian-policy package
18 | #
19 | # quoting from the policy:
20 | # Any necessary prompting should almost always be confined to the
21 | # post-installation script, and should be protected with a conditional
22 | # so that unnecessary prompting doesn't happen if a package's
23 | # installation fails and the `postinst' is called with `abort-upgrade',
24 | # `abort-remove' or `abort-deconfigure'.
25 |
26 | case "$1" in
27 | configure)
28 |
29 | # Create a "kannel" user. This has modeled after the code in the postfix.deb
30 | # postinst. We first try to set the ownership of /var/log/kannel. If that
31 | # fails, we create the user and re-try. If that still fails, we abort.
32 | if chown -c kannel.root /var/log/kannel /var/run/kannel 2>/dev/null
33 | then
34 | :
35 | #elif adduser --system --group kannel
36 | elif adduser --system --home /usr/lib/kannel --no-create-home --gecos "Kannel" kannel
37 | then
38 | sleep 1 # wait for user creation
39 | chown -c kannel.root /var/log/kannel
40 | chown -c kannel.root /var/run/kannel
41 | fi
42 |
43 | ;;
44 |
45 | abort-upgrade|abort-remove|abort-deconfigure)
46 |
47 | ;;
48 |
49 | *)
50 | echo "postinst called with unknown argument \`$1'" >&2
51 | exit 1
52 | ;;
53 | esac
54 |
55 | # dh_installdeb will replace this with shell code automatically
56 | # generated by other debhelper scripts.
57 |
58 | #DEBHELPER#
59 |
60 | exit 0
61 |
62 |
63 |
--------------------------------------------------------------------------------
/debian/kannel-cvs.postrm:
--------------------------------------------------------------------------------
1 | #! /bin/sh
2 | # postrm script for kannel
3 | #
4 | # see: dh_installdeb(1)
5 |
6 | set -e
7 |
8 | # summary of how this script can be called:
9 | # * `remove'
10 | # * `purge'
11 | # * `upgrade'
12 | # * `failed-upgrade'
13 | # * `abort-install'
14 | # * `abort-install'
15 | # * `abort-upgrade'
16 | # * `disappear' overwrit>r>
17 | # for details, see http://www.debian.org/doc/debian-policy/ or
18 | # the debian-policy package
19 |
20 |
21 | case "$1" in
22 | remove|upgrade|failed-upgrade|abort-upgrade|disappear|abort-install)
23 | ;;
24 |
25 | purge)
26 | test -d /var/log/kannel && rm -fr /var/log/kannel
27 | test -d /var/run/kannel && rm -fr /var/run/kannel
28 | test -d /etc/kannel && rmdir /etc/kannel
29 | deluser kannel
30 | ;;
31 | *)
32 | echo "postrm called with unknown argument \`$1'" >&2
33 | exit 1
34 |
35 | esac
36 |
37 | # dh_installdeb will replace this with shell code automatically
38 | # generated by other debhelper scripts.
39 |
40 | #DEBHELPER#
41 |
42 | exit 0
43 |
--------------------------------------------------------------------------------
/debian/kannel-devel-docs.docs:
--------------------------------------------------------------------------------
1 | debian/tmp/usr/share/doc/kannel/alligata
2 | debian/tmp/usr/share/doc/kannel/userguide
3 | debian/tmp/usr/share/doc/kannel/wtls
4 |
--------------------------------------------------------------------------------
/debian/kannel-devel-extras.install:
--------------------------------------------------------------------------------
1 | debian/tmp/usr/lib/kannel/* usr/lib/kannel-devel
2 | debian/tmp/usr/share/doc/kannel/contrib usr/share/kannel-devel
3 |
--------------------------------------------------------------------------------
/debian/kannel-devel.default:
--------------------------------------------------------------------------------
1 | START_WAPBOX=1
2 | #START_SMSBOX=1
3 |
--------------------------------------------------------------------------------
/debian/kannel-devel.dirs:
--------------------------------------------------------------------------------
1 | var/log/kannel
2 | var/run/kannel
3 |
--------------------------------------------------------------------------------
/debian/kannel-devel.docs:
--------------------------------------------------------------------------------
1 | AUTHORS
2 | README
3 | NEWS
4 | TODO
5 | VERSION
6 |
--------------------------------------------------------------------------------
/debian/kannel-devel.examples:
--------------------------------------------------------------------------------
1 | doc/examples/*
2 |
--------------------------------------------------------------------------------
/debian/kannel-devel.install:
--------------------------------------------------------------------------------
1 | debian/tmp/usr/bin usr
2 | debian/tmp/usr/sbin usr
3 | debian/tmp/usr/share/man usr/share
4 | debian/kannel.conf /etc/kannel/
5 |
--------------------------------------------------------------------------------
/debian/kannel-devel.links:
--------------------------------------------------------------------------------
1 | /usr/share/man/man8/kannel.8.gz /usr/share/man/man8/bearerbox.8.gz
2 | /usr/share/man/man8/kannel.8.gz /usr/share/man/man8/wapbox.8.gz
3 | /usr/share/man/man8/kannel.8.gz /usr/share/man/man8/smsbox.8.gz
4 |
--------------------------------------------------------------------------------
/debian/kannel-devel.logrotate:
--------------------------------------------------------------------------------
1 | /var/log/kannel/*.log {
2 | daily
3 | missingok
4 | rotate 365
5 | compress
6 | delaycompress
7 | notifempty
8 | create 640 kannel adm
9 | sharedscripts
10 | postrotate
11 | killall -HUP bearerbox smsbox wapbox > /dev/null 2> /dev/null || true
12 | endscript
13 | }
14 |
--------------------------------------------------------------------------------
/debian/kannel-devel.postinst:
--------------------------------------------------------------------------------
1 | #! /bin/sh
2 | # postinst script for kannel
3 | #
4 | # see: dh_installdeb(1)
5 |
6 | set -e
7 |
8 | # summary of how this script can be called:
9 | # * `configure'
10 | # * `abort-upgrade'
11 | # * `abort-remove' `in-favour'
12 | #
13 | # * `abort-deconfigure' `in-favour'
14 | # `removing'
15 | #
16 | # for details, see http://www.debian.org/doc/debian-policy/ or
17 | # the debian-policy package
18 | #
19 | # quoting from the policy:
20 | # Any necessary prompting should almost always be confined to the
21 | # post-installation script, and should be protected with a conditional
22 | # so that unnecessary prompting doesn't happen if a package's
23 | # installation fails and the `postinst' is called with `abort-upgrade',
24 | # `abort-remove' or `abort-deconfigure'.
25 |
26 | case "$1" in
27 | configure)
28 |
29 | # Create a "kannel" user. This has modeled after the code in the postfix.deb
30 | # postinst. We first try to set the ownership of /var/log/kannel. If that
31 | # fails, we create the user and re-try. If that still fails, we abort.
32 | if chown -c kannel.root /var/log/kannel /var/run/kannel 2>/dev/null
33 | then
34 | :
35 | #elif adduser --system --group kannel
36 | elif adduser --system --home /usr/lib/kannel --no-create-home --gecos "Kannel" kannel
37 | then
38 | sleep 1 # wait for user creation
39 | chown -c kannel.root /var/log/kannel
40 | chown -c kannel.root /var/run/kannel
41 | fi
42 |
43 | ;;
44 |
45 | abort-upgrade|abort-remove|abort-deconfigure)
46 |
47 | ;;
48 |
49 | *)
50 | echo "postinst called with unknown argument \`$1'" >&2
51 | exit 1
52 | ;;
53 | esac
54 |
55 | # dh_installdeb will replace this with shell code automatically
56 | # generated by other debhelper scripts.
57 |
58 | #DEBHELPER#
59 |
60 | exit 0
61 |
62 |
63 |
--------------------------------------------------------------------------------
/debian/kannel-devel.postrm:
--------------------------------------------------------------------------------
1 | #! /bin/sh
2 | # postrm script for kannel
3 | #
4 | # see: dh_installdeb(1)
5 |
6 | set -e
7 |
8 | # summary of how this script can be called:
9 | # * `remove'
10 | # * `purge'
11 | # * `upgrade'
12 | # * `failed-upgrade'
13 | # * `abort-install'
14 | # * `abort-install'
15 | # * `abort-upgrade'
16 | # * `disappear' overwrit>r>
17 | # for details, see http://www.debian.org/doc/debian-policy/ or
18 | # the debian-policy package
19 |
20 |
21 | case "$1" in
22 | remove|upgrade|failed-upgrade|abort-upgrade|disappear|abort-install)
23 | ;;
24 |
25 | purge)
26 | test -d /var/log/kannel && rm -fr /var/log/kannel
27 | test -d /var/run/kannel && rm -fr /var/run/kannel
28 | test -d /etc/kannel && rmdir /etc/kannel
29 | deluser kannel
30 | ;;
31 | *)
32 | echo "postrm called with unknown argument \`$1'" >&2
33 | exit 1
34 |
35 | esac
36 |
37 | # dh_installdeb will replace this with shell code automatically
38 | # generated by other debhelper scripts.
39 |
40 | #DEBHELPER#
41 |
42 | exit 0
43 |
--------------------------------------------------------------------------------
/debian/kannel-docs.docs:
--------------------------------------------------------------------------------
1 | debian/tmp/usr/share/doc/kannel/alligata
2 | debian/tmp/usr/share/doc/kannel/userguide
3 | debian/tmp/usr/share/doc/kannel/wtls
4 |
--------------------------------------------------------------------------------
/debian/kannel-extras.install:
--------------------------------------------------------------------------------
1 | debian/tmp/usr/lib/kannel/* usr/lib/kannel
2 | debian/tmp/usr/share/doc/kannel/contrib usr/share/kannel
3 |
--------------------------------------------------------------------------------
/debian/kannel.conf:
--------------------------------------------------------------------------------
1 | #
2 | # Sample configuration file for Kannel bearerbox on Debian.
3 | # See the documentation for explanations of fields.
4 | #
5 |
6 | # HTTP administration is disabled by default. Make sure you set the
7 | # password if you enable it.
8 |
9 | group = core
10 | admin-port = 13000
11 | admin-password = bar
12 | admin-deny-ip = "*.*.*.*"
13 | admin-allow-ip = ""
14 | wapbox-port = 13002
15 | wdp-interface-name = "*"
16 | log-file = "/var/log/kannel/bearerbox.log"
17 | box-deny-ip = "*.*.*.*"
18 | box-allow-ip = "127.0.0.1"
19 |
20 | group = wapbox
21 | bearerbox-host = localhost
22 | log-file = "/var/log/kannel/wapbox.log"
23 |
--------------------------------------------------------------------------------
/debian/kannel.default:
--------------------------------------------------------------------------------
1 | START_WAPBOX=1
2 | #START_SMSBOX=1
3 |
--------------------------------------------------------------------------------
/debian/kannel.dirs:
--------------------------------------------------------------------------------
1 | var/log/kannel
2 | var/run/kannel
3 |
--------------------------------------------------------------------------------
/debian/kannel.docs:
--------------------------------------------------------------------------------
1 | AUTHORS
2 | README
3 | NEWS
4 | TODO
5 | VERSION
6 |
--------------------------------------------------------------------------------
/debian/kannel.examples:
--------------------------------------------------------------------------------
1 | doc/examples/*
2 |
--------------------------------------------------------------------------------
/debian/kannel.install:
--------------------------------------------------------------------------------
1 | debian/tmp/usr/bin usr
2 | debian/tmp/usr/sbin usr
3 | debian/tmp/usr/share/man usr/share
4 | debian/kannel.conf /etc/kannel/
5 |
--------------------------------------------------------------------------------
/debian/kannel.links:
--------------------------------------------------------------------------------
1 | /usr/share/man/man8/kannel.8.gz /usr/share/man/man8/bearerbox.8.gz
2 | /usr/share/man/man8/kannel.8.gz /usr/share/man/man8/wapbox.8.gz
3 | /usr/share/man/man8/kannel.8.gz /usr/share/man/man8/smsbox.8.gz
4 |
--------------------------------------------------------------------------------
/debian/kannel.logrotate:
--------------------------------------------------------------------------------
1 | /var/log/kannel/*.log {
2 | daily
3 | missingok
4 | rotate 365
5 | compress
6 | delaycompress
7 | notifempty
8 | create 640 kannel adm
9 | sharedscripts
10 | postrotate
11 | killall -HUP bearerbox smsbox wapbox > /dev/null 2> /dev/null || true
12 | endscript
13 | }
14 |
--------------------------------------------------------------------------------
/debian/kannel.postinst:
--------------------------------------------------------------------------------
1 | #! /bin/sh
2 | # postinst script for kannel
3 | #
4 | # see: dh_installdeb(1)
5 |
6 | set -e
7 |
8 | # summary of how this script can be called:
9 | # * `configure'
10 | # * `abort-upgrade'
11 | # * `abort-remove' `in-favour'
12 | #
13 | # * `abort-deconfigure' `in-favour'
14 | # `removing'
15 | #
16 | # for details, see http://www.debian.org/doc/debian-policy/ or
17 | # the debian-policy package
18 | #
19 | # quoting from the policy:
20 | # Any necessary prompting should almost always be confined to the
21 | # post-installation script, and should be protected with a conditional
22 | # so that unnecessary prompting doesn't happen if a package's
23 | # installation fails and the `postinst' is called with `abort-upgrade',
24 | # `abort-remove' or `abort-deconfigure'.
25 |
26 | case "$1" in
27 | configure)
28 |
29 | # Create a "kannel" user. This has modeled after the code in the postfix.deb
30 | # postinst. We first try to set the ownership of /var/log/kannel. If that
31 | # fails, we create the user and re-try. If that still fails, we abort.
32 | if chown -c kannel.root /var/log/kannel /var/run/kannel 2>/dev/null
33 | then
34 | :
35 | #elif adduser --system --group kannel
36 | elif adduser --system --home /usr/lib/kannel --no-create-home --gecos "Kannel" kannel
37 | then
38 | sleep 1 # wait for user creation
39 | chown -c kannel.root /var/log/kannel
40 | chown -c kannel.root /var/run/kannel
41 | fi
42 |
43 | ;;
44 |
45 | abort-upgrade|abort-remove|abort-deconfigure)
46 |
47 | ;;
48 |
49 | *)
50 | echo "postinst called with unknown argument \`$1'" >&2
51 | exit 1
52 | ;;
53 | esac
54 |
55 | # dh_installdeb will replace this with shell code automatically
56 | # generated by other debhelper scripts.
57 |
58 | #DEBHELPER#
59 |
60 | exit 0
61 |
62 |
63 |
--------------------------------------------------------------------------------
/debian/kannel.postrm:
--------------------------------------------------------------------------------
1 | #! /bin/sh
2 | # postrm script for kannel
3 | #
4 | # see: dh_installdeb(1)
5 |
6 | set -e
7 |
8 | # summary of how this script can be called:
9 | # * `remove'
10 | # * `purge'
11 | # * `upgrade'
12 | # * `failed-upgrade'
13 | # * `abort-install'
14 | # * `abort-install'
15 | # * `abort-upgrade'
16 | # * `disappear' overwrit>r>
17 | # for details, see http://www.debian.org/doc/debian-policy/ or
18 | # the debian-policy package
19 |
20 |
21 | case "$1" in
22 | remove|upgrade|failed-upgrade|abort-upgrade|disappear|abort-install)
23 | ;;
24 |
25 | purge)
26 | test -d /var/log/kannel && rm -fr /var/log/kannel
27 | test -d /var/run/kannel && rm -fr /var/run/kannel
28 | test -d /etc/kannel && rmdir /etc/kannel
29 | deluser kannel
30 | ;;
31 | *)
32 | echo "postrm called with unknown argument \`$1'" >&2
33 | exit 1
34 |
35 | esac
36 |
37 | # dh_installdeb will replace this with shell code automatically
38 | # generated by other debhelper scripts.
39 |
40 | #DEBHELPER#
41 |
42 | exit 0
43 |
--------------------------------------------------------------------------------
/doc/ChangeLog-0.13.1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pruiz/kannel/cdbcfc129ab1f0cb301df741131bccf20d39c17f/doc/ChangeLog-0.13.1
--------------------------------------------------------------------------------
/doc/ChangeLog-1.1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pruiz/kannel/cdbcfc129ab1f0cb301df741131bccf20d39c17f/doc/ChangeLog-1.1
--------------------------------------------------------------------------------
/doc/ChangeLog-1.1.1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pruiz/kannel/cdbcfc129ab1f0cb301df741131bccf20d39c17f/doc/ChangeLog-1.1.1
--------------------------------------------------------------------------------
/doc/ChangeLog-1.1.2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pruiz/kannel/cdbcfc129ab1f0cb301df741131bccf20d39c17f/doc/ChangeLog-1.1.2
--------------------------------------------------------------------------------
/doc/ChangeLog-1.1.4:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pruiz/kannel/cdbcfc129ab1f0cb301df741131bccf20d39c17f/doc/ChangeLog-1.1.4
--------------------------------------------------------------------------------
/doc/ChangeLog-1.1.6:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pruiz/kannel/cdbcfc129ab1f0cb301df741131bccf20d39c17f/doc/ChangeLog-1.1.6
--------------------------------------------------------------------------------
/doc/ChangeLog-1.2.0:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pruiz/kannel/cdbcfc129ab1f0cb301df741131bccf20d39c17f/doc/ChangeLog-1.2.0
--------------------------------------------------------------------------------
/doc/ChangeLog-1.2.1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pruiz/kannel/cdbcfc129ab1f0cb301df741131bccf20d39c17f/doc/ChangeLog-1.2.1
--------------------------------------------------------------------------------
/doc/ChangeLog-1.3.0:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pruiz/kannel/cdbcfc129ab1f0cb301df741131bccf20d39c17f/doc/ChangeLog-1.3.0
--------------------------------------------------------------------------------
/doc/ChangeLog-1.3.1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pruiz/kannel/cdbcfc129ab1f0cb301df741131bccf20d39c17f/doc/ChangeLog-1.3.1
--------------------------------------------------------------------------------
/doc/ChangeLog-1.3.2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pruiz/kannel/cdbcfc129ab1f0cb301df741131bccf20d39c17f/doc/ChangeLog-1.3.2
--------------------------------------------------------------------------------
/doc/ChangeLog-1.4.1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pruiz/kannel/cdbcfc129ab1f0cb301df741131bccf20d39c17f/doc/ChangeLog-1.4.1
--------------------------------------------------------------------------------
/doc/alligata/11-1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pruiz/kannel/cdbcfc129ab1f0cb301df741131bccf20d39c17f/doc/alligata/11-1.png
--------------------------------------------------------------------------------
/doc/alligata/11-3.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pruiz/kannel/cdbcfc129ab1f0cb301df741131bccf20d39c17f/doc/alligata/11-3.png
--------------------------------------------------------------------------------
/doc/alligata/11-4.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pruiz/kannel/cdbcfc129ab1f0cb301df741131bccf20d39c17f/doc/alligata/11-4.png
--------------------------------------------------------------------------------
/doc/alligata/11-5.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pruiz/kannel/cdbcfc129ab1f0cb301df741131bccf20d39c17f/doc/alligata/11-5.png
--------------------------------------------------------------------------------
/doc/alligata/12-10.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pruiz/kannel/cdbcfc129ab1f0cb301df741131bccf20d39c17f/doc/alligata/12-10.png
--------------------------------------------------------------------------------
/doc/alligata/12-11.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pruiz/kannel/cdbcfc129ab1f0cb301df741131bccf20d39c17f/doc/alligata/12-11.png
--------------------------------------------------------------------------------
/doc/alligata/12-12.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pruiz/kannel/cdbcfc129ab1f0cb301df741131bccf20d39c17f/doc/alligata/12-12.png
--------------------------------------------------------------------------------
/doc/alligata/12-13.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pruiz/kannel/cdbcfc129ab1f0cb301df741131bccf20d39c17f/doc/alligata/12-13.png
--------------------------------------------------------------------------------
/doc/alligata/12-2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pruiz/kannel/cdbcfc129ab1f0cb301df741131bccf20d39c17f/doc/alligata/12-2.png
--------------------------------------------------------------------------------
/doc/alligata/12-3.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pruiz/kannel/cdbcfc129ab1f0cb301df741131bccf20d39c17f/doc/alligata/12-3.png
--------------------------------------------------------------------------------
/doc/alligata/12-4.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pruiz/kannel/cdbcfc129ab1f0cb301df741131bccf20d39c17f/doc/alligata/12-4.png
--------------------------------------------------------------------------------
/doc/alligata/12-5.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pruiz/kannel/cdbcfc129ab1f0cb301df741131bccf20d39c17f/doc/alligata/12-5.png
--------------------------------------------------------------------------------
/doc/alligata/12-6.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pruiz/kannel/cdbcfc129ab1f0cb301df741131bccf20d39c17f/doc/alligata/12-6.png
--------------------------------------------------------------------------------
/doc/alligata/12-7.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pruiz/kannel/cdbcfc129ab1f0cb301df741131bccf20d39c17f/doc/alligata/12-7.png
--------------------------------------------------------------------------------
/doc/alligata/12-8.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pruiz/kannel/cdbcfc129ab1f0cb301df741131bccf20d39c17f/doc/alligata/12-8.png
--------------------------------------------------------------------------------
/doc/alligata/12-9.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pruiz/kannel/cdbcfc129ab1f0cb301df741131bccf20d39c17f/doc/alligata/12-9.png
--------------------------------------------------------------------------------
/doc/alligata/13-5.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pruiz/kannel/cdbcfc129ab1f0cb301df741131bccf20d39c17f/doc/alligata/13-5.png
--------------------------------------------------------------------------------
/doc/alligata/alligata.xml:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pruiz/kannel/cdbcfc129ab1f0cb301df741131bccf20d39c17f/doc/alligata/alligata.xml
--------------------------------------------------------------------------------
/doc/alligata/done.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pruiz/kannel/cdbcfc129ab1f0cb301df741131bccf20d39c17f/doc/alligata/done.png
--------------------------------------------------------------------------------
/doc/alligata/licences.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pruiz/kannel/cdbcfc129ab1f0cb301df741131bccf20d39c17f/doc/alligata/licences.png
--------------------------------------------------------------------------------
/doc/alligata/maininst.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pruiz/kannel/cdbcfc129ab1f0cb301df741131bccf20d39c17f/doc/alligata/maininst.png
--------------------------------------------------------------------------------
/doc/alligata/nearlydone.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pruiz/kannel/cdbcfc129ab1f0cb301df741131bccf20d39c17f/doc/alligata/nearlydone.png
--------------------------------------------------------------------------------
/doc/alligata/nopro.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pruiz/kannel/cdbcfc129ab1f0cb301df741131bccf20d39c17f/doc/alligata/nopro.png
--------------------------------------------------------------------------------
/doc/alligata/progress.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pruiz/kannel/cdbcfc129ab1f0cb301df741131bccf20d39c17f/doc/alligata/progress.png
--------------------------------------------------------------------------------
/doc/alligata/wapdiagsmall.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pruiz/kannel/cdbcfc129ab1f0cb301df741131bccf20d39c17f/doc/alligata/wapdiagsmall.png
--------------------------------------------------------------------------------
/doc/arch/conf-push-session.fig:
--------------------------------------------------------------------------------
1 | #FIG 3.2
2 | Portrait
3 | Center
4 | Metric
5 | A4
6 | 100.00
7 | Single
8 | -2
9 | 1200 2
10 | 2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5
11 | 270 585 855 585 855 2025 270 2025 270 585
12 | 2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5
13 | 720 225 810 225 810 585 720 585 720 225
14 | 2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5
15 | 360 765 765 765 765 1170 360 1170 360 765
16 | 2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5
17 | 4545 45 5625 45 5625 2385 4545 2385 4545 45
18 | 2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5
19 | 4680 1980 5535 1980 5535 2160 4680 2160 4680 1980
20 | 2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5
21 | 4680 1710 5535 1710 5535 1890 4680 1890 4680 1710
22 | 2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5
23 | 4680 1395 5535 1395 5535 1575 4680 1575 4680 1395
24 | 2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5
25 | 4680 1080 5535 1080 5535 1260 4680 1260 4680 1080
26 | 2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5
27 | 4680 720 5535 720 5535 900 4680 900 4680 720
28 | 2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5
29 | 2250 315 2925 315 2925 2070 2250 2070 2250 315
30 | 2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5
31 | 2340 990 2835 990 2835 1125 2340 1125 2340 990
32 | 2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5
33 | 2340 1395 2610 1395 2610 1485 2340 1485 2340 1395
34 | 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 1 0 2
35 | 0 0 1.00 60.00 120.00
36 | 4410 585 3015 585
37 | 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 1 0 2
38 | 0 0 1.00 60.00 120.00
39 | 2115 630 900 630
40 | 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 1 0 2
41 | 0 0 1.00 60.00 120.00
42 | 945 1125 2160 1125
43 | 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 1 0 2
44 | 0 0 1.00 60.00 120.00
45 | 2160 1620 945 1620
46 | 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 1 0 2
47 | 0 0 1.00 60.00 120.00
48 | 3060 1530 4410 1530
49 | 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 1 0 2
50 | 0 0 1.00 60.00 120.00
51 | 990 1890 2160 1890
52 | 4 0 0 50 0 0 10 0.0000 4 135 765 3240 450 push request\001
53 | 4 0 0 50 0 0 10 0.0000 4 135 915 1080 495 session request\001
54 | 4 0 0 50 0 0 10 0.0000 4 105 1335 945 945 session establishment\001
55 | 4 0 0 50 0 0 10 0.0000 4 135 825 990 1485 push delivery\001
56 | 4 0 0 50 0 0 10 0.0000 4 105 810 990 1800 confirmation\001
57 | 4 0 0 50 0 0 10 0.0000 4 105 1140 3060 1350 result notification\001
58 |
--------------------------------------------------------------------------------
/doc/arch/external-interfaces.fig:
--------------------------------------------------------------------------------
1 | #FIG 3.2
2 | Landscape
3 | Center
4 | Metric
5 | A4
6 | 100.00
7 | Single
8 | -2
9 | 1200 2
10 | 6 360 810 1305 1620
11 | 2 4 0 1 0 7 50 0 -1 0.000 0 0 7 0 0 5
12 | 1305 1620 1305 810 360 810 360 1620 1305 1620
13 | 4 0 0 50 0 0 12 0.0000 4 135 375 585 1170 SMS\001
14 | 4 0 0 50 0 0 12 0.0000 4 105 480 585 1395 center\001
15 | -6
16 | 6 405 1755 1305 2520
17 | 2 4 0 1 0 7 50 0 -1 0.000 0 0 7 0 0 5
18 | 1305 2520 1305 1755 405 1755 405 2520 1305 2520
19 | 4 0 0 50 0 0 12 0.0000 4 135 420 585 2070 WAP\001
20 | 4 0 0 50 0 0 12 0.0000 4 180 450 585 2295 phone\001
21 | -6
22 | 6 5130 1035 6165 2115
23 | 2 4 0 1 0 7 50 0 -1 0.000 0 0 7 0 0 5
24 | 6165 2115 6165 1035 5130 1035 5130 2115 6165 2115
25 | 4 0 0 50 0 0 12 0.0000 4 135 450 5355 1440 HTTP\001
26 | 4 0 0 50 0 0 12 0.0000 4 90 480 5355 1665 server\001
27 | -6
28 | 2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5
29 | 2475 1260 3870 1260 3870 1935 2475 1935 2475 1260
30 | 3 2 0 1 0 7 50 0 -1 0.000 0 1 1 3
31 | 1 1 1.00 60.00 120.00
32 | 1 1 1.00 60.00 120.00
33 | 1395 1125 2115 1080 2430 1395
34 | 0.000 -1.000 0.000
35 | 3 2 0 1 0 7 50 0 -1 0.000 0 1 1 3
36 | 1 1 1.00 60.00 120.00
37 | 1 1 1.00 60.00 120.00
38 | 1350 2115 2160 2115 2430 1665
39 | 0.000 -1.000 0.000
40 | 3 2 0 1 0 7 50 0 -1 0.000 0 1 1 3
41 | 1 1 1.00 60.00 120.00
42 | 1 1 1.00 60.00 120.00
43 | 3915 1575 4545 1530 5085 1485
44 | 0.000 -1.000 0.000
45 | 4 0 0 50 0 0 12 0.0000 4 180 1035 2070 990 SMS protocol\001
46 | 4 0 0 50 0 0 12 0.0000 4 135 930 2025 2385 WAP stack\001
47 | 4 0 0 50 0 0 12 0.0000 4 135 540 2745 1620 Kannel\001
48 | 4 0 0 50 0 0 12 0.0000 4 135 450 4320 1395 HTTP\001
49 | 4 0 0 50 0 0 12 0.0000 4 135 345 4275 1755 PAP\001
50 |
--------------------------------------------------------------------------------
/doc/arch/kannel-boxes.fig:
--------------------------------------------------------------------------------
1 | #FIG 3.2
2 | Landscape
3 | Center
4 | Metric
5 | A4
6 | 100.00
7 | Single
8 | -2
9 | 1200 2
10 | 6 45 810 990 1620
11 | 2 4 0 1 0 7 50 0 -1 0.000 0 0 7 0 0 5
12 | 990 1620 990 810 45 810 45 1620 990 1620
13 | 4 0 0 50 0 0 12 0.0000 4 135 375 270 1170 SMS\001
14 | 4 0 0 50 0 0 12 0.0000 4 105 480 270 1395 center\001
15 | -6
16 | 6 90 1755 990 2520
17 | 2 4 0 1 0 7 50 0 -1 0.000 0 0 7 0 0 5
18 | 990 2520 990 1755 90 1755 90 2520 990 2520
19 | 4 0 0 50 0 0 12 0.0000 4 135 420 270 2070 WAP\001
20 | 4 0 0 50 0 0 12 0.0000 4 180 450 270 2295 phone\001
21 | -6
22 | 6 5760 1125 6795 2205
23 | 2 4 0 1 0 7 50 0 -1 0.000 0 0 7 0 0 5
24 | 6795 2205 6795 1125 5760 1125 5760 2205 6795 2205
25 | 4 0 0 50 0 0 12 0.0000 4 135 450 5985 1530 HTTP\001
26 | 4 0 0 50 0 0 12 0.0000 4 90 480 5985 1755 server\001
27 | -6
28 | 6 1665 1260 3060 1935
29 | 2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5
30 | 1665 1260 3060 1260 3060 1935 1665 1935 1665 1260
31 | 4 0 0 50 0 0 12 0.0000 4 135 780 1935 1620 Bearerbox\001
32 | -6
33 | 6 3780 720 4860 1305
34 | 2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5
35 | 3780 720 4860 720 4860 1305 3780 1305 3780 720
36 | 4 0 0 50 0 0 12 0.0000 4 135 600 3915 1035 Smsbox\001
37 | -6
38 | 6 3870 2070 4905 2700
39 | 2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5
40 | 3870 2070 4905 2070 4905 2700 3870 2700 3870 2070
41 | 4 0 0 50 0 0 12 0.0000 4 180 630 4050 2385 Wapbox\001
42 | -6
43 | 2 4 0 1 0 7 50 0 -1 0.000 0 0 7 0 0 5
44 | 5265 3285 5265 180 1395 180 1395 3285 5265 3285
45 | 3 2 0 1 0 7 50 0 -1 0.000 0 1 1 3
46 | 1 1 1.00 60.00 120.00
47 | 1 1 1.00 60.00 120.00
48 | 1080 1125 1575 990 1800 1215
49 | 0.000 -1.000 0.000
50 | 3 2 0 1 0 7 50 0 -1 0.000 0 1 1 3
51 | 1 1 1.00 60.00 120.00
52 | 1 1 1.00 60.00 120.00
53 | 3060 1485 3330 1125 3735 1035
54 | 0.000 -1.000 0.000
55 | 3 2 0 1 0 7 50 0 -1 0.000 0 1 1 3
56 | 1 1 1.00 60.00 120.00
57 | 1 1 1.00 60.00 120.00
58 | 3060 1710 3420 2160 3780 2205
59 | 0.000 -1.000 0.000
60 | 3 2 0 1 0 7 50 0 -1 0.000 0 1 1 3
61 | 1 1 1.00 60.00 120.00
62 | 1 1 1.00 60.00 120.00
63 | 4905 2430 5400 2430 5670 1980
64 | 0.000 -1.000 0.000
65 | 3 2 0 1 0 7 50 0 -1 0.000 0 1 1 3
66 | 1 1 1.00 60.00 120.00
67 | 1 1 1.00 60.00 120.00
68 | 4905 990 5400 900 5715 1395
69 | 0.000 -1.000 0.000
70 | 3 2 0 1 0 7 50 0 -1 0.000 0 1 1 3
71 | 1 1 1.00 60.00 120.00
72 | 1 1 1.00 60.00 120.00
73 | 1035 2115 1530 2340 1800 2025
74 | 0.000 -1.000 0.000
75 | 4 0 0 50 0 0 12 0.0000 4 135 540 1710 3240 Kannel\001
76 | 4 0 0 50 0 0 12 0.0000 4 180 1035 1755 990 SMS protocol\001
77 | 4 0 0 50 0 0 12 0.0000 4 135 930 1710 2385 WAP stack\001
78 | 4 0 0 50 0 0 12 0.0000 4 135 450 5400 855 HTTP\001
79 | 4 0 0 50 0 0 12 0.0000 4 135 450 5400 2655 HTTP\001
80 |
--------------------------------------------------------------------------------
/doc/arch/kannel-push-boxes.fig:
--------------------------------------------------------------------------------
1 | #FIG 3.2
2 | Landscape
3 | Center
4 | Metric
5 | A4
6 | 100.00
7 | Single
8 | -2
9 | 1200 2
10 | 6 5760 1125 6795 2205
11 | 2 4 0 1 0 7 50 0 -1 0.000 0 0 7 0 0 5
12 | 6795 2205 6795 1125 5760 1125 5760 2205 6795 2205
13 | 4 0 0 50 0 0 12 0.0000 4 135 450 5985 1530 HTTP\001
14 | 4 0 0 50 0 0 12 0.0000 4 90 480 5985 1755 server\001
15 | -6
16 | 6 1665 1260 3060 1935
17 | 2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5
18 | 1665 1260 3060 1260 3060 1935 1665 1935 1665 1260
19 | 4 0 0 50 0 0 12 0.0000 4 135 780 1935 1620 Bearerbox\001
20 | -6
21 | 6 3825 1260 4860 1890
22 | 2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5
23 | 3825 1260 4860 1260 4860 1890 3825 1890 3825 1260
24 | 4 0 0 50 0 0 12 0.0000 4 180 630 4005 1575 Wapbox\001
25 | -6
26 | 2 4 0 1 0 7 50 0 -1 0.000 0 0 7 0 0 5
27 | 5265 3285 5265 180 1395 180 1395 3285 5265 3285
28 | 2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5
29 | 135 810 720 810 720 2790 135 2790 135 810
30 | 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 1 1 2
31 | 0 0 1.00 60.00 120.00
32 | 0 0 1.00 60.00 120.00
33 | 1350 1485 720 1485
34 | 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 1 1 2
35 | 0 0 1.00 60.00 120.00
36 | 0 0 1.00 60.00 120.00
37 | 3780 1530 3060 1530
38 | 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 1 1 2
39 | 0 0 1.00 60.00 120.00
40 | 0 0 1.00 60.00 120.00
41 | 5715 1530 4905 1530
42 | 4 0 0 50 0 0 12 0.0000 4 135 540 1710 3240 Kannel\001
43 | 4 0 0 50 0 0 12 0.0000 4 135 930 1710 2385 WAP stack\001
44 | 4 0 0 50 0 0 10 0.0000 4 105 360 225 1305 WAP\001
45 | 4 0 0 50 0 0 10 0.0000 4 135 360 225 1755 phone\001
46 |
--------------------------------------------------------------------------------
/doc/arch/wap-arch.fig:
--------------------------------------------------------------------------------
1 | #FIG 3.2
2 | Portrait
3 | Center
4 | Metric
5 | A4
6 | 100.00
7 | Single
8 | -2
9 | 1200 2
10 | 6 225 900 765 2205
11 | 2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5
12 | 225 1080 765 1080 765 1890 225 1890 225 1080
13 | 2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5
14 | 315 1170 675 1170 675 1395 315 1395 315 1170
15 | 2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5
16 | 675 1080 585 1080 585 900 675 900 675 1080
17 | 4 0 0 50 0 0 10 0.0000 4 105 375 315 2205 Phone\001
18 | -6
19 | 6 1755 315 3690 2880
20 | 2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5
21 | 1755 1215 2745 1215 2745 2835 1755 2835 1755 1215
22 | 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 2
23 | 1755 1215 2700 315
24 | 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 2
25 | 2732 1215 3677 315
26 | 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 2
27 | 2732 2853 3677 1953
28 | 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 3
29 | 2700 315 3690 315 3690 1980
30 | -6
31 | 6 5400 225 7335 2790
32 | 2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5
33 | 5400 1125 6390 1125 6390 2745 5400 2745 5400 1125
34 | 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 2
35 | 5400 1125 6345 225
36 | 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 2
37 | 6377 1125 7322 225
38 | 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 2
39 | 6377 2763 7322 1863
40 | 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 3
41 | 6345 225 7335 225 7335 1890
42 | -6
43 | 6 1890 1620 2565 2385
44 | 4 0 0 50 0 0 10 0.0000 4 105 390 1890 1755 WML\001
45 | 4 0 0 50 0 0 10 0.0000 4 105 660 1890 1950 conversion\001
46 | 4 0 0 50 0 0 10 0.0000 4 105 615 1890 2145 from text\001
47 | 4 0 0 50 0 0 10 0.0000 4 135 555 1890 2340 to binary\001
48 | -6
49 | 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 1 1 2
50 | 1 1 1.00 60.00 120.00
51 | 1 1 1.00 60.00 120.00
52 | 3825 990 5265 990
53 | 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 1 1 2
54 | 1 1 1.00 60.00 120.00
55 | 1 1 1.00 60.00 120.00
56 | 810 1395 1665 1395
57 | 4 0 0 50 0 0 10 0.0000 4 105 915 5490 3105 Content server\001
58 | 4 0 0 50 0 0 10 0.0000 4 135 930 2025 3150 WAP Gateway\001
59 | 4 0 0 50 0 0 10 0.0000 4 105 390 5715 1890 WML\001
60 | 4 0 0 50 0 0 10 0.0000 4 105 330 5715 2085 pages\001
61 | 4 0 0 50 0 0 10 0.0000 4 135 390 5715 2280 (text)\001
62 | 4 0 0 50 0 0 10 0.0000 4 105 705 945 1215 WAP stack\001
63 | 4 0 0 50 0 0 10 0.0000 4 105 1140 4140 855 HTTP and TCP/IP\001
64 |
--------------------------------------------------------------------------------
/doc/arch/wap-session.fig:
--------------------------------------------------------------------------------
1 | #FIG 3.2
2 | Portrait
3 | Center
4 | Metric
5 | A4
6 | 100.00
7 | Single
8 | -2
9 | 1200 2
10 | 6 135 495 810 1755
11 | 2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5
12 | 135 720 810 720 810 1755 135 1755 135 720
13 | 2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5
14 | 225 810 720 810 720 1170 225 1170 225 810
15 | 2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5
16 | 720 720 585 720 585 495 720 495 720 720
17 | -6
18 | 6 5040 495 6300 2025
19 | 2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5
20 | 5040 990 5625 990 5625 2025 5040 2025 5040 990
21 | 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 2
22 | 5040 990 5670 495
23 | 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 2
24 | 5633 990 6263 495
25 | 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 2
26 | 5659 1995 6289 1500
27 | 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 2
28 | 5670 495 6300 495
29 | 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 2
30 | 6300 495 6300 1485
31 | -6
32 | 6 2655 495 3915 2025
33 | 2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5
34 | 2655 990 3240 990 3240 2025 2655 2025 2655 990
35 | 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 2
36 | 2655 990 3285 495
37 | 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 2
38 | 3248 990 3878 495
39 | 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 2
40 | 3274 1995 3904 1500
41 | 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 2
42 | 3285 495 3915 495
43 | 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 2
44 | 3915 495 3915 1485
45 | -6
46 | 3 2 0 1 0 7 50 0 -1 0.000 0 1 0 3
47 | 1 1 1.00 60.00 120.00
48 | 810 810 1980 495 2835 810
49 | 0.000 -1.000 0.000
50 | 3 2 0 1 0 7 50 0 -1 0.000 0 1 0 3
51 | 1 1 1.00 60.00 120.00
52 | 810 990 2025 1035 2565 1080
53 | 0.000 -1.000 0.000
54 | 3 2 0 1 0 7 50 0 -1 0.000 0 1 0 5
55 | 1 1 1.00 60.00 120.00
56 | 3960 1035 4590 1035 5040 1215 4635 1395 3915 1260
57 | 0.000 -1.000 -1.000 -1.000 0.000
58 | 3 2 0 1 0 7 50 0 -1 0.000 0 1 0 3
59 | 1 1 1.00 60.00 120.00
60 | 2565 1575 2025 1665 855 1485
61 | 0.000 -1.000 0.000
62 | 3 2 0 1 0 7 50 0 -1 0.000 0 1 0 3
63 | 1 1 1.00 60.00 120.00
64 | 855 1620 1890 1980 2610 1845
65 | 0.000 -1.000 0.000
66 | 4 0 0 50 0 0 10 0.0000 4 135 870 990 1440 page to phone.\001
67 | 4 0 0 50 0 0 10 0.0000 4 105 1830 900 2205 5. Phone closes WAP session.\001
68 | 4 0 0 50 0 0 10 0.0000 4 135 1755 1035 900 2. Phone sends URL request.\001
69 | 4 0 0 50 0 0 10 0.0000 4 135 1800 1080 405 1. Phone opens WAP session.\001
70 | 4 0 0 50 0 0 10 0.0000 4 135 690 4050 720 3. Gateway\001
71 | 4 0 0 50 0 0 10 0.0000 4 105 825 4050 900 fetches URL.\001
72 | 4 0 0 50 0 0 10 0.0000 4 135 1560 990 1260 4. Gateway sends encoded\001
73 |
--------------------------------------------------------------------------------
/doc/examples/dlr-mysql.conf:
--------------------------------------------------------------------------------
1 | #
2 | # DLR with MySQL support configuration
3 | #
4 | # Example defining a MySQL database connection resource and
5 | # the required table and field values.
6 | #
7 |
8 | group = mysql-connection
9 | id = mydlr
10 | host = localhost
11 | username = foo
12 | password = bar
13 | database = dlr
14 | # max count of connections that will be opened for dbpool
15 | # default is 1
16 | max-connections = 1
17 |
18 | #
19 | # Create the required table for the DLR support in the database
20 | # with something similar like this:
21 | #
22 | # CREATE TABLE dlr (
23 | # smsc varchar(40),
24 | # ts varchar(40),
25 | # destination varchar(40),
26 | # source varchar(40),
27 | # service varchar(40),
28 | # url varchar(255),
29 | # mask int(10),
30 | # status int(10),
31 | # boxc varchar(40)
32 | # )
33 | #
34 |
35 | group = dlr-db
36 | id = mydlr
37 | table = dlr
38 | field-smsc = smsc
39 | field-timestamp = ts
40 | field-destination = destination
41 | field-source = source
42 | field-service = service
43 | field-url = url
44 | field-mask = mask
45 | field-status = status
46 | field-boxc-id = boxc
47 |
48 |
--------------------------------------------------------------------------------
/doc/examples/dlr-oracle.conf:
--------------------------------------------------------------------------------
1 | #
2 | # DLR with Oracle support configuration
3 | #
4 | # Example defining a Oracle database connection resource and
5 | # the required table and field values.
6 | #
7 |
8 | group = oracle-connection
9 | id = mydlr
10 | username = foo
11 | password = bar
12 | tnsname = bla
13 | # max count of connections that will be opened for dbpool
14 | # default is 1
15 | max-connections = 1
16 |
17 | #
18 | # Create the required table for the DLR support in the database
19 | # with something similar like this:
20 | #
21 | # CREATE TABLE dlr (
22 | # smsc varchar(40),
23 | # ts varchar(40),
24 | # destination varchar(40),
25 | # source varchar(40),
26 | # service varchar(40),
27 | # url varchar(255),
28 | # mask int(10),
29 | # status int(10),
30 | # boxc varchar(40)
31 | # )
32 | #
33 |
34 | group = dlr-db
35 | id = mydlr
36 | table = dlr
37 | field-smsc = smsc
38 | field-timestamp = ts
39 | field-destination = destination
40 | field-source = source
41 | field-service = service
42 | field-url = url
43 | field-mask = mask
44 | field-status = status
45 | field-boxc-id = boxc
46 |
47 |
--------------------------------------------------------------------------------
/doc/examples/dlr-redis.conf:
--------------------------------------------------------------------------------
1 | #
2 | # DLR with Redis support configuration
3 | #
4 | # Example defining a Redis database connection resource and
5 | # the required table and field values.
6 | #
7 |
8 | group = redis-connection
9 | id = redisdlr
10 | host = localhost
11 | port = 6379
12 | #password = foo
13 | database = 0
14 | # max count of connections that will be opened for dbpool
15 | # default is 1
16 | max-connections = 1
17 |
18 | group = dlr-db
19 | id = redisdlr
20 | # For Redis storage "table" is used as a key prefix for DLRs in the
21 | # format ::: (dst is not used on all smsc types).
22 | # It is also used as a key prefix storage of the number of pending DLRs
23 | # in the format :Count.
24 | # If 'ttl' is set in seconds, then this is the time to live (TTL) for
25 | # a specific DLR entry in the keystore. (i.e. 7d = 60480s)
26 | table = dlr
27 | ttl = 604800
28 | field-smsc = smsc
29 | field-timestamp = ts
30 | field-destination = destination
31 | field-source = source
32 | field-service = service
33 | field-url = url
34 | field-mask = mask
35 | field-status = status
36 | field-boxc-id = boxc
37 |
--------------------------------------------------------------------------------
/doc/examples/dlr-sdb.conf:
--------------------------------------------------------------------------------
1 | #
2 | # DLR with LibSDB support configuration
3 | #
4 | # Example defining a LibSDB resource (as an abstraction of a real database)
5 | # and the required table and field values.
6 | #
7 | # As of LibSDB 0.5.0 the following database types are supported with
8 | # the associated URL resource scheme:
9 | #
10 | # mysql:host=XXX:db=XXX:uid=XXX:pwd=XXX
11 | # postgres:host=XXX:db=XXX:port=XXX
12 | # oracle:uid=XXX:pwd=XXX OR oracle:uid=username/password@instance
13 | # sqlite:db=/full/path/to/db
14 | # lago:host=XXX:port=XXX:db=XXX:uid=XXX:pwd=XXX
15 | # mimer:db=XXX:uid=XXX:pwd=XXX
16 | # odbc:dsn=postgresql
17 | # sdbd:host:port:url=XXX
18 | # text:/path/to/db/ (note trailing slash)
19 | #
20 | # Beware that you have the DB support build in your LibSDB installation
21 | # when trying to use a specific DB type within the URL.
22 | #
23 | # LibSDB is available at http://siag.nu/libsdb/
24 | #
25 |
26 | group = sdb-connection
27 | id = pgdlr
28 | url = "postgres:host=localhost:db=myapp:port=1234"
29 | max-connections = 1
30 |
31 | #
32 | # Create the required table for the DLR support in the database
33 | # with something similar like this, i.e. for MySQL:
34 | #
35 | # CREATE TABLE dlr (
36 | # smsc varchar(40),
37 | # ts varchar(40),
38 | # destination varchar(40),
39 | # source varchar(40),
40 | # service varchar(40),
41 | # url varchar(255),
42 | # mask int(10),
43 | # status int(10),
44 | # boxc varchar(40)
45 | # )
46 | #
47 | # For Postgres:
48 | #
49 | # CREATE TABLE dlr (
50 | # smsc VARCHAR(48),
51 | # ts VARCHAR(48),
52 | # destination VARCHAR(48),
53 | # source VARCHAR(48),
54 | # service VARCHAR(48),
55 | # url VARCHAR(255),
56 | # mask INTEGER,
57 | # status INTEGER,
58 | # boxc VARCHAR(48));
59 | #
60 | # Other DB types may vary. Consult your DB admin for help in creating
61 | # the appropriate table space and connection details for the real DB.
62 | #
63 |
64 | group = dlr-db
65 | id = pgdlr
66 | table = dlr
67 | field-smsc = smsc
68 | field-timestamp = ts
69 | field-destination = destination
70 | field-source = source
71 | field-service = service
72 | field-url = url
73 | field-mask = mask
74 | field-status = status
75 | field-boxc-id = boxc
76 |
77 |
--------------------------------------------------------------------------------
/doc/examples/dlr-sqlite3.conf:
--------------------------------------------------------------------------------
1 | #
2 | # DLR with SQLite3 support configuration
3 | #
4 | # Example defining a SQLite3 database connection resource and
5 | # the required table and field values.
6 | #
7 |
8 | group = sqlite3-connection
9 | id = mydlr
10 | database = /path/to/file
11 | # max count of connections that will be opened for dbpool
12 | # default is 1
13 | max-connections = 1
14 |
15 | #
16 | # Create the required table for the DLR support in the database
17 | # with something similar like this:
18 | #
19 | # CREATE TABLE dlr (
20 | # smsc varchar(40),
21 | # ts varchar(40),
22 | # destination varchar(40),
23 | # source varchar(40),
24 | # service varchar(40),
25 | # url varchar(255),
26 | # mask int(10),
27 | # status int(10),
28 | # boxc varchar(40)
29 | # )
30 | #
31 |
32 | group = dlr-db
33 | id = mydlr
34 | table = dlr
35 | field-smsc = smsc
36 | field-timestamp = ts
37 | field-destination = destination
38 | field-source = source
39 | field-service = service
40 | field-url = url
41 | field-mask = mask
42 | field-status = status
43 | field-boxc-id = boxc
44 |
--------------------------------------------------------------------------------
/doc/release.txt:
--------------------------------------------------------------------------------
1 | Steps to follow when making a release of the gateway; if there is a
2 | problem, fix it, and re-start from beginning:
3 |
4 | * Decide on the version number.
5 |
6 | * Prepare the software for release.
7 |
8 | * Make sure everything is committed to CVS.
9 |
10 | * Make sure everything is working.
11 |
12 | * Run "make -s check"
13 |
14 | * Test with a real phone.
15 |
16 | * Make sure documentation is up to date.
17 |
18 | * Make sure NEWS is up to date.
19 |
20 | * Add an entry to ChangeLog that says you're making release
21 | such and such.
22 |
23 | * Update file VERSION to have the version number you want.
24 |
25 | * Commit the changes to ChangeLog and VERSION.
26 |
27 | * Mark the version to be released with a tag and branch. If the
28 | version number would be X.Y, then the tag would be "version_X_Y_Z".
29 | If it's a stable release, tag would be "stable_X_Y_Z"
30 |
31 | * "cvs tag -b version_X_Y_Z" the first time.
32 |
33 | * "cvs tag -F version_X_Y_Z" when iterating after fixing
34 | problems in a release candidate.
35 |
36 | * Make VERSION say "cvs" as version number so that people using
37 | the CVS version won't report some specific number as their
38 | version.
39 |
40 | * Make distribution files.
41 |
42 | * Use "makedist" script, with the version number as
43 | argument. Run it in an empty directory, not directly
44 | from the CVS work directory. CVSROOT is set as when
45 | setting up CVS for download.
46 |
47 | * Run release candidate on demo.kannel.org.
48 |
49 | * Check configuration.
50 |
51 | * Possibly add new services.
52 |
53 | * Put new files on www.kannel.org, and otherwise update the
54 | site to reflect the new release.
55 |
56 | * makedist output goes in ~kannel/public_html/download/$V,
57 | where $V is the new version number.
58 |
59 | * Use the www.kannel.org CVS module to change the html
60 | files, and use ~kannel/bin/publish-www.kannel.org-from-cvs
61 | after committing.
62 |
63 | * Announce new version on index.shtml, and describe it
64 | on news.html. Include an extract from the NEWS file.
65 |
66 | * Change the links in download.shtml, and update the
67 | "Old versions" section.
68 |
69 | * Check changes locally before committing. Note, this
70 | will not work for the links on the download page.
71 |
72 | * Send out the announce to appropriate places. Remember to
73 | set Reply-To to the devel list. Include an extract from the
74 | NEWS file.
75 |
76 | * announce@kannel.org
77 |
78 | * linux-announce@news.ornl.gov (not for all versions)
79 |
80 | * Freshmeat (not for all versions)
81 |
--------------------------------------------------------------------------------
/doc/userguide/sms-gateway.fig:
--------------------------------------------------------------------------------
1 | #FIG 3.2
2 | Portrait
3 | Center
4 | Metric
5 | A4
6 | 100.00
7 | Single
8 | -2
9 | 1200 2
10 | 6 90 90 6525 2835
11 | 6 135 1350 585 2475
12 | 2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5
13 | 135 1620 585 1620 585 2475 135 2475 135 1620
14 | 2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5
15 | 450 1620 540 1620 540 1350 450 1350 450 1620
16 | 2 4 0 1 0 7 50 0 -1 0.000 0 0 7 0 0 5
17 | 540 1980 540 1665 180 1665 180 1980 540 1980
18 | -6
19 | 6 3240 1170 4320 2250
20 | 1 3 0 1 0 7 50 0 -1 0.000 1 0.0000 3780 1710 497 497 3780 1710 3825 2205
21 | 4 0 0 50 0 0 12 0.0000 4 135 540 3510 1755 Kannel\001
22 | -6
23 | 6 2475 900 3105 1305
24 | 4 0 0 50 0 0 12 0.0000 4 135 495 2475 1035 SMSC\001
25 | 4 0 0 50 0 0 12 0.0000 4 180 615 2475 1260 protocol\001
26 | -6
27 | 2 2 0 1 0 0 56 0 -1 0.000 0 0 -1 0 0 5
28 | 1350 1125 2025 1125 2025 2475 1350 2475 1350 1125
29 | 2 1 0 1 0 0 56 0 -1 0.000 0 0 -1 0 0 5
30 | 1350 1125 1575 945 2250 945 2250 2250 2025 2475
31 | 2 1 0 1 0 0 56 0 -1 0.000 0 0 -1 0 0 2
32 | 2025 1125 2250 945
33 | 2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5
34 | 5220 540 5850 540 5850 2070 5220 2070 5220 540
35 | 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 2
36 | 5850 540 6525 90
37 | 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 2
38 | 5220 540 5895 90
39 | 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 2
40 | 5850 2056 6525 1606
41 | 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 3
42 | 5895 90 6525 90 6525 1620
43 | 2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5
44 | 5310 1395 5760 1395 5760 1980 5310 1980 5310 1395
45 | 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 2
46 | 5400 1395 5400 1980
47 | 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 2
48 | 5490 1395 5490 1980
49 | 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 2
50 | 5580 1395 5580 1980
51 | 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 2
52 | 5670 1395 5670 1980
53 | 2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5
54 | 5310 675 5760 675 5760 810 5310 810 5310 675
55 | 3 2 0 1 0 7 50 0 -1 0.000 0 1 1 4
56 | 0 0 1.00 60.00 120.00
57 | 0 0 1.00 60.00 120.00
58 | 4230 1395 4860 1215 4590 1710 5175 1530
59 | 0.000 -1.000 -1.000 0.000
60 | 3 2 0 1 0 7 50 0 -1 0.000 0 1 1 4
61 | 0 0 1.00 60.00 120.00
62 | 0 0 1.00 60.00 120.00
63 | 2250 1575 2880 1485 2700 1980 3240 1890
64 | 0.000 -1.000 -1.000 0.000
65 | 3 2 0 1 0 7 50 0 -1 0.000 0 1 1 4
66 | 0 0 1.00 60.00 120.00
67 | 0 0 1.00 60.00 120.00
68 | 675 1800 1126 1716 946 2211 1260 2115
69 | 0.000 -1.000 -1.000 0.000
70 | 4 0 0 50 0 0 12 0.0000 4 135 465 90 1080 Phone\001
71 | 4 0 0 50 0 0 12 0.0000 4 135 450 4500 1035 HTTP\001
72 | 4 0 0 50 0 0 12 0.0000 4 135 930 1395 2835 SMS Center\001
73 | 4 0 0 50 0 0 12 0.0000 4 180 1260 5265 2520 Content provider\001
74 | -6
75 |
--------------------------------------------------------------------------------
/doc/userguide/wap-gateway.fig:
--------------------------------------------------------------------------------
1 | #FIG 3.2
2 | Portrait
3 | Center
4 | Metric
5 | A4
6 | 100.00
7 | Single
8 | -2
9 | 1200 2
10 | 6 90 90 6525 2565
11 | 6 585 1440 1035 2565
12 | 2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5
13 | 585 1710 1035 1710 1035 2565 585 2565 585 1710
14 | 2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5
15 | 900 1710 990 1710 990 1440 900 1440 900 1710
16 | 2 4 0 1 0 7 50 0 -1 0.000 0 0 7 0 0 5
17 | 990 2070 990 1755 630 1755 630 2070 990 2070
18 | -6
19 | 6 5220 90 6525 2520
20 | 2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5
21 | 5220 540 5850 540 5850 2070 5220 2070 5220 540
22 | 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 2
23 | 5850 540 6525 90
24 | 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 2
25 | 5220 540 5895 90
26 | 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 2
27 | 5850 2056 6525 1606
28 | 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 3
29 | 5895 90 6525 90 6525 1620
30 | 2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5
31 | 5310 1395 5760 1395 5760 1980 5310 1980 5310 1395
32 | 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 2
33 | 5400 1395 5400 1980
34 | 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 2
35 | 5490 1395 5490 1980
36 | 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 2
37 | 5580 1395 5580 1980
38 | 2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 2
39 | 5670 1395 5670 1980
40 | 2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5
41 | 5310 675 5760 675 5760 810 5310 810 5310 675
42 | 4 0 0 50 0 0 12 0.0000 4 135 1125 5265 2520 Content server\001
43 | -6
44 | 6 2295 990 3735 2430
45 | 1 3 0 1 0 7 50 0 -1 0.000 1 0.0000 3015 1710 720 720 3015 1710 3015 2430
46 | 4 0 0 50 0 0 12 0.0000 4 180 1110 2505 1777 WAP gateway\001
47 | -6
48 | 6 1440 1215 1890 1575
49 | 4 0 0 50 0 0 12 0.0000 4 135 420 1440 1350 WAP\001
50 | 4 0 0 50 0 0 12 0.0000 4 135 420 1440 1575 stack\001
51 | -6
52 | 3 2 0 1 0 7 50 0 -1 0.000 0 1 1 4
53 | 0 0 1.00 60.00 120.00
54 | 0 0 1.00 60.00 120.00
55 | 1170 1845 1845 1755 1755 2430 2340 2160
56 | 0.000 -1.000 -1.000 0.000
57 | 3 2 0 1 0 7 50 0 -1 0.000 0 1 1 4
58 | 0 0 1.00 60.00 120.00
59 | 0 0 1.00 60.00 120.00
60 | 3735 1395 4590 1170 4365 1890 5175 1530
61 | 0.000 -1.000 -1.000 0.000
62 | 4 0 0 50 0 0 12 0.0000 4 135 465 90 1080 Phone\001
63 | 4 0 0 50 0 0 12 0.0000 4 135 450 4185 990 HTTP\001
64 | -6
65 |
--------------------------------------------------------------------------------
/doc/wtls/fig10o.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pruiz/kannel/cdbcfc129ab1f0cb301df741131bccf20d39c17f/doc/wtls/fig10o.png
--------------------------------------------------------------------------------
/doc/wtls/fig1o.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pruiz/kannel/cdbcfc129ab1f0cb301df741131bccf20d39c17f/doc/wtls/fig1o.png
--------------------------------------------------------------------------------
/doc/wtls/fig2o.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pruiz/kannel/cdbcfc129ab1f0cb301df741131bccf20d39c17f/doc/wtls/fig2o.png
--------------------------------------------------------------------------------
/doc/wtls/fig3o.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pruiz/kannel/cdbcfc129ab1f0cb301df741131bccf20d39c17f/doc/wtls/fig3o.png
--------------------------------------------------------------------------------
/doc/wtls/fig4o.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pruiz/kannel/cdbcfc129ab1f0cb301df741131bccf20d39c17f/doc/wtls/fig4o.png
--------------------------------------------------------------------------------
/doc/wtls/fig4out.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pruiz/kannel/cdbcfc129ab1f0cb301df741131bccf20d39c17f/doc/wtls/fig4out.png
--------------------------------------------------------------------------------
/doc/wtls/fig5o.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pruiz/kannel/cdbcfc129ab1f0cb301df741131bccf20d39c17f/doc/wtls/fig5o.png
--------------------------------------------------------------------------------
/doc/wtls/fig5out.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pruiz/kannel/cdbcfc129ab1f0cb301df741131bccf20d39c17f/doc/wtls/fig5out.png
--------------------------------------------------------------------------------
/doc/wtls/fig6o.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pruiz/kannel/cdbcfc129ab1f0cb301df741131bccf20d39c17f/doc/wtls/fig6o.png
--------------------------------------------------------------------------------
/doc/wtls/fig6out.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pruiz/kannel/cdbcfc129ab1f0cb301df741131bccf20d39c17f/doc/wtls/fig6out.png
--------------------------------------------------------------------------------
/doc/wtls/fig6out1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pruiz/kannel/cdbcfc129ab1f0cb301df741131bccf20d39c17f/doc/wtls/fig6out1.png
--------------------------------------------------------------------------------
/doc/wtls/fig7o.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pruiz/kannel/cdbcfc129ab1f0cb301df741131bccf20d39c17f/doc/wtls/fig7o.png
--------------------------------------------------------------------------------
/doc/wtls/fig8o.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pruiz/kannel/cdbcfc129ab1f0cb301df741131bccf20d39c17f/doc/wtls/fig8o.png
--------------------------------------------------------------------------------
/doc/wtls/fig9o.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pruiz/kannel/cdbcfc129ab1f0cb301df741131bccf20d39c17f/doc/wtls/fig9o.png
--------------------------------------------------------------------------------
/gw/alt_charsets.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pruiz/kannel/cdbcfc129ab1f0cb301df741131bccf20d39c17f/gw/alt_charsets.h
--------------------------------------------------------------------------------
/gw/cert.pem:
--------------------------------------------------------------------------------
1 | -----BEGIN CERTIFICATE-----
2 | MIIDRDCCAq2gAwIBAgIBADANBgkqhkiG9w0BAQQFADCBqTELMAkGA1UEBhMCWFkx
3 | FTATBgNVBAgTDFNuYWtlIERlc2VydDETMBEGA1UEBxMKU25ha2UgVG93bjEXMBUG
4 | A1UEChMOU25ha2UgT2lsLCBMdGQxHjAcBgNVBAsTFUNlcnRpZmljYXRlIEF1dGhv
5 | cml0eTEVMBMGA1UEAxMMU25ha2UgT2lsIENBMR4wHAYJKoZIhvcNAQkBFg9jYUBz
6 | bmFrZW9pbC5kb20wHhcNOTkxMDIxMTgyMTQ2WhcNMDExMDIwMTgyMTQ2WjCBqTEL
7 | MAkGA1UEBhMCWFkxFTATBgNVBAgTDFNuYWtlIERlc2VydDETMBEGA1UEBxMKU25h
8 | a2UgVG93bjEXMBUGA1UEChMOU25ha2UgT2lsLCBMdGQxHjAcBgNVBAsTFUNlcnRp
9 | ZmljYXRlIEF1dGhvcml0eTEVMBMGA1UEAxMMU25ha2UgT2lsIENBMR4wHAYJKoZI
10 | hvcNAQkBFg9jYUBzbmFrZW9pbC5kb20wgZ8wDQYJKoZIhvcNAQEBBQADgY0AMIGJ
11 | AoGBANiTGAmWoiB2Qx3SbwFXwjbqU9ZwnfBE5Er1h1kNh487D782I8mcT/CzxmsH
12 | evK3heBKTEno+jB0y5p4+QShxryaMUUbRoOGfrlrVwc/dbwJQz7UNyqDlWnvnW4p
13 | TfdVd+8JlCpYFB23Z7bmpUV1Xy6VFKBahzIhzITaux1vvEPLAgMBAAGjejB4MBoG
14 | A1UdEQQTMBGBD2NhQHNuYWtlb2lsLmRvbTAPBgNVHRMECDAGAQH/AgEAMDYGCWCG
15 | SAGG+EIBDQQpFidtb2Rfc3NsIGdlbmVyYXRlZCBjdXN0b20gQ0EgY2VydGlmaWNh
16 | dGUwEQYJYIZIAYb4QgEBBAQDAgIEMA0GCSqGSIb3DQEBBAUAA4GBAImhzPY4PBRt
17 | PQbAQBAmHIBRcb69iTbFC+dghnVJQ3F549rZapY420kQDKQ6aCybPFmxJ/Rf27gY
18 | FuAuo+B8EEVX0lU8VUSEhYQedODnQ3skwcT02g4b33GkzH7ED2N9kaa6U65UUrcE
19 | KXJgz7tmAQHnTc9K1g2qIApIjnr3FrrJ
20 | -----END CERTIFICATE-----
21 |
--------------------------------------------------------------------------------
/gw/dlr_mssql.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pruiz/kannel/cdbcfc129ab1f0cb301df741131bccf20d39c17f/gw/dlr_mssql.c
--------------------------------------------------------------------------------
/gw/dlr_oracle.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pruiz/kannel/cdbcfc129ab1f0cb301df741131bccf20d39c17f/gw/dlr_oracle.c
--------------------------------------------------------------------------------
/gw/kannel.8:
--------------------------------------------------------------------------------
1 | .\" Hey, Emacs! This is an -*- nroff -*- source file.
2 | .TH KANNEL 8 "3rd October 2000" "Kannel Project" "Kannel Project"
3 | .SH NAME
4 | bearerbox,
5 | wapbox,
6 | smsbox \- Parts of Kannel, the WAP and SMS gateway
7 | .SH SYNOPSIS
8 | .B bearerbox
9 | .IR "" [ options ... "] [" conffile ]
10 | .PP
11 | .B wapbox
12 | .IR "" [ options ... "] [" conffile ]
13 | .PP
14 | .B smsbox
15 | .IR "" [ options ... "] [" conffile ]
16 | .SH DESCRIPTION
17 | .I Kannel
18 | is an WAP and SMS gateway.
19 | WAP is short for Wireless Application Protocol,
20 | and is used to implement hypertext based services on mobile phones.
21 | SMS is short for Short Message Service,
22 | and is used to send and recive short (up to 160 characters) text messages
23 | with mobile phones.
24 | SMS can also be used to implement simple text based services on mobile
25 | phones.
26 | .PP
27 | Kannel consists of three programs, usually run as daemons:
28 | .BR bearerbox ,
29 | .BR wapbox ,
30 | and
31 | .BR smsbox .
32 | They implement the connection to the phone (SMS or UDP),
33 | the WAP protocol stack,
34 | and the SMS based services, respectively.
35 | .PP
36 | For more information,
37 | see
38 | .B http://www.kannel.org
39 | or
40 | .BR file://usr/doc/kannel/ .
41 | .SH "SEE ALSO"
42 | .BR run_kannel_box (8),
43 | .BR seewbmp (1).
44 |
--------------------------------------------------------------------------------
/gw/key.pem:
--------------------------------------------------------------------------------
1 | -----BEGIN RSA PRIVATE KEY-----
2 | MIICXQIBAAKBgQDYkxgJlqIgdkMd0m8BV8I26lPWcJ3wRORK9YdZDYePOw+/NiPJ
3 | nE/ws8ZrB3ryt4XgSkxJ6PowdMuaePkEoca8mjFFG0aDhn65a1cHP3W8CUM+1Dcq
4 | g5Vp751uKU33VXfvCZQqWBQdt2e25qVFdV8ulRSgWocyIcyE2rsdb7xDywIDAQAB
5 | AoGAEIvUZ08h3dcLM6kTIAgjZ2ypsRVzi5rH0k5F4/DbrX62qkYpn8qYdOxXOXAd
6 | 3ZNV4BftEiyBiNgzgf7CD6+IblZUqkc1dUc96AJH16CUXM/favAHhIoSdyhrnAH8
7 | O9UN1KxlzUpvLDOelbOdL4/4sQ0XXqd9DJcZkeKc4zCi35kCQQD43SlsTDBeO7ae
8 | Ig5qnJ/g2V2V4bPh1xTH7LjxthsksOqPUEt3DgRmRVq+qeDyyxN49V9uFYf8oXDl
9 | 1FchPranAkEA3sjny2sxBNIBGtPVLGFl+aukBRkNOdmssVcBudsnigOEL0lbd4Wu
10 | 07ok0zeCuAu+yHRYJKY4eqWVGQJ/DtUSPQJBAIqxVuCQJXSe+stuV3J7D28UNN/P
11 | BZ0bbO1utDOhNcdhAZgVO7mCClmk1UnlCwTEwHls5l5HiZ31qyGrEVPpy4kCQDfR
12 | VmIdBTcT9rrmAC8SaB5Z5spwMGQiKaZ1CjWqtwlZQDEozAXyNI9PwBI7gkDikHZg
13 | 0AS+sL/p5KVTfsoUkHECQQDWCSgpZ8k7EajS1RWIGH/GcFT/GaKX8yiMIP2S3Atc
14 | nl7yMj8yw+1N503FF0aRwimryXQt/VHVYjtYsSAgNU/i
15 | -----END RSA PRIVATE KEY-----
16 |
--------------------------------------------------------------------------------
/gw/ota_compiler.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pruiz/kannel/cdbcfc129ab1f0cb301df741131bccf20d39c17f/gw/ota_compiler.c
--------------------------------------------------------------------------------
/gw/ota_compiler.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pruiz/kannel/cdbcfc129ab1f0cb301df741131bccf20d39c17f/gw/ota_compiler.h
--------------------------------------------------------------------------------
/gw/ota_prov.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pruiz/kannel/cdbcfc129ab1f0cb301df741131bccf20d39c17f/gw/ota_prov.c
--------------------------------------------------------------------------------
/gw/ota_prov.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pruiz/kannel/cdbcfc129ab1f0cb301df741131bccf20d39c17f/gw/ota_prov.h
--------------------------------------------------------------------------------
/gw/other_smskannel.conf:
--------------------------------------------------------------------------------
1 | #
2 | # THIS IS A SAMPLE CONFIGURATION FOR SMS KANNEL
3 | #
4 | # This second/other SMS Kannel configuration is meant to be used
5 | # together with original gw/smskannel.conf, to test out Kannel as
6 | # HTTP SMSC.
7 | #
8 | # The entire system is run like this
9 | #
10 | # 1% gw/bearerbox gw/smskannel.conf
11 | # 2% gw/smsbox gw/smskannel.conf
12 | # 1% gw/bearerbox gw/other_smskannel.conf
13 | # 2% gw/smsbox gw/other_smskannel.conf
14 | # 3% test/fakesmsc -r 10000 -H localhost -i 1 -m 100 "100 300 text relay nop"
15 | #
16 | # ..all 3 commands in separate shells (or screen sessions)
17 | #
18 | # For any modifications to this file, see Kannel User Guide
19 | # If that does not help, send email to users@kannel.org
20 | #
21 | # Kalle Marjola Mar 2001
22 | #
23 |
24 | group = core
25 | admin-port = 15000
26 | smsbox-port = 15001
27 | admin-password = bar
28 | #status-password = foo
29 | #admin-deny-ip = ""
30 | #admin-allow-ip = ""
31 | #log-file = "/tmp/bearerbox2.log"
32 | #log-level = 0
33 | box-deny-ip = "*.*.*.*"
34 | box-allow-ip = "127.0.0.1"
35 | #unified-prefix = "+358,00358,0;+,00"
36 | #access-log = "/tmp/access2.log"
37 | #store-file = "/tmp/kannel2.store"
38 | #ssl-server-cert-file = "cert.pem"
39 | #ssl-server-key-file = "key.pem"
40 | #ssl-certkey-file = "mycertandprivkeyfile.pem"
41 |
42 | # SMSC CONNECTIONS
43 |
44 | group = smsc
45 | smsc = http
46 | system-type = kannel
47 | port = 15130
48 | #connect-allow-ip = "127.0.0.1"
49 | smsc-username = tester
50 | smsc-password = foobar
51 | send-url = "http://localhost:13013/cgi-bin/sendsms"
52 |
53 | # SMSBOX SETUP
54 |
55 | group = smsbox
56 | bearerbox-host = 127.0.0.1
57 | sendsms-port = 15015
58 | global-sender = 15015
59 | #sendsms-chars = "0123456789 +-"
60 | #log-file = "/tmp/smsbox2.log"
61 | #log-level = 0
62 | #access-log = "/tmp/access2.log"
63 |
64 | # SEND-SMS USERS
65 |
66 | group = sendsms-user
67 | username = tester
68 | password = foobar
69 | #user-deny-ip = ""
70 | #user-allow-ip = ""
71 |
72 | # SERVICES
73 |
74 | group = sms-service
75 | keyword = nop
76 | text = "You asked nothing and I did it!"
77 |
78 | # there should be default always
79 |
80 | group = sms-service
81 | keyword = default
82 | text = "No service specified"
83 |
84 |
--------------------------------------------------------------------------------
/gw/pushkannel.conf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pruiz/kannel/cdbcfc129ab1f0cb301df741131bccf20d39c17f/gw/pushkannel.conf
--------------------------------------------------------------------------------
/gw/settings.dtd:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
8 |
9 |
10 |
--------------------------------------------------------------------------------
/gw/smsc/smsc_cimd.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pruiz/kannel/cdbcfc129ab1f0cb301df741131bccf20d39c17f/gw/smsc/smsc_cimd.c
--------------------------------------------------------------------------------
/gw/smsc/smsc_emi_x25.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pruiz/kannel/cdbcfc129ab1f0cb301df741131bccf20d39c17f/gw/smsc/smsc_emi_x25.c
--------------------------------------------------------------------------------
/gw/smsc/smsc_sema.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pruiz/kannel/cdbcfc129ab1f0cb301df741131bccf20d39c17f/gw/smsc/smsc_sema.c
--------------------------------------------------------------------------------
/gw/smskannel-ssl.conf:
--------------------------------------------------------------------------------
1 | #
2 | # THIS IS A SAMPLE CONFIGURATION FOR SMS KANNEL
3 | # (using SSL enabled HTTP servers)
4 | #
5 | # It is run like this:
6 | #
7 | # 1% gw/bearerbox gw/smskannel.conf
8 | # 2% gw/smsbox gw/smskannel.conf
9 | # 3% test/fakesmsc -p 10000 -H localhost -i 1 -m 100 "123 345 text nop"
10 | #
11 | # ..all 3 commands in separate shells (or screen sessions)
12 | #
13 | # For any modifications to this file, see Kannel User Guide
14 | # If that does not help, send email to users@kannel.org
15 | #
16 | # Kalle Marjola May 2000
17 | # Changed for new fakesmsc version by Uoti Urpala Jan 2001
18 | # Added service and sendsms for HTTP SMSC by Kalle Marjola Mar 2001
19 | # Adopted for SSL enabled traffic by Stipe Tolj 2002
20 | #
21 |
22 | group = core
23 | admin-port = 13000
24 | admin-port-ssl = yes
25 | smsbox-port = 13001
26 | admin-password = bar
27 | #status-password = foo
28 | #admin-deny-ip = ""
29 | #admin-allow-ip = ""
30 | #log-file = "/tmp/kannel.log"
31 | #log-level = 0
32 | box-deny-ip = "*.*.*.*"
33 | box-allow-ip = "127.0.0.1"
34 | #unified-prefix = "+358,00358,0;+,00"
35 | #access-log = "/tmp/access.log"
36 | #store-file = "/tmp/kannel.store"
37 | #ssl-server-cert-file = "cert.pem"
38 | #ssl-server-key-file = "key.pem"
39 | #ssl-certkey-file = "mycertandprivkeyfile.pem"
40 |
41 | # SMSC CONNECTIONS
42 |
43 | group = smsc
44 | smsc = fake
45 | smsc-id = FAKE
46 | port = 10000
47 | connect-allow-ip = 127.0.0.1
48 |
49 | # SMSBOX SETUP
50 |
51 | group = smsbox
52 | bearerbox-host = localhost
53 | sendsms-port = 13013
54 | sendsms-port-ssl = yes
55 | global-sender = 13013
56 | #sendsms-chars = "0123456789 +-"
57 | #log-file = "/tmp/smsbox.log"
58 | #log-level = 0
59 | #access-log = "/tmp/access.log"
60 |
61 | # SEND-SMS USERS
62 |
63 | group = sendsms-user
64 | username = tester
65 | password = foobar
66 | #user-deny-ip = ""
67 | #user-allow-ip = ""
68 |
69 | # SERVICES
70 |
71 | group = sms-service
72 | keyword = nop
73 | text = "You asked nothing and I did it!"
74 |
75 | # there should be default always
76 |
77 | group = sms-service
78 | keyword = default
79 | text = "No service specified"
80 |
81 |
--------------------------------------------------------------------------------
/gw/wap_ppg_push_machine.def:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pruiz/kannel/cdbcfc129ab1f0cb301df741131bccf20d39c17f/gw/wap_ppg_push_machine.def
--------------------------------------------------------------------------------
/gw/wap_ppg_session_machine.def:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pruiz/kannel/cdbcfc129ab1f0cb301df741131bccf20d39c17f/gw/wap_ppg_session_machine.def
--------------------------------------------------------------------------------
/gw/wap_push_ota.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pruiz/kannel/cdbcfc129ab1f0cb301df741131bccf20d39c17f/gw/wap_push_ota.c
--------------------------------------------------------------------------------
/gw/wap_push_ota.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pruiz/kannel/cdbcfc129ab1f0cb301df741131bccf20d39c17f/gw/wap_push_ota.h
--------------------------------------------------------------------------------
/gw/wap_push_pap_compiler.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pruiz/kannel/cdbcfc129ab1f0cb301df741131bccf20d39c17f/gw/wap_push_pap_compiler.c
--------------------------------------------------------------------------------
/gw/wap_push_pap_compiler.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pruiz/kannel/cdbcfc129ab1f0cb301df741131bccf20d39c17f/gw/wap_push_pap_compiler.h
--------------------------------------------------------------------------------
/gw/wap_push_pap_mime.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pruiz/kannel/cdbcfc129ab1f0cb301df741131bccf20d39c17f/gw/wap_push_pap_mime.c
--------------------------------------------------------------------------------
/gw/wap_push_pap_mime.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pruiz/kannel/cdbcfc129ab1f0cb301df741131bccf20d39c17f/gw/wap_push_pap_mime.h
--------------------------------------------------------------------------------
/gw/wap_push_ppg.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pruiz/kannel/cdbcfc129ab1f0cb301df741131bccf20d39c17f/gw/wap_push_ppg.c
--------------------------------------------------------------------------------
/gw/wap_push_ppg.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pruiz/kannel/cdbcfc129ab1f0cb301df741131bccf20d39c17f/gw/wap_push_ppg.h
--------------------------------------------------------------------------------
/gw/wap_push_ppg_pushuser.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pruiz/kannel/cdbcfc129ab1f0cb301df741131bccf20d39c17f/gw/wap_push_ppg_pushuser.c
--------------------------------------------------------------------------------
/gw/wap_push_ppg_pushuser.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pruiz/kannel/cdbcfc129ab1f0cb301df741131bccf20d39c17f/gw/wap_push_ppg_pushuser.h
--------------------------------------------------------------------------------
/gw/wap_push_si_compiler.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pruiz/kannel/cdbcfc129ab1f0cb301df741131bccf20d39c17f/gw/wap_push_si_compiler.c
--------------------------------------------------------------------------------
/gw/wap_push_si_compiler.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pruiz/kannel/cdbcfc129ab1f0cb301df741131bccf20d39c17f/gw/wap_push_si_compiler.h
--------------------------------------------------------------------------------
/gw/wap_push_sl_compiler.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pruiz/kannel/cdbcfc129ab1f0cb301df741131bccf20d39c17f/gw/wap_push_sl_compiler.c
--------------------------------------------------------------------------------
/gw/wap_push_sl_compiler.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pruiz/kannel/cdbcfc129ab1f0cb301df741131bccf20d39c17f/gw/wap_push_sl_compiler.h
--------------------------------------------------------------------------------
/gw/wapkannel.conf:
--------------------------------------------------------------------------------
1 | #
2 | # THIS IS A SAMPLE CONFIGURATION FOR WAP KANNEL
3 | #
4 | # It is run like this:
5 | #
6 | # 1% gw/bearerbox gw/wapkannel.conf
7 | # 2% gw/wapbox gw/wapkannel.conf
8 | #
9 | # ..as both commands in separate shells (or screen sessions)
10 | #
11 | # After that you can use your 7110 to test this out. Or use
12 | # fakewap from test directory, or some SDK.
13 | #
14 | # For any guidelines to set up your SDK or 7110, see Kannel FAQ
15 | # on Kannel WWW pages at http://www.kannel.org/
16 | #
17 | # For any modifications to this file, see Kannel User Guide
18 | # If that does not help, send email to users@kannel.org
19 | #
20 | # Kalle Marjola May 2000
21 | #
22 |
23 | group = core
24 | admin-port = 13000
25 | wapbox-port = 13002
26 | admin-password = bar
27 | #status-password = foo
28 | #admin-deny-ip = ""
29 | #admin-allow-ip = ""
30 | wdp-interface-name = "127.0.0.1"
31 | #log-file = "/tmp/bearerbox.log"
32 | #log-level = 0
33 | box-deny-ip = "*.*.*.*"
34 | box-allow-ip = "127.0.0.1"
35 | #access-log = "/tmp/access.log"
36 | #store-file = "/tmp/kannel.store"
37 | #ssl-server-cert-file = "cert.pem"
38 | #ssl-server-key-file = "key.pem"
39 | #ssl-certkey-file = "mycertandprivkeyfile.pem"
40 |
41 | group = wapbox
42 | bearerbox-host = 127.0.0.1
43 | #log-file = "/tmp/wapbox.log"
44 | #log-level = 0
45 | syslog-level = none
46 | #access-log = "/tmp/wapaccess.log"
47 |
48 |
--------------------------------------------------------------------------------
/gw/xml_shared.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pruiz/kannel/cdbcfc129ab1f0cb301df741131bccf20d39c17f/gw/xml_shared.c
--------------------------------------------------------------------------------
/gw/xml_shared.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pruiz/kannel/cdbcfc129ab1f0cb301df741131bccf20d39c17f/gw/xml_shared.h
--------------------------------------------------------------------------------
/gwlib/charset.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pruiz/kannel/cdbcfc129ab1f0cb301df741131bccf20d39c17f/gwlib/charset.c
--------------------------------------------------------------------------------
/gwlib/dbpool.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pruiz/kannel/cdbcfc129ab1f0cb301df741131bccf20d39c17f/gwlib/dbpool.c
--------------------------------------------------------------------------------
/gwlib/dbpool_oracle.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pruiz/kannel/cdbcfc129ab1f0cb301df741131bccf20d39c17f/gwlib/dbpool_oracle.c
--------------------------------------------------------------------------------
/gwlib/gw_uuid.h:
--------------------------------------------------------------------------------
1 | /*
2 | * Public include file for the UUID library
3 | *
4 | * Copyright (C) 1996, 1997, 1998 Theodore Ts'o.
5 | *
6 | * %Begin-Header%
7 | * This file may be redistributed under the terms of the GNU
8 | * Library General Public License.
9 | * %End-Header%
10 | */
11 |
12 | #ifndef _UUID_UUID_H
13 | #define _UUID_UUID_H
14 |
15 | #include
16 | #include
17 | #include
18 |
19 | #define UUID_STR_LEN 36
20 |
21 | #ifdef DARWIN
22 |
23 | #ifndef _POSIX_C_SOURCE
24 | #ifndef _UUID_T
25 | #define _UUID_T
26 | typedef __darwin_uuid_t uuid_t;
27 | #endif /* _UUID_T */
28 | #endif /* _POSIX_C_SOURCE */
29 |
30 | #else
31 |
32 | typedef unsigned char uuid_t[16];
33 |
34 | #endif
35 |
36 | /* UUID Variant definitions */
37 | #define UUID_VARIANT_NCS 0
38 | #define UUID_VARIANT_DCE 1
39 | #define UUID_VARIANT_MICROSOFT 2
40 | #define UUID_VARIANT_OTHER 3
41 |
42 | #ifdef __cplusplus
43 | extern "C" {
44 | #endif
45 |
46 | /* initialize uuid library */
47 | void uuid_init(void);
48 |
49 | /* shutdown uuid library */
50 | void uuid_shutdown(void);
51 |
52 | /* clear.c */
53 | void uuid_clear(uuid_t uu);
54 |
55 | /* compare.c */
56 | int uuid_compare(const uuid_t uu1, const uuid_t uu2);
57 |
58 | /* copy.c */
59 | void uuid_copy(uuid_t dst, const uuid_t src);
60 |
61 | /* gen_uuid.c */
62 | void uuid_generate(uuid_t out);
63 | void uuid_generate_random(uuid_t out);
64 | void uuid_generate_time(uuid_t out);
65 |
66 | /* isnull.c */
67 | int uuid_is_null(const uuid_t uu);
68 |
69 | /* parse.c */
70 | int uuid_parse(const char *in, uuid_t uu);
71 |
72 | /* unparse.c */
73 | void uuid_unparse(const uuid_t uu, char *out);
74 |
75 | /* uuid_time.c */
76 | time_t uuid_time(const uuid_t uu, struct timeval *ret_tv);
77 | int uuid_type(const uuid_t uu);
78 | int uuid_variant(const uuid_t uu);
79 |
80 | #ifdef __cplusplus
81 | }
82 | #endif
83 |
84 | #endif /* _UUID_UUID_H */
85 |
--------------------------------------------------------------------------------
/gwlib/gw_uuid_types.h.in:
--------------------------------------------------------------------------------
1 | /*
2 | * If linux/types.h is already been included, assume it has defined
3 | * everything we need. (cross fingers) Other header files may have
4 | * also defined the types that we need.
5 | */
6 | #if (!defined(_LINUX_TYPES_H) && !defined(_BLKID_TYPES_H) && \
7 | !defined(_UUID_TYPES) && !defined(_EXT2_TYPES_H))
8 | #define _UUID_TYPES_H
9 |
10 | typedef unsigned char __u8;
11 | typedef signed char __s8;
12 |
13 | #if (@SIZEOF_INT@ == 8)
14 | typedef int __s64;
15 | typedef unsigned int __u64;
16 | #elif (@SIZEOF_LONG@ == 8)
17 | typedef long __s64;
18 | typedef unsigned long __u64;
19 | #elif (@SIZEOF_LONG_LONG@ == 8)
20 | #if defined(__GNUC__)
21 | typedef __signed__ long long __s64;
22 | #else
23 | typedef signed long long __s64;
24 | #endif
25 | typedef unsigned long long __u64;
26 | #endif
27 |
28 | #if (@SIZEOF_INT@ == 2)
29 | typedef int __s16;
30 | typedef unsigned int __u16;
31 | #elif (@SIZEOF_SHORT@ == 2)
32 | typedef short __s16;
33 | typedef unsigned short __u16;
34 | #else
35 | ?==error: undefined 16 bit type
36 | #endif
37 |
38 | #if (@SIZEOF_INT@ == 4)
39 | typedef int __s32;
40 | typedef unsigned int __u32;
41 | #elif (@SIZEOF_LONG@ == 4)
42 | typedef long __s32;
43 | typedef unsigned long __u32;
44 | #elif (@SIZEOF_SHORT@ == 4)
45 | typedef short __s32;
46 | typedef unsigned short __u32;
47 | #else
48 | ?== error: undefined 32 bit type
49 | #endif
50 |
51 | #endif /* _*_TYPES_H */
52 |
--------------------------------------------------------------------------------
/gwlib/xmlrpc.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pruiz/kannel/cdbcfc129ab1f0cb301df741131bccf20d39c17f/gwlib/xmlrpc.h
--------------------------------------------------------------------------------
/mkinstalldirs:
--------------------------------------------------------------------------------
1 | #! /bin/sh
2 | # mkinstalldirs --- make directory hierarchy
3 | # Author: Noah Friedman
4 | # Created: 1993-05-16
5 | # Public domain
6 |
7 | # $Id: mkinstalldirs,v 1.1 1999-12-30 14:58:54 liw Exp $
8 |
9 | errstatus=0
10 |
11 | for file
12 | do
13 | set fnord `echo ":$file" | sed -ne 's/^:\//#/;s/^://;s/\// /g;s/^#/\//;p'`
14 | shift
15 |
16 | pathcomp=
17 | for d
18 | do
19 | pathcomp="$pathcomp$d"
20 | case "$pathcomp" in
21 | -* ) pathcomp=./$pathcomp ;;
22 | esac
23 |
24 | if test ! -d "$pathcomp"; then
25 | echo "mkdir $pathcomp"
26 |
27 | mkdir "$pathcomp" || lasterr=$?
28 |
29 | if test ! -d "$pathcomp"; then
30 | errstatus=$lasterr
31 | fi
32 | fi
33 |
34 | pathcomp="$pathcomp/"
35 | done
36 | done
37 |
38 | exit $errstatus
39 |
40 | # mkinstalldirs ends here
41 |
--------------------------------------------------------------------------------
/soap/env.c:
--------------------------------------------------------------------------------
1 | /* ====================================================================
2 | * The Kannel Software License, Version 1.0
3 | *
4 | * Copyright (c) 2001-2013 Kannel Group
5 | * Copyright (c) 1998-2001 WapIT Ltd.
6 | * All rights reserved.
7 | *
8 | * Redistribution and use in source and binary forms, with or without
9 | * modification, are permitted provided that the following conditions
10 | * are met:
11 | *
12 | * 1. Redistributions of source code must retain the above copyright
13 | * notice, this list of conditions and the following disclaimer.
14 | *
15 | * 2. Redistributions in binary form must reproduce the above copyright
16 | * notice, this list of conditions and the following disclaimer in
17 | * the documentation and/or other materials provided with the
18 | * distribution.
19 | *
20 | * 3. The end-user documentation included with the redistribution,
21 | * if any, must include the following acknowledgment:
22 | * "This product includes software developed by the
23 | * Kannel Group (http://www.kannel.org/)."
24 | * Alternately, this acknowledgment may appear in the software itself,
25 | * if and wherever such third-party acknowledgments normally appear.
26 | *
27 | * 4. The names "Kannel" and "Kannel Group" must not be used to
28 | * endorse or promote products derived from this software without
29 | * prior written permission. For written permission, please
30 | * contact org@kannel.org.
31 | *
32 | * 5. Products derived from this software may not be called "Kannel",
33 | * nor may "Kannel" appear in their name, without prior written
34 | * permission of the Kannel Group.
35 | *
36 | * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
37 | * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
38 | * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
39 | * DISCLAIMED. IN NO EVENT SHALL THE KANNEL GROUP OR ITS CONTRIBUTORS
40 | * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY,
41 | * OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT
42 | * OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
43 | * BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
44 | * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
45 | * OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
46 | * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
47 | * ====================================================================
48 | *
49 | * This software consists of voluntary contributions made by many
50 | * individuals on behalf of the Kannel Group. For more information on
51 | * the Kannel Group, please see .
52 | *
53 | * Portions of this software are based upon software originally written at
54 | * WapIT Ltd., Helsinki, Finland for the Kannel project.
55 | */
56 |
57 | /*
58 | * env.c
59 | */
60 |
61 | #include "envH.h"
62 |
63 | /* dummy namespaces to prevent link errors when not using WITH_NONAMSPACES */
64 | SOAP_NMAC struct Namespace namespaces[] =
65 | {
66 | {NULL, NULL, NULL, NULL}
67 | };
68 |
--------------------------------------------------------------------------------
/soap/env.h:
--------------------------------------------------------------------------------
1 | /* ====================================================================
2 | * The Kannel Software License, Version 1.0
3 | *
4 | * Copyright (c) 2001-2013 Kannel Group
5 | * Copyright (c) 1998-2001 WapIT Ltd.
6 | * All rights reserved.
7 | *
8 | * Redistribution and use in source and binary forms, with or without
9 | * modification, are permitted provided that the following conditions
10 | * are met:
11 | *
12 | * 1. Redistributions of source code must retain the above copyright
13 | * notice, this list of conditions and the following disclaimer.
14 | *
15 | * 2. Redistributions in binary form must reproduce the above copyright
16 | * notice, this list of conditions and the following disclaimer in
17 | * the documentation and/or other materials provided with the
18 | * distribution.
19 | *
20 | * 3. The end-user documentation included with the redistribution,
21 | * if any, must include the following acknowledgment:
22 | * "This product includes software developed by the
23 | * Kannel Group (http://www.kannel.org/)."
24 | * Alternately, this acknowledgment may appear in the software itself,
25 | * if and wherever such third-party acknowledgments normally appear.
26 | *
27 | * 4. The names "Kannel" and "Kannel Group" must not be used to
28 | * endorse or promote products derived from this software without
29 | * prior written permission. For written permission, please
30 | * contact org@kannel.org.
31 | *
32 | * 5. Products derived from this software may not be called "Kannel",
33 | * nor may "Kannel" appear in their name, without prior written
34 | * permission of the Kannel Group.
35 | *
36 | * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
37 | * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
38 | * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
39 | * DISCLAIMED. IN NO EVENT SHALL THE KANNEL GROUP OR ITS CONTRIBUTORS
40 | * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY,
41 | * OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT
42 | * OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
43 | * BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
44 | * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
45 | * OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
46 | * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
47 | * ====================================================================
48 | *
49 | * This software consists of voluntary contributions made by many
50 | * individuals on behalf of the Kannel Group. For more information on
51 | * the Kannel Group, please see .
52 | *
53 | * Portions of this software are based upon software originally written at
54 | * WapIT Ltd., Helsinki, Finland for the Kannel project.
55 | */
56 |
57 | #import "env_header.h" /* optional user-defined headers */
58 | #import "env_fault.h" /* optional user-defined fault details */
59 |
--------------------------------------------------------------------------------
/soap/env_fault.h:
--------------------------------------------------------------------------------
1 | /* fault.h
2 |
3 | Defines optional SOAP Fault derail data structures
4 |
5 | Copyright (C) 2000-2004 Robert A. van Engelen. All Rights Reserved.
6 | */
7 |
8 | /*
9 |
10 | Add any data structure you want to serialize as part of the SOAP Fault detail
11 | element. The detail element '__type' and 'value' fields should be set to
12 | transmit data. The fields are set when data of corresponding types are received.
13 |
14 | For example, we define an of name with a string vector
15 | (note the leading _ in the following declaration):
16 |
17 | class _f__myData
18 | { public:
19 | std::vector *data;
20 | };
21 |
22 | To return a fault from your service application:
23 |
24 | soap_sender_fault(soap, "An error occurred", NULL)); // set soap fault
25 | soap->fault->detail = (struct SOAP_ENV__Detail*)soap_malloc(soap, sizeof(struct SOAP_ENV__Fault));
26 | soap->fault->detail->__type = SOAP_TYPE__f__myData;
27 | soap->fault->detail->value = soap_new__f__myData(soap, -1);
28 | return SOAP_FAULT;
29 |
30 | In addition, you can modify the SOAP_ENV__Detail struct and add your own set
31 | of fields, as in:
32 |
33 | struct SOAP_ENV__Detail
34 | { struct f__myDataType f__myData;
35 | int __type;
36 | void *value;
37 | char *__any;
38 | };
39 |
40 | */
41 |
--------------------------------------------------------------------------------
/soap/env_header.h:
--------------------------------------------------------------------------------
1 | /******************************************************************************\
2 | * *
3 | * Import *
4 | * *
5 | \******************************************************************************/
6 |
7 | #import "wsse.h" // wsse =
8 |
9 | /******************************************************************************\
10 | * *
11 | * SOAP Header *
12 | * *
13 | \******************************************************************************/
14 |
15 | /**
16 | The SOAP Header is part of the gSOAP context and its content is accessed
17 | through the soap.header variable. You may have to set the soap.actor variable
18 | to serialize SOAP Headers with SOAP-ENV:actor or SOAP-ENV:role attributes.
19 | */
20 |
21 | struct SOAP_ENV__Header
22 | {
23 | mustUnderstand // must be understood by receiver
24 | _wsse__Security *wsse__Security; ///< TODO: Check element type (imported type)
25 | };
26 |
--------------------------------------------------------------------------------
/soap/service/parlayx/typemap.dat:
--------------------------------------------------------------------------------
1 | px1 = "(default)"
2 | pxSmsSend = "http://www.csapi.org/schema/parlayx/sms/send/v2_1/local"
3 | px3 = ""
4 | pxCommon = "http://www.csapi.org/schema/parlayx/common/v2_1"
5 | pxSms = "http://www.csapi.org/schema/parlayx/sms/v2_1"
6 | pxSmsNotification = "http://www.csapi.org/schema/parlayx/sms/notification/v2_1/local"
7 | pxSmsReceive = "http://www.csapi.org/schema/parlayx/sms/receive/v2_1/local"
8 |
--------------------------------------------------------------------------------
/soap/service/parlayx/wsdl/parlayx_common_faults_2_0.wsdl:
--------------------------------------------------------------------------------
1 |
2 |
3 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
--------------------------------------------------------------------------------
/soap/service/parlayx/wsdl/parlayx_common_types_2_1.xsd:
--------------------------------------------------------------------------------
1 |
2 |
3 |
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 |
--------------------------------------------------------------------------------
/soap/service/parlayx/wsdl/parlayx_sms_notification_service_2_1.wsdl:
--------------------------------------------------------------------------------
1 |
2 |
3 |
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 |
--------------------------------------------------------------------------------
/soap/service/parlayx/wsdl/parlayx_sms_receive_interface_2_1.wsdl:
--------------------------------------------------------------------------------
1 |
2 |
3 |
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 |
--------------------------------------------------------------------------------
/soap/service/parlayx/wsdl/parlayx_sms_receive_service_2_1.wsdl:
--------------------------------------------------------------------------------
1 |
2 |
3 |
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 |
--------------------------------------------------------------------------------
/soap/service/parlayx/wsdl/parlayx_sms_types_2_1.xsd:
--------------------------------------------------------------------------------
1 |
2 |
3 |
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 |
--------------------------------------------------------------------------------
/solaris/copyright:
--------------------------------------------------------------------------------
1 | This is Kannel, packaged for Solaris by Derry Hamilton
2 | .
3 |
4 | Original author is the Kannel project, see http://www.kannel.org,
5 | run by WapIT Ltd, see http://www.wapit.com.
6 |
7 | Copyright (c) 1998 WAPIT OY LTD.
8 | All rights reserved.
9 |
10 | Redistribution and use in source and binary forms, with or without
11 | modification, are permitted provided that the following conditions
12 | are met:
13 |
14 | 1. Redistributions of source code must retain the above copyright notice,
15 | this list of conditions and the following disclaimer.
16 |
17 | 2. Redistributions in binary form must reproduce the above copyright
18 | notice, this list of conditions and the following disclaimer in the
19 | documentation and/or other materials provided with the distribution.
20 |
21 | 3. All advertising materials mentioning features or use of this software
22 | must display the following acknowledgement: This product includes software
23 | developed by WAPIT OY LTD.
24 |
25 | 4. The name of the author may not be used to endorse or promote products
26 | derived from this software without specific prior written permission.
27 |
28 |
29 | THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
30 | IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
31 | OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
32 | IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
33 | INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
34 | BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
35 | USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
36 | ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
37 | (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
38 | OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
39 |
--------------------------------------------------------------------------------
/solaris/etc/kannel.conf:
--------------------------------------------------------------------------------
1 | #
2 | # Sample configuration file for Kannel on Solaris.
3 | # See the documentation for explanations of fields.
4 | #
5 |
6 | group = core
7 | admin-port = 13000
8 | admin-password = bar
9 | wapbox-port = 13002
10 | wdp-interface-name = "*"
11 | #log-file = "/tmp/kannel.log"
12 | #log-level = 0
13 | box-deny-ip = "*.*.*.*"
14 | box-allow-ip = "127.0.0.1"
15 | admin-deny-ip = "*.*.*.*"
16 | #admin-allow-ip = "127.0.0.1"
17 |
18 | group = wapbox
19 | bearerbox-host = localhost
20 | #log-file = "/tmp/wapbox.log"
21 | #log-level = 0
22 | syslog-level = none
23 |
24 |
--------------------------------------------------------------------------------
/solaris/mk-solaris-package.sh:
--------------------------------------------------------------------------------
1 | #!/bin/sh
2 |
3 | VERSION=`head -1 ../VERSION`
4 | export VERSION
5 | DATE=`date +%Y-%m-%d`
6 |
7 | echo Making WAkannel-${VERSION}.pkg
8 | cd ..
9 | make
10 | make install
11 | cd solaris
12 | sed "s/VERSION_NUM/${VERSION}/" < prototype.tmpl > prototype
13 | sed "s/VERSION_NUM/${VERSION}/" < pkginfo.tmpl > pkginfo
14 | TRG=./kannel
15 | mkdir ${TRG}
16 | mkdir ${TRG}/bin
17 | mkdir ${TRG}/sbin
18 | mkdir ${TRG}/man
19 | cp ../wmlscript/wmlsc ${TRG}/bin/wmlsc-${VERSION}
20 | cp ../wmlscript/wmlsdasm ${TRG}/bin/wmlsdasm-${VERSION}
21 | cp ../utils/seewbmp ${TRG}/bin/seewbmp-${VERSION}
22 | cp ../gw/bearerbox ${TRG}/sbin/bearerbox-${VERSION}
23 | cp ../gw/smsbox ${TRG}/sbin/smsbox-${VERSION}
24 | cp ../gw/wapbox ${TRG}/sbin/wapbox-${VERSION}
25 | cp ../utils/run_kannel_box ${TRG}/sbin/run_kannel_box-${VERSION}
26 | cp ../utils/seewbmp.1 ${TRG}/man/man1/seewbmp.1
27 | cp ../wmlscript/wmlsc.1 ${TRG}/man/man1/wmlsc.1
28 | cp ../wmlscript/wmlsdasm.1 ${TRG}/man/man1/wmlsdasm.1
29 | cp ../gw/kannel.8 ${TRG}/man/man8/kannel.8
30 | cp ../utils/run_kannel_box.8 ${TRG}/man/man8/run_kannel_box.8
31 |
32 | pkgmk -r `pwd` -d . -o
33 | pkgtrans . WAkannel-${VERSION}.pkg WAkannel-${VERSION}
34 |
--------------------------------------------------------------------------------
/solaris/pkginfo.tmpl:
--------------------------------------------------------------------------------
1 | PKG="WAkannel-VERSION_NUMBER"
2 | NAME="kannel"
3 | ARCH="sparc"
4 | VERSION="cvs"
5 | CATEGORY="application"
6 | VENDOR="Kannel project"
7 | EMAIL="andreas@fink.org"
8 | PSTAMP="Andreas Fink"
9 | BASEDIR="/usr/local"
10 | CLASSES="none"
11 |
--------------------------------------------------------------------------------
/solaris/prototype.tmpl:
--------------------------------------------------------------------------------
1 | i pkginfo=./pkginfo
2 | f none kannel/bin/wmlsc-VERSION_NUM 0755 bin bin
3 | f none kannel/bin/wmlsdasm-VERSION_NUM 0755 bin bin
4 | f none kannel/bin/seewbmp-VERSION_NUM 0755 bin bin
5 | f none kannel/sbin/bearerbox-VERSION_NUM 0755 bin bin
6 | f none kannel/sbin/smsbox-VERSION_NUM 0755 bin bin
7 | f none kannel/sbin/wapbox-VERSION_NUM 0755 bin bin
8 | f none kannel/sbin/run_kannel_box-VERSION_NUM 0755 bin bin
9 | f none kannel/man/man1/seewbmp.1 0755 bin bin
10 | f none kannel/man/man1/wmlsc.1 0755 bin bin
11 | f none kannel/man/man1/wmlsdasm.1 0755 bin bin
12 | f none kannel/man/man8/kannel.8 0755 bin bin
13 | f none kannel/man/man8/run_kannel_box.8 0755 bin bin
14 | f none etc/kannel.conf 0664 bin bin
15 |
--------------------------------------------------------------------------------
/solaris/readme.txt:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pruiz/kannel/cdbcfc129ab1f0cb301df741131bccf20d39c17f/solaris/readme.txt
--------------------------------------------------------------------------------
/test/blacklist.txt:
--------------------------------------------------------------------------------
1 | +35897734896
2 | +35893781250
3 |
--------------------------------------------------------------------------------
/test/bookmark.txt:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/test/chartest.html:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pruiz/kannel/cdbcfc129ab1f0cb301df741131bccf20d39c17f/test/chartest.html
--------------------------------------------------------------------------------
/test/dlr-receiver.py:
--------------------------------------------------------------------------------
1 | #
2 | # Copyright (c) 2004 MNC S.A.
3 | #
4 | # This program is open-source and released under
5 | # the Kannel Software License, Version 1.0. Please see
6 | # LICENSE from the main Kannel distribution sources.
7 | #
8 |
9 | import sys
10 | import re
11 | from socket import *
12 |
13 | port = 6666
14 |
15 | # you may optionally specify on commandline the port to use
16 | if len( sys.argv ) == 2:
17 | port = int( sys.argv[1] )
18 |
19 | # create the socket which will represent the server endpoint
20 | sock = socket( AF_INET, SOCK_STREAM, 0 )
21 |
22 | # allow socket to reuse a port address not fully closed; necessary
23 | # when relaunching the server program quickly several times; see
24 | # http://hea-www.harvard.edu/~fine/Tech/addrinuse.html
25 | sock.setsockopt( SOL_SOCKET, SO_REUSEADDR, 1 )
26 |
27 | # assign the local address to the socket (127.0.0.1 specifies to only
28 | # accept connections from the local machine, not from the network
29 | sock.bind( ( '127.0.0.1', port ) )
30 |
31 | # tell that we're willing to accept new connections */
32 | sock.listen( 1 )
33 |
34 | print 'Listening for connections on port %d...' % port
35 |
36 | while 1:
37 | # accept the incoming connection, obtaining the file-descriptor
38 | # representing the connection
39 | fd, addr = sock.accept()
40 |
41 | # read data sent by the client
42 | buf = ''
43 | while 1:
44 | data = fd.recv( 10000 )
45 | # print received data on console while it's received
46 | sys.stdout.write( data )
47 | buf += data
48 |
49 | match = re.search( r'\r\n\r\n', buf )
50 | if match:
51 | break
52 |
53 | print '-=-=--'
54 |
55 | response = "HTTP/1.1 200 OK\r\n"
56 | response += "Connection: close\r\n"
57 | response += "\r\n"
58 | response += "Ok."
59 |
60 | fd.send( response )
61 |
62 | # we're done
63 | fd.close()
64 |
--------------------------------------------------------------------------------
/test/drive_smpp.conf:
--------------------------------------------------------------------------------
1 | group = core
2 | admin-port = 13000
3 | smsbox-port = 13001
4 | admin-password = bar
5 | log-file = "check_smpp_bb.log"
6 | box-deny-ip = "*.*.*.*"
7 | box-allow-ip = "127.0.0.1"
8 | access-log = /dev/stdout
9 |
10 | group = smsc
11 | smsc = smpp
12 | smsc-id = smpp
13 | host = 127.0.0.1
14 | port = 2345
15 | receive-port = 2345
16 | system-type = "VMA"
17 | address-range = ""
18 | smsc-username = "foo"
19 | smsc-password = "bar"
20 |
21 | group = smpp-tlv
22 | name = my_receipted_message_id
23 | tag = 0x001E
24 | type = octetstring
25 | length = 65
26 | #smsc-id = smpp
27 |
28 | group = smsbox
29 | bearerbox-host = 127.0.0.1
30 | sendsms-port = 13013
31 | global-sender = 123
32 | log-file = "smsbox.log"
33 |
34 | group = sms-service
35 | keyword = default
36 | text = "No service specified"
37 |
--------------------------------------------------------------------------------
/test/hello.wml:
--------------------------------------------------------------------------------
1 |
2 |
4 |
5 |
6 | Hello, world.
7 |
8 |
9 |
--------------------------------------------------------------------------------
/test/html-test-1:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pruiz/kannel/cdbcfc129ab1f0cb301df741131bccf20d39c17f/test/html-test-1
--------------------------------------------------------------------------------
/test/http2-test-urls:
--------------------------------------------------------------------------------
1 | http://localhost
2 | http://www.kannel.org
3 | http://www.wapit.com
4 | http://www.wapit.com/~liw/hello.wml
5 | http://www.wapit.com/~liw/cgi-bin/rafla.cgi?pattern=pihvi
6 |
--------------------------------------------------------------------------------
/test/iptestppg.txt:
--------------------------------------------------------------------------------
1 |
2 |
4 |
5 |
8 |
9 |
10 |
17 |
18 |
19 |
20 |
--------------------------------------------------------------------------------
/test/mime-multipart.txt:
--------------------------------------------------------------------------------
1 | Content-Type: multipart/related; start=; boundary=my_boundary
2 | X-Some-Header: Some-Value
3 | MIME-Version: 1.0
4 |
5 |
6 | --my_boundary
7 | Content-Type: text/plain
8 |
9 | this is the text in this entity
10 |
11 | --my_boundary
12 | Content-Type: multipart/mixed; boundary=mms_boundary
13 | MIME-Version: 1.0
14 |
15 |
16 | --mms_boundary
17 | Content-Type: text/plain
18 |
19 | this is the mms message text
20 |
21 | --mms_boundary
22 | Content-Type: application/xml
23 |
24 |
25 |
27 |
28 |
29 |
30 |
31 |
32 |
33 |
34 |
35 | --mms_boundary--
36 |
37 | --my_boundary--
38 |
--------------------------------------------------------------------------------
/test/run-http2-tests.sh:
--------------------------------------------------------------------------------
1 | #!/bin/sh
2 | #
3 | # Compare lynx -source output and test_http output on a number of URLs.
4 | #
5 | # Lars Wirzenius
6 |
7 | for url in `cat test/http-test-urls`
8 | do
9 | echo "Testing $url..."
10 | lynx -source "$url" > lynx.tmp
11 | test/test_http -s "$url" > http.tmp
12 | test/test_http -s "$url" > http2.tmp
13 | if diff -u lynx.tmp http.tmp >/dev/null &&
14 | diff -u lynx.tmp http2.tmp > /dev/null
15 | then
16 | :
17 | else
18 | echo "Lynx and test_http disagree. Oops."
19 | echo "URL is <$url>."
20 | echo "See lynx.tmp and http2.tmp."
21 | exit 1
22 | fi
23 | done
24 | echo "All tests passed. Very good."
25 | rm -f lynx.tmp http.tmp http2.tmp
26 |
--------------------------------------------------------------------------------
/test/settings4.txt:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
19 |
20 |
21 |
22 |
23 |
24 |
--------------------------------------------------------------------------------
/test/si.txt:
--------------------------------------------------------------------------------
1 |
2 |
4 |
5 |
10 | You have 4 new emails
11 |
12 |
13 |
--------------------------------------------------------------------------------
/test/sl.txt:
--------------------------------------------------------------------------------
1 |
2 |
4 |
7 |
--------------------------------------------------------------------------------
/test/smstestppg.txt:
--------------------------------------------------------------------------------
1 |
2 |
4 |
5 |
8 |
9 |
10 |
17 |
18 |
19 |
20 |
--------------------------------------------------------------------------------
/test/test_hmac.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pruiz/kannel/cdbcfc129ab1f0cb301df741131bccf20d39c17f/test/test_hmac.c
--------------------------------------------------------------------------------
/test/test_mime.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pruiz/kannel/cdbcfc129ab1f0cb301df741131bccf20d39c17f/test/test_mime.c
--------------------------------------------------------------------------------
/test/test_ota.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pruiz/kannel/cdbcfc129ab1f0cb301df741131bccf20d39c17f/test/test_ota.c
--------------------------------------------------------------------------------
/test/test_pap.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pruiz/kannel/cdbcfc129ab1f0cb301df741131bccf20d39c17f/test/test_pap.c
--------------------------------------------------------------------------------
/test/test_ppg.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pruiz/kannel/cdbcfc129ab1f0cb301df741131bccf20d39c17f/test/test_ppg.c
--------------------------------------------------------------------------------
/test/test_si.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pruiz/kannel/cdbcfc129ab1f0cb301df741131bccf20d39c17f/test/test_si.c
--------------------------------------------------------------------------------
/test/test_sl.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pruiz/kannel/cdbcfc129ab1f0cb301df741131bccf20d39c17f/test/test_sl.c
--------------------------------------------------------------------------------
/test/testcase.wml:
--------------------------------------------------------------------------------
1 |
2 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 | This is a testing page with lots of tests.
18 |
19 |
20 | Try picking one up:
21 |
35 |
36 |
37 |
38 |
39 | Do not panic.
40 |
41 |
42 |
43 |
--------------------------------------------------------------------------------
/test/whitelist.txt:
--------------------------------------------------------------------------------
1 | +358408676001
2 | +358408201681
3 |
--------------------------------------------------------------------------------
/utils/build-cygwin-package:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 |
3 | if [ ! -d "gw" ] ; then
4 | echo "Must be ran in gateway dir"
5 | exit 1
6 | fi
7 |
8 | BUILDDIR=/tmp/kannel
9 |
10 | if [ -d "$BUILDDIR" ] ; then
11 | rm -fr "$BUILDDIR"
12 | fi
13 |
14 | mkdir "$BUILDDIR"
15 |
16 | mkdir "$BUILDDIR/bin"
17 | cp gw/*.exe "$BUILDDIR/bin" -v
18 |
19 | mkdir "$BUILDDIR/conf"
20 | for i in doc/examples/*.conf ; do
21 | cp $i "$BUILDDIR/conf" -v
22 | done
23 |
24 | mkdir "$BUILDDIR/tools"
25 | for i in test utils wmlscript ; do
26 | mkdir "$BUILDDIR/tools/$i"
27 | cp $i/*.exe "$BUILDDIR/tools/$i" -v
28 | done
29 |
30 | if [ -e doc/userguide/userguide.pdf ] ; then
31 | mkdir "$BUILDDIR/docs"
32 | for i in userguide alligata arch wtls ; do
33 | mkdir "$BUILDDIR/docs/$i"
34 | cp doc/$i/*.pdf \
35 | doc/$i/*.rtf \
36 | doc/$i/*.png \
37 | "$BUILDDIR/docs/$i"
38 | done
39 | fi
40 |
41 | (cd "$BUILDDIR" ; zip -r kannel.zip *)
42 | echo "kannel.zip is on $BUILDDIR"
43 |
--------------------------------------------------------------------------------
/utils/changelog-report:
--------------------------------------------------------------------------------
1 | #!/bin/sh
2 | #
3 | # changelog-report - Report changes to ChangeLog
4 | #
5 | # DO NOT RUN THIS SCRIPT unless you make damn sure the e-mail address points
6 | # at somewhere who wants to receive it.
7 | #
8 | # This script reports changes to the ChangeLog file in the Kannel CVS
9 | # repository.
10 | #
11 | # Lars Wirzenius
12 | #
13 |
14 | set -e
15 |
16 | addr=""
17 | workdir="$HOME/gateway"
18 |
19 | tmp=ChangeLog.temp
20 |
21 | cd $workdir
22 | cvs -Q update ChangeLog
23 | diff -w -b -B -t ChangeLog.old ChangeLog | sed -n '/^> /s///p' >> $tmp || true
24 | if test -s $tmp
25 | then
26 | (
27 | echo 'Changes to gateway ChangeLog.'
28 | echo ''
29 | cat $tmp
30 | ) | mail -s 'ChangeLog update' $addr
31 | fi
32 | cp ChangeLog ChangeLog.old
33 | rm -f $tmp
34 |
--------------------------------------------------------------------------------
/utils/chlog-stats:
--------------------------------------------------------------------------------
1 | #!/usr/bin/awk -f
2 | #
3 | # Compute some simple statistics from a ChangeLog file. Output has several
4 | # columns:
5 | #
6 | # 1) number of changelog entries
7 | # 2) total lines in changelog entries
8 | # 3) average lines per entry
9 | # 4) username
10 | #
11 | # Output is not sorted. Use "sort -n" to sort.
12 | #
13 | # Lars Wirzenius
14 |
15 | /^[a-zA-Z0-9]/ {
16 | match($NF, /<.*@/)
17 | who = substr($NF, RSTART+1, RLENGTH-2)
18 | if (who == "") who = $NF
19 | entries[who]++
20 | next
21 | }
22 |
23 | /[^ ]/ { lines[who]++ }
24 |
25 | END {
26 | for (who in entries)
27 | printf "%4d %4d %.1f %s\n", entries[who], lines[who],
28 | lines[who]/entries[who], who
29 | }
30 |
--------------------------------------------------------------------------------
/utils/daily-patch:
--------------------------------------------------------------------------------
1 | #!/bin/sh
2 | #
3 | # daily-patch - generate and e-mail the daily patch for Kannel
4 | #
5 | # DO NOT RUN THIS SCRIPT, unless you know the recipient and the CVS maintainer
6 | # want you to.
7 | #
8 | # Make a "daily patch", or actually just a patch from the previous time
9 | # this script was run.
10 | #
11 | # Lars Wirzenius
12 | #
13 |
14 | set -e
15 |
16 | addr=""
17 | CVSROOT=":pserver:anonymoua@cvs.kannel.org:/home/cvs"
18 |
19 | tagsuffix="debug"
20 | newtag="new_daily_patch_tag$tagsuffix"
21 | tag="daily_patch_tag$tagsuffix"
22 |
23 | temp=/tmp/daily-patch.$$
24 |
25 | for module in "$@"
26 | do
27 | cvs -Q -d$CVSROOT rtag -F -a -D now $newtag $module
28 | rm -f $temp
29 | cvs -Q -d$CVSROOT rdiff -s -r $tag -r $newtag -u $module >> $temp
30 | if [ -s "$temp" ]
31 | then
32 | echo "" >> $temp
33 | echo "" >> $temp
34 | echo "" >> $temp
35 | cvs -Q -d$CVSROOT rdiff -r $tag -r $newtag -u $module |
36 | awk '/^Index: / {
37 | if ($2 == "gateway/configure") hide = 1
38 | else hide = 0
39 | }
40 | !hide { print $0 }' >> $temp
41 | cat $temp
42 | else
43 | echo "No changes in $module since yesterday."
44 | fi | mail -s "Daily patch: $module" $addr
45 | rm -f $temp
46 |
47 | cvs -Q -d$CVSROOT rtag -F -a -r $newtag $tag $module
48 | done
49 |
--------------------------------------------------------------------------------
/utils/find-long-lines:
--------------------------------------------------------------------------------
1 | #!/bin/sh
2 | #
3 | # This script looks for long lines in source files in Kannel.
4 | #
5 | # Lars Wirzenius
6 |
7 | if [ ! -e /usr/bin/expand ]
8 | then
9 | # No expand -> we can't expand tabs -> let's just fail silently
10 | exit 0
11 | fi
12 |
13 | if [ -z "$1" ]
14 | then
15 | dirs="."
16 | else
17 | dirs="$@"
18 | fi
19 |
20 | find $dirs -type f ! -name '*.[oa]' ! -name '.*' ! -name '*.ps' ! \
21 | -name '*.html' ! -name '*.pdf' ! -name '*.rtf' ! \
22 | -name '*.png' ! -name core ! -name configure ! -name config.status \
23 | ! -name '*.log' ! -name '*.fig' |
24 | grep -v '/CVS/' |
25 | while read file
26 | do
27 | if file "$file" | grep executable >/dev/null
28 | then
29 | :
30 | else
31 | expand $file |
32 | awk -vfile="$file" 'length > 78 { print file ":" NR ":" $0 }'
33 | fi
34 | done
35 |
--------------------------------------------------------------------------------
/utils/foobar-config.sh:
--------------------------------------------------------------------------------
1 | #!/bin/sh
2 | #
3 | # foobar-config.sh -- a generic foobar-config shell script generator
4 | #
5 | # This generator takes 3 arguments and creates a foobar-config shell
6 | # scirpt that is used to determine the common CFLAGS for compiling
7 | # again this foobar package, LIBS for linking against dependency libs
8 | # and VERSION for displaying which version is used/installed.
9 | #
10 | # Derived from Ulric Eriksson from the libsdb project.
11 | #
12 | # Stipe Tolj
13 | #
14 |
15 | cat << EOF
16 | #!/bin/sh
17 |
18 | usage()
19 | {
20 | echo "usage: \$0 [--cflags] [--libs] [--version]"
21 | exit 0
22 | }
23 |
24 | cflags=no
25 | libs=no
26 | version=no
27 |
28 | test "\$1" || usage
29 |
30 | while test "\$1"; do
31 | case "\$1" in
32 | --cflags )
33 | cflags=yes
34 | ;;
35 | --libs )
36 | libs=yes
37 | ;;
38 | --version )
39 | version=yes
40 | ;;
41 | * )
42 | usage
43 | ;;
44 | esac
45 | shift
46 | done
47 |
48 | test "\$cflags" = yes && cat << FOO
49 | $1
50 | FOO
51 |
52 | test "\$libs" = yes && cat << FOO
53 | $2
54 | FOO
55 |
56 | test "\$version" = yes && cat << FOO
57 | $3
58 | FOO
59 |
60 | EOF
61 |
--------------------------------------------------------------------------------
/utils/kannel-init.d:
--------------------------------------------------------------------------------
1 | #!/bin/sh
2 | # Start/stop the Kannel boxes: One bearer box and one WAP box.
3 |
4 | # This is the default init.d script for Kannel. Its configuration is
5 | # appropriate for a small site running Kannel on one machine.
6 |
7 | # Make sure that the Kannel binaries can be found in $BOXPATH or somewhere
8 | # else along $PATH. run_kannel_box has to be in $BOXPATH.
9 |
10 | BOXPATH=/usr/bin
11 | PIDFILES=/var/run
12 | CONFDIR=/etc/kannel
13 | CONF=$CONFDIR/kannel.conf
14 |
15 | USER=kannel
16 | VERSION=""
17 | #VERSION="-0.12.4"
18 |
19 | RB=run_kannel_box$VERSION
20 | BB=bearerbox$VERSION
21 | WB=wapbox$VERSION
22 | SB=smsbox$VERSION
23 | SSD=start-stop-daemon$VERSION
24 |
25 | PATH=$BOXPATH:$PATH
26 |
27 | # On Debian, the most likely reason for the bearerbox not being available
28 | # is that the package is in the "removed" or "unconfigured" state, and the
29 | # init.d script is still around because it's a conffile. This is normal,
30 | # so don't generate any output.
31 | test -x $BOXPATH/$BB || exit 0
32 |
33 | case "$1" in
34 | start)
35 | echo -n "Starting WAP gateway: bearerbox"
36 | $SSD --start --quiet --pidfile $PIDFILES/kannel_bearerbox.pid --exec $RB -- --pidfile $PIDFILES/kannel_bearerbox.pid $BB -- $CONF
37 | echo -n " wapbox"
38 | $SSD --start --quiet --pidfile $PIDFILES/kannel_wapbox.pid --exec $RB -- --pidfile $PIDFILES/kannel_wapbox.pid $WB -- $CONF
39 | # echo -n " smsbox"
40 | # $SSD --start --quiet --pidfile $PIDFILES/kannel_smsbox.pid --exec $RB -- --pidfile $PIDFILES/kannel_smsbox.pid $SB -- $CONF
41 | echo "."
42 | ;;
43 |
44 | stop)
45 | echo -n "Stopping WAP gateway: wapbox"
46 | $SSD --stop --quiet --pidfile $PIDFILES/kannel_wapbox.pid --exec $RB
47 | # echo -n " smsbox"
48 | # $SSD --stop --quiet --pidfile $PIDFILES/kannel_smsbox.pid --exec $RB
49 | echo -n " bearerbox"
50 | $SSD --stop --quiet --pidfile $PIDFILES/kannel_bearerbox.pid --exec $RB
51 | echo "."
52 | ;;
53 |
54 | status)
55 | CORE_CONF=$(grep -r 'group[[:space:]]*=[[:space:]]*core' $CONFDIR | cut -d: -f1)
56 | ADMIN_PORT=$(grep '^admin-port' $CORE_CONF | sed "s/.*=[[:space:]]*//")
57 | ADMIN_PASS=$(grep '^admin-password' $CORE_CONF | sed "s/.*=[[:space:]]*//")
58 | STATUS_URL="http://127.0.0.1:${ADMIN_PORT}/status.txt?password=${ADMIN_PASS}"
59 | lynx -source $STATUS_URL
60 | ;;
61 |
62 | reload)
63 | # We don't have support for this yet.
64 | exit 1
65 | ;;
66 |
67 | restart|force-reload)
68 | $0 stop
69 | sleep 1
70 | $0 start
71 | ;;
72 |
73 | *)
74 | echo "Usage: $0 {start|stop|status|reload|restart|force-reload}"
75 | exit 1
76 |
77 | esac
78 |
79 | exit 0
80 |
--------------------------------------------------------------------------------
/utils/kannel-nag:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 | #
3 | # kannel-nag - do a test compile of Kannel and mail results to devel list
4 | #
5 | # This script is meant to compile Kannel and mail all warnings and errors
6 | # to the development list. It is meant to be run on a few carefully chosen
7 | # machines, not by everyone on the Internet. The goal is to make sure Kannel
8 | # at least compiles on many platforms. It is quite uninteresting to have
9 | # fiftyseven thousand people running this script on identical Linux machines.
10 | #
11 | # I repeat: DO NOT RUN THIS SCRIPT without asking for permission of the
12 | # receiver first.
13 | #
14 | # TODO:
15 | # - CFLAGS now set for GCC, should be more portable
16 | #
17 | # Lars Wirzenius
18 | #
19 |
20 | set -e
21 |
22 | addr=""
23 | CVSROOT=":pserver:anonymous@cvs.kannel.3glab.org:/home/cvs"
24 |
25 | dir="kannel-nag-dir"
26 |
27 | cd /var/tmp
28 | rm -rf $dir
29 | mkdir $dir
30 | cd $dir
31 | cvs -Q -d$CVSROOT co gateway
32 | cd gateway
33 | if CFLAGS='-Wall -O2 -g' ./configure >config.output 2>&1
34 | then
35 | configure=ok
36 | touch .depend || true
37 | make -s depend || true
38 | make -s >make.output 2>&1 || true
39 | else
40 | configure=failed
41 | fi
42 |
43 | if test -s make.output || [ "$configure" = failed ]
44 | then
45 | (
46 | echo "Kannel compilation test."
47 | echo ""
48 | echo "Host: `uname -a`"
49 | echo ""
50 | echo "Kannel compilation had warnings or failed."
51 | echo ""
52 | if test -e make.output
53 | then
54 | echo "Output of 'make -s':"
55 | cat make.output
56 | echo "-------------------------------------------------------"
57 | echo ""
58 | fi
59 | echo "Output of 'CFLAGS='-Wall -O2 -g' ./configure':"
60 | cat config.output
61 | ) | mail -s "Kannel automatic compilation test for `uname -s`" $addr
62 | fi
63 |
64 | cd /var/tmp
65 | rm -rf $dir
66 |
--------------------------------------------------------------------------------
/utils/kannel-redhat.init.d:
--------------------------------------------------------------------------------
1 | #!/bin/sh
2 | #
3 | # gateway This shell script takes care of starting and stopping
4 | # the Kannel WAP gateway (bearer/wapbox)
5 | # Fabrice Gatille
6 | # chkconfig: 2345 97 03
7 | # description: Start and stop the Kannel WAP gateway used to fetch \
8 | # some WML content from a Web server & compile it \
9 | # into WMLC mobile phone bytecode.
10 | # probe: true
11 |
12 | # Use start-stop-daemon
13 | ver=0.12.1
14 | START="start-stop-daemon-$ver -S --quiet -b -c web:web -x "
15 | CONF=/etc/wapkannel.conf
16 | [ $# -eq 2 ] && ver=$2
17 |
18 | # Source function library.
19 | . /etc/rc.d/init.d/functions
20 |
21 | # Source networking configuration.
22 | . /etc/sysconfig/network
23 |
24 | # Check that networking is up.
25 | [ ${NETWORKING} = "no" ] && exit 0
26 |
27 | [ -x /usr/local/bin/bearerbox-$ver ] || exit 0
28 |
29 | [ -x /usr/local/bin/wapbox-$ver ] || exit 0
30 |
31 | [ -f $CONF ] || exit 0
32 |
33 |
34 | RETVAL=0
35 |
36 | # See how we were called.
37 | case "$1" in
38 | start)
39 | # Start daemons.
40 | echo -n "Starting bearer service (gateway kannel $ver): "
41 | daemon --forcedaemon "$START" /usr/local/bin/bearerbox-$ver -- $CONF
42 | RETVAL1=$?
43 | echo
44 | echo -n "Starting wapbox service (gateway kannel $ver): "
45 | daemon --forcedaemon "$START" /usr/local/bin/wapbox-$ver -- $CONF
46 | RETVAL2=$?
47 | echo
48 | [ $RETVAL1 -eq 0 -a $RETVAL2 -eq 0 ] && touch /var/lock/subsys/gateway ||\
49 | RETVAL=1
50 | ;;
51 | stop)
52 | # Stop daemons.
53 | echo -n "Shutting down wapbox (kannel $ver): "
54 | killproc wapbox-$ver quiet
55 | RETVAL2=$?
56 | echo
57 | echo -n "Shutting down bearerbox (kannel $ver): "
58 | killproc bearerbox-$ver quiet
59 | RETVAL1=$?
60 | echo
61 | [ $RETVAL1 -eq 0 -a $RETVAL2 -eq 0 ] && rm -f /var/lock/subsys/gateway
62 | echo ""
63 | ;;
64 | status)
65 | status bearerbox-$ver
66 | status wapbox-$ver
67 | exit $?
68 | ;;
69 | restart)
70 | $0 stop
71 | sleep 1
72 | $0 start
73 | ;;
74 | *)
75 | echo "Usage: named {start|stop|status|restart}"
76 | exit 1
77 | esac
78 |
79 | exit $RETVAL
80 |
81 |
--------------------------------------------------------------------------------
/utils/makedist:
--------------------------------------------------------------------------------
1 | #!/bin/sh
2 | #
3 | # Create distribution files.
4 | #
5 | # Lars Wirzenius
6 |
7 | set -e
8 |
9 | version="$1"
10 | tag=version_`echo $version | tr .- __`
11 | base=gateway-$version
12 | repo="https://svn.kannel.org/gateway/tags/"
13 |
14 | rm -rf $base
15 | svn --quiet export ${repo}$tag $base
16 | if [ "`head -1 $base/VERSION`" != "$version" ]
17 | then
18 | echo "Oops, VERSION does not match."
19 | exit 1
20 | fi
21 |
22 | tar -c -z -f $base.tar.gz $base
23 | md5sum $base.tar.gz > $base.tar.gz.md5
24 | sha1sum $base.tar.gz > $base.tar.gz.sha1
25 | tar -c -j -f $base.tar.bz2 $base
26 | md5sum $base.tar.bz2 > $base.tar.bz2.md5
27 | sha1sum $base.tar.bz2 > $base.tar.bz2.sha1
28 | zip -9qr $base.zip $base/*
29 | md5sum $base.zip > $base.zip.md5
30 | sha1sum $base.zip > $base.zip.sha1
31 |
32 | (
33 | set -e
34 | cd $base
35 | ./configure --enable-docs >/dev/null
36 | touch .depend
37 | make -s depend
38 | make -s docs
39 | )
40 |
41 | cp -a $base/doc/arch arch-$version
42 | cp $base/doc/arch/arch.ps arch-$version.ps
43 | tar -c -z -f arch-$version.tar.gz arch-$version/*
44 | zip -9qr arch-$version.zip arch-$version/*
45 |
46 | cp -a $base/doc/userguide userguide-$version
47 | cp $base/doc/userguide/userguide.ps userguide-$version.ps
48 | tar -c -z -f userguide-$version.tar.gz userguide-$version/*
49 | zip -9qr userguide-$version.zip userguide-$version/*
50 |
51 | cp $base/NEWS NEWS-$version
52 | cp $base/README README-$version
53 | cp $base/ChangeLog ChangeLog-$version
54 |
--------------------------------------------------------------------------------
/utils/mtbatch.1:
--------------------------------------------------------------------------------
1 | .\" Hey, Emacs! This is an -*- nroff -*- source file.
2 | .TH MTBATCH 1 "22th January 2004" "Kannel Project" "Kannel Project"
3 | .SH NAME
4 | mtbatch \- Sends SMS in batch mode
5 | .SH SYNOPSIS
6 | .B mtbatch
7 | .IR "" [options] content-file receivers-file ...
8 | .SH DESCRIPTION
9 | .B mtbatch
10 | -v number
11 | set log level for stderr logging
12 | -b host
13 | defines the host of bearerbox (default: localhost)
14 | -p port
15 | the smsbox port to connect to (default: 13002)
16 | -s
17 | inidicatr to use SSL for bearerbox connection (default: no)
18 | -i smsbox-id
19 | defines the smsbox-id to be used for bearerbox connection (default: none)
20 | -f sender
21 | which sender address should be used
22 | -n service
23 | defines which service name should be logged (default: none)
24 | -a account
25 | defines which account name should be logged (default: none)
26 | -d seconds
27 | delay between message sending to bearerbox (default: 0)
28 | -r smsc-id
29 | use a specific route for the MT traffic
30 | .SH "SEE ALSO"
31 | .BR kannel (8)
32 |
--------------------------------------------------------------------------------
/utils/pixmapgen.pl:
--------------------------------------------------------------------------------
1 | #!/usr/bin/perl
2 |
3 | use strict;
4 |
5 | #
6 | # a short perl script to convert (almost) any pictures into WBMP pictures
7 | #
8 | # Kalle Marjola for WapIT Ltd. 1999
9 | #
10 | # USAGE: ./pixmapgen.pl SOURCE >TARGET
11 | #
12 | #
13 | # note: change following strings if needed to
14 | #
15 |
16 | my $temp_target = "/tmp/pmgen_tmp.mono"; # the program for mono->WBMP
17 | my $converter = "./test_wbmp"; # temporary file
18 |
19 | my $source = $ARGV[0];
20 |
21 | my $retval = `convert -verbose -monochrome $source $temp_target`;
22 | my ($width, $height) = ($retval =~ /$temp_target (\d+)x(\d+)/s);
23 |
24 | print `$converter $temp_target $width $height`;
25 |
26 |
--------------------------------------------------------------------------------
/utils/run-checks:
--------------------------------------------------------------------------------
1 | #!/bin/sh
2 | #
3 | # This script runs all the checks given in the command line. See the
4 | # README for more info.
5 | #
6 |
7 | rm -f check.log check.log.new
8 | for prog in "$@"
9 | do
10 | echo -n "Check: $prog..."
11 | $prog 2> check.log.new
12 | if test ! -s check.log.new
13 | then
14 | echo " OK."
15 | else
16 | echo " FAILURE!"
17 | echo "Check: $prog" >> check.log
18 | cat check.log.new >> check.log
19 | fi
20 | rm check.log.new
21 | done
22 |
23 | if test -s check.log
24 | then
25 | echo At least one check failed, see \`check.log\'.
26 | else
27 | echo All checks OK.
28 | rm -f check.log
29 | fi
30 |
--------------------------------------------------------------------------------
/utils/run_kannel_box.8:
--------------------------------------------------------------------------------
1 | .\" Hey, Emacs! This is an -*- nroff -*- source file.
2 | .TH RUN_KANNEL_BOX 8 "3rd October 2000" "Kannel Project" "Kannel Project"
3 | .SH NAME
4 | run_kannel_box \- Run a Kannel box
5 | .SH SYNOPSIS
6 | .B run_kannel_box
7 | .BR "" [ --pidfile
8 | .IR PIDFILE ]
9 | .BR "" [ --min-delay
10 | .IR SECONDS ]
11 | .I BOXPATH
12 | .IR "" [ boxoptions ...]
13 | .SH DESCRIPTION
14 | .B run_kannel_box
15 | runs a
16 | .BR kannel (8)
17 | box, i.e., one of the daemon programs of Kannel.
18 | is an WAP and SMS gateway.
19 | WAP is short for Wireless Application Protocol,
20 | and is used to implement hypertext based services on mobile phones.
21 | SMS is short for Short Message Service,
22 | and is used to send and recive short (up to 160 characters) text messages
23 | with mobile phones.
24 | SMS can also be used to implement simple text based services on mobile
25 | phones.
26 | .PP
27 | For more information,
28 | see
29 | .B http://www.kannel.org
30 | or
31 | .BR file://usr/doc/kannel/ .
32 |
--------------------------------------------------------------------------------
/utils/seewbmp.1:
--------------------------------------------------------------------------------
1 | .\" Hey, Emacs! This is an -*- nroff -*- source file.
2 | .TH SEEWBMP 1 "3rd October 2000" "Kannel Project" "Kannel Project"
3 | .SH NAME
4 | seewbmp \- Convert a WBMP wireless bitmap to textual format
5 | .SH SYNOPSIS
6 | .B seewbmp
7 | .IR "" [ inputfile ... ]
8 | .SH DESCRIPTION
9 | .B seewbmp
10 | reads one or more wireless bitmap images (WBMP files) and prints them
11 | to the standard output in a textual format.
12 | Each pixel is shown as either a space or an asterisk.
13 | .SH "SEE ALSO"
14 | .BR kannel (8)
15 |
--------------------------------------------------------------------------------
/utils/source-stats:
--------------------------------------------------------------------------------
1 | #!/bin/sh
2 | #
3 | # Simple program to calculate source code statistics for Kannel.
4 | #
5 | # Run with current working directory being the Kannel source root.
6 | #
7 | # Output:
8 | #
9 | # - number of source files
10 | # - number of lines total
11 | # - number of non-empty files
12 | # - number of lines with semicolons
13 |
14 | DIRS="gw gwlib wmlscript wap"
15 |
16 | find $DIRS -type f ! -name .cvsignore ! -name control.html \
17 | ! -name '*kannel.conf' ! -name 'wsgram.[ch]' ! -name '*.txt' \
18 | ! -name '*.[ao]' ! -name '*box' ! -name wmlsc ! -name wmlsdasm |
19 | grep -v /CVS/ > files.txt
20 |
21 | cat <
23 | Source line statistics `date +%Y-%m-%d`
24 | Number of files | | `wc -l < files.txt` |
25 | Lines total | `xargs cat < files.txt | wc -l` |
26 | Non-empty lines | `xargs grep -v '^[ ]*$' < files.txt | wc -l` |
27 | Lines with semicolons | `xargs grep ';' < files.txt | wc -l` |
28 |
29 | EOF
30 |
31 | rm -f files.txt
32 |
--------------------------------------------------------------------------------
/utils/update-license-text.sh:
--------------------------------------------------------------------------------
1 | #!/bin/sh
2 | #
3 | # update-license -- update prefix blocks with LICENSE text
4 | #
5 | # Run this script in gateway root directory to update the
6 | # current LICENSE text file to all source code files.
7 | #
8 |
9 | old="2001-2012 Kannel Group"
10 | new="2001-2013 Kannel Group"
11 |
12 | prog=`basename $0`
13 | files=`find -type f ! -name "${prog}" ! -path "*/.svn/*" ! -path "./addons/*" | xargs fgrep -lr "${old}"`
14 | for i in $files; do
15 | echo ${i}
16 | cat ${i} | sed "s/${old}/${new}/" > ${i}.new
17 | mv ${i}.new ${i}
18 | done
19 |
--------------------------------------------------------------------------------
/utils/update-license.sh:
--------------------------------------------------------------------------------
1 | #!/bin/sh
2 | #
3 | # update-license -- update prefix blocks with LICENSE text
4 | #
5 | # Run this script in gateway root directory to update the
6 | # current LICENSE text file to all source code files.
7 | #
8 |
9 | types="\.h \.c \.def"
10 |
11 | for t in $types; do
12 | echo "Updating LICENSE in '${t}' files."
13 | files=`find -type f | grep "${t}\$"`
14 | for i in $files; do
15 | cat LICENSE ${i} >> ${i}.new
16 | mv ${i}.new ${i}
17 | done
18 | done
19 |
--------------------------------------------------------------------------------
/utils/utf8map.pl:
--------------------------------------------------------------------------------
1 | #!/usr/bin/perl -wn
2 | #
3 | # utf8map.pl - remap ascii to utf8
4 | #
5 | # Program was created to build conversion table from ascii into utf8.
6 | # Ascii table's first half does not require any changes (because utf8
7 | # [0-127] encoding is the same as in ascii). To control second half's
8 | # encoding we have to specify all unicode codes for characters in
9 | # [128-255] interval. Program takes unicode codes for 128 characters
10 | # on input (in hex format with leading 0x) and generates conversion table .
11 | # Every utf8 code is padded by '0' and occupies 4 bytes.
12 | # It is suitable for use in 'C' programs.
13 | #
14 | # For example,
15 | # in windows-1257 table character 169 '(c)' has code 0x00A9 in unicode.
16 | # Program will generate folowing string:
17 | #
18 | # 0xC2, 0xA9, 0x00, 0x00, /* 169 0x00a9 */
19 | # \______________________/ \___/ \______/
20 | # utf8 code (2 bytes ascii unicode
21 | # with padding)
22 | #
23 | # USAGE:
24 | # perl utf8map.pl asci_128-255_unicode_table.txt
25 | #
26 | # Andrejs Dubovskis
27 | #
28 |
29 | use strict ;
30 |
31 | use vars qw/$N/ ;
32 |
33 | BEGIN {
34 | # we going to prepare table for characters in 128-255 interval
35 | $N = 128 ;
36 | }
37 |
38 | # look for hex number (unicode)
39 | for my $hex (/0x[\da-f]+/ig) {
40 | my $num = hex($hex) ;
41 | my @out = () ;
42 |
43 | if ($num > 0xffff) {
44 | die "too large number: $hex" ;
45 | } elsif ($num > 0x07ff) {
46 | # result is three bytes long
47 | @out = (
48 | (($num >> 12) & 0xf) | 0xe0,
49 | (($num >> 6) & 0x3f) | 0x80,
50 | ($num & 0x3f) | 0x80
51 | ) ;
52 | } elsif ($num > 0x7f) {
53 | # result is two bytes long
54 | @out = (
55 | (($num >> 6) & 0x1f) | 0xc0,
56 | ($num & 0x3f) | 0x80
57 | ) ;
58 | } else {
59 | # only zero is legal here
60 | die "wrong input data: $hex" if $num ;
61 | }
62 |
63 | # pad by '0'
64 | push(@out, 0) while @out < 4 ;
65 |
66 | # output utf8 code
67 | printf("0x%02X,\t0x%02X,\t0x%02X,\t0x%02X,\t", @out) ;
68 | # output comments
69 | print "/*\t$N\t$hex\t*/\n" ;
70 |
71 | # characters in [128-255] interval only
72 | exit if ++$N > 255 ;
73 | }
74 |
--------------------------------------------------------------------------------
/utils/vimrc:
--------------------------------------------------------------------------------
1 | set expandtab
2 | set sw=4
3 | set ts=4
4 | set sts=4
5 |
--------------------------------------------------------------------------------
/utils/win1257unicode.txt:
--------------------------------------------------------------------------------
1 | 0x20ac, 0x0000, 0x201a, 0x0000, 0x201e, 0x2026, 0x2020, 0x2021,
2 | 0x0000, 0x2030, 0x0000, 0x2039, 0x0000, 0x00a8, 0x02c7, 0x00b8,
3 | 0x0000, 0x2018, 0x2019, 0x201c, 0x201d, 0x2022, 0x2013, 0x2014,
4 | 0x0000, 0x2122, 0x0000, 0x203a, 0x0000, 0x00af, 0x02db, 0x0000,
5 | 0x00a0, 0x0000, 0x00a2, 0x00a3, 0x00a4, 0x0000, 0x00a6, 0x00a7,
6 | 0x00d8, 0x00a9, 0x0156, 0x00ab, 0x00ac, 0x00ad, 0x00ae, 0x00c6,
7 | 0x00b0, 0x00b1, 0x00b2, 0x00b3, 0x00b4, 0x00b5, 0x00b6, 0x00b7,
8 | 0x00f8, 0x00b9, 0x0157, 0x00bb, 0x00bc, 0x00bd, 0x00be, 0x00e6,
9 | 0x0104, 0x012e, 0x0100, 0x0106, 0x00c4, 0x00c5, 0x0118, 0x0112,
10 | 0x010c, 0x00c9, 0x0179, 0x0116, 0x0122, 0x0136, 0x012a, 0x013b,
11 | 0x0160, 0x0143, 0x0145, 0x00d3, 0x014c, 0x00d5, 0x00d6, 0x00d7,
12 | 0x0172, 0x0141, 0x015a, 0x016a, 0x00dc, 0x017b, 0x017d, 0x00df,
13 | 0x0105, 0x012f, 0x0101, 0x0107, 0x00e4, 0x00e5, 0x0119, 0x0113,
14 | 0x010d, 0x00e9, 0x017a, 0x0117, 0x0123, 0x0137, 0x012b, 0x013c,
15 | 0x0161, 0x0144, 0x0146, 0x00f3, 0x014d, 0x00f5, 0x00f6, 0x00f7,
16 | 0x0173, 0x0142, 0x015b, 0x016b, 0x00fc, 0x017c, 0x017e, 0x02d9
17 |
--------------------------------------------------------------------------------
/wap/wap_events.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pruiz/kannel/cdbcfc129ab1f0cb301df741131bccf20d39c17f/wap/wap_events.c
--------------------------------------------------------------------------------
/wap/wap_events.def:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pruiz/kannel/cdbcfc129ab1f0cb301df741131bccf20d39c17f/wap/wap_events.def
--------------------------------------------------------------------------------
/wap/wap_events.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pruiz/kannel/cdbcfc129ab1f0cb301df741131bccf20d39c17f/wap/wap_events.h
--------------------------------------------------------------------------------
/wap/wsp_push_client.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pruiz/kannel/cdbcfc129ab1f0cb301df741131bccf20d39c17f/wap/wsp_push_client.c
--------------------------------------------------------------------------------
/wap/wsp_push_client.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pruiz/kannel/cdbcfc129ab1f0cb301df741131bccf20d39c17f/wap/wsp_push_client.h
--------------------------------------------------------------------------------
/wap/wsp_push_client_machine.def:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pruiz/kannel/cdbcfc129ab1f0cb301df741131bccf20d39c17f/wap/wsp_push_client_machine.def
--------------------------------------------------------------------------------
/wap/wsp_push_client_states.def:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pruiz/kannel/cdbcfc129ab1f0cb301df741131bccf20d39c17f/wap/wsp_push_client_states.def
--------------------------------------------------------------------------------
/wap/wsp_server_push_machine.def:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pruiz/kannel/cdbcfc129ab1f0cb301df741131bccf20d39c17f/wap/wsp_server_push_machine.def
--------------------------------------------------------------------------------
/wap/wsp_server_push_states.def:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pruiz/kannel/cdbcfc129ab1f0cb301df741131bccf20d39c17f/wap/wsp_server_push_states.def
--------------------------------------------------------------------------------
/wap/wsp_session.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pruiz/kannel/cdbcfc129ab1f0cb301df741131bccf20d39c17f/wap/wsp_session.c
--------------------------------------------------------------------------------
/wap/wtp.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pruiz/kannel/cdbcfc129ab1f0cb301df741131bccf20d39c17f/wap/wtp.c
--------------------------------------------------------------------------------
/wap/wtp_init.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pruiz/kannel/cdbcfc129ab1f0cb301df741131bccf20d39c17f/wap/wtp_init.c
--------------------------------------------------------------------------------
/wap/wtp_init.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pruiz/kannel/cdbcfc129ab1f0cb301df741131bccf20d39c17f/wap/wtp_init.h
--------------------------------------------------------------------------------
/wap/wtp_init_machine.def:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pruiz/kannel/cdbcfc129ab1f0cb301df741131bccf20d39c17f/wap/wtp_init_machine.def
--------------------------------------------------------------------------------
/wap/wtp_init_states.def:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pruiz/kannel/cdbcfc129ab1f0cb301df741131bccf20d39c17f/wap/wtp_init_states.def
--------------------------------------------------------------------------------
/wap/wtp_pack.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pruiz/kannel/cdbcfc129ab1f0cb301df741131bccf20d39c17f/wap/wtp_pack.c
--------------------------------------------------------------------------------
/wap/wtp_pack.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pruiz/kannel/cdbcfc129ab1f0cb301df741131bccf20d39c17f/wap/wtp_pack.h
--------------------------------------------------------------------------------
/wap/wtp_resp.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pruiz/kannel/cdbcfc129ab1f0cb301df741131bccf20d39c17f/wap/wtp_resp.c
--------------------------------------------------------------------------------
/wap/wtp_resp.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pruiz/kannel/cdbcfc129ab1f0cb301df741131bccf20d39c17f/wap/wtp_resp.h
--------------------------------------------------------------------------------
/wap/wtp_resp_machine.def:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pruiz/kannel/cdbcfc129ab1f0cb301df741131bccf20d39c17f/wap/wtp_resp_machine.def
--------------------------------------------------------------------------------
/wap/wtp_resp_states.def:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pruiz/kannel/cdbcfc129ab1f0cb301df741131bccf20d39c17f/wap/wtp_resp_states.def
--------------------------------------------------------------------------------
/wap/wtp_tid.c:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pruiz/kannel/cdbcfc129ab1f0cb301df741131bccf20d39c17f/wap/wtp_tid.c
--------------------------------------------------------------------------------
/wap/wtp_tid.h:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pruiz/kannel/cdbcfc129ab1f0cb301df741131bccf20d39c17f/wap/wtp_tid.h
--------------------------------------------------------------------------------
/wmlscript/lexer.txt:
--------------------------------------------------------------------------------
1 |
2 | Lexer entities
3 | ==============
4 |
5 | * Reserved Words
6 |
7 | The `div=' is actually puctuation.
8 |
9 | access
10 | agent
11 | break
12 | case
13 | catch
14 | class
15 | const
16 | continue
17 | debugger
18 | default
19 | delete
20 | div
21 | div=
22 | do
23 | domain
24 | else
25 | enum
26 | equiv
27 | export
28 | extends
29 | extern
30 | false
31 | finally
32 | for
33 | function
34 | header
35 | http
36 | if
37 | import
38 | in
39 | invalid
40 | isvalid
41 | lib
42 | meta
43 | name
44 | new
45 | null
46 | path
47 | private
48 | public
49 | return
50 | sizeof
51 | struct
52 | super
53 | switch
54 | this
55 | throw
56 | true
57 | try
58 | typeof
59 | url
60 | use
61 | user
62 | var
63 | void
64 | while
65 | with
66 |
67 | * Punctuation (Plus comment starters)
68 |
69 | !
70 | !=
71 | #
72 | %
73 | %=
74 | &
75 | &&
76 | &=
77 | (
78 | )
79 | *
80 | *=
81 | +
82 | ++
83 | +=
84 | ,
85 | -
86 | --
87 | -=
88 | . can be followed by [0-9] => DecimalFloatLiteral
89 | /
90 | /* block comment
91 | // single-line comment
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 | * Strings start with ' or "
118 |
119 | * Numbers:
120 |
121 | 0xHexDigit
122 | 0XHexDigit
123 | 0
124 | [1-9][0-9]*
125 | 0[0-7]+
126 |
127 | floats start with `DecimalIntegerLiteral' or '.'
--------------------------------------------------------------------------------
/wmlscript/make-op-table.in:
--------------------------------------------------------------------------------
1 | #!@PERLPROG@ -w
2 | # -*- perl -*-
3 | #
4 | # make-op-table.in
5 | #
6 | # Author: Markku Rossi
7 | #
8 | # Copyright (c) 1999-2000 WAPIT OY LTD.
9 | # All rights reserved.
10 | #
11 | # A help script to create the `wsopcodes.h' file from the `wsasm.h'
12 | # header file.
13 | #
14 |
15 | my(@table) = ();
16 | my(@size) = ();
17 |
18 | while (<>) {
19 | if (/^\#define\s(WS_ASM_[A-Z_0-9]+)\s+(\S+)\s+\/\*\s+(\S+)\s+(\S+)/) {
20 | my($name) = $1;
21 | my($code) = $2;
22 | my($size) = $4;
23 |
24 | if ($name =~ /WS_ASM_P_/) {
25 | next;
26 | }
27 |
28 | $table[hex($code)] = $name;
29 | $size[hex($code)] = $size;
30 | }
31 | }
32 |
33 | for ($i = 0; $i < 256; $i++) {
34 | printf(" /* 0x%02x */ ", $i);
35 |
36 | if (defined($table[$i])) {
37 | $name = $table[$i];
38 | $name =~ s/^WS_ASM_//;
39 | $name =~ tr/A-Z/a-z/;
40 |
41 | print "{\"$name\",\t$size[$i]},\n";
42 | } else {
43 | print "{NULL,\t0},\n";
44 | }
45 | }
46 |
--------------------------------------------------------------------------------
/wmlscript/wmlsc.1:
--------------------------------------------------------------------------------
1 | .\" Hey, Emacs! This is an -*- nroff -*- source file.
2 | .TH WMLSC 1 "3rd October 2000" "Kannel Project" "Kannel Project"
3 | .SH NAME
4 | wmlsc \- WMLScript compiler
5 | .SH SYNOPSIS
6 | .B wmlsc
7 | .BR "" [ -adlsv ]
8 | .IR file ...
9 | .SH DESCRIPTION
10 | .B wmlsc
11 | compiles WMLScript source files into a binary version.
12 | It is useful for testing WMLScript file correctness.
13 | .SH "SEE ALSO"
14 | .BR wmlsdasm (1),
15 | .BR kannel (8).
16 |
--------------------------------------------------------------------------------
/wmlscript/wmlsdasm.1:
--------------------------------------------------------------------------------
1 | .\" Hey, Emacs! This is an -*- nroff -*- source file.
2 | .TH WMLSDASM 1 "3rd October 2000" "Kannel Project" "Kannel Project"
3 | .SH NAME
4 | wmlsdasm \- WMLScript disassembler
5 | .SH SYNOPSIS
6 | .B wmlsdasm
7 | .BR "" [ -cfnh ]
8 | .IR file ...
9 | .SH DESCRIPTION
10 | .B wmlsdasm
11 | un-compilers WMLScript bytecode files into a source version.
12 | It is useful for debugging the WMLScript compiler.
13 | .SH "SEE ALSO"
14 | .BR wmlsc (1),
15 | .BR kannel (8).
16 |
--------------------------------------------------------------------------------