... | ... |
@@ -23,7 +23,7 @@ Test: compile test/re_test.c (gcc re_test.c -o re_test) and try |
23 | 23 |
echo -e "From:\nTo:" |./re_test -v '^From' |
24 | 24 |
if your system is ok you should see 1 match, if not (and |
25 | 25 |
your libc has this bug), 0 matches. |
26 |
-Workarround: ?upgrade? |
|
26 |
+Workaround: ?upgrade? |
|
27 | 27 |
-------------------------------------------------------------- |
28 | 28 |
Desc: textops REs match newline in constructs such [^@] |
29 | 29 |
Ser version: all |
... | ... |
@@ -33,7 +33,7 @@ Test: compile test/re_test.c (gcc re_test.c -o re_test) and try |
33 | 33 |
echo -e "From:\nTo:" |./re_test -v '[^.]+' |
34 | 34 |
if your system is ok you should see 2 matches, if not (and |
35 | 35 |
your libc has this bug), only 1 match. |
36 |
-Workarround: - use an older or fixed libc6 or avoid [^something] |
|
36 |
+Workaround: - use an older or fixed libc6 or avoid [^something] |
|
37 | 37 |
- rewrite [^something] as [^something[:cntrl:]] |
38 | 38 |
--------------------------------------------------------------- |
39 | 39 |
Desc: memory leaks occurs if SIP requests are processed in which |
... | ... |
@@ -183,7 +183,7 @@ CVS status: fixed |
183 | 183 |
--------------------------------------------------------------- |
184 | 184 |
Desc: serctl add ... returns "user exists" |
185 | 185 |
BugId: 374 |
186 |
-Workaround: either use serweb for addding new users or update |
|
186 |
+Workaround: either use serweb for adding new users or update |
|
187 | 187 |
the serctl utility from CVS; the fixed version is at |
188 | 188 |
http://www.iptel.org/ser/issues/374/ |
189 | 189 |
Bug reason: phplib_id ignored in sc |
... | ... |
@@ -218,7 +218,7 @@ Cvs status: not fixed |
218 | 218 |
|
219 | 219 |
---------------------------------------------------------------- |
220 | 220 |
Desc: ser won't run on linux kernels <2.4 (fails with EINVAL when |
221 |
- intializing the shared memory) |
|
221 |
+ initializing the shared memory) |
|
222 | 222 |
BugId: n/a |
223 | 223 |
Ser version: 0.8.8, 0.8.9, 0.8.10 |
224 | 224 |
Workaround: Upgrade to a 2.4.* kernel (older kernels don't support shared |
... | ... |
@@ -10,7 +10,7 @@ I. About SIP Express Router (ser) |
10 | 10 |
II. Feature List |
11 | 11 |
III. About iptel.org |
12 | 12 |
IV. Obtaining Help |
13 |
-V. Contact, Licencing and More Information |
|
13 |
+V. Contact, Licensing and More Information |
|
14 | 14 |
|
15 | 15 |
|
16 | 16 |
SIP Express Router (SER) is an industrial-strength, free VoIP |
... | ... |
@@ -1,7 +1,7 @@ |
1 | 1 |
/* |
2 | 2 |
* $Id$ |
3 | 3 |
* |
4 |
- * Copyright (C) 2001-2003 Fhg Fokus |
|
4 |
+ * Copyright (C) 2001-2003 FhG Fokus |
|
5 | 5 |
* |
6 | 6 |
* This file is part of ser, a free SIP server. |
7 | 7 |
* |
... | ... |
@@ -93,7 +93,7 @@ int do_action(struct action* a, struct sip_msg* msg) |
93 | 93 |
int proto; |
94 | 94 |
|
95 | 95 |
/* reset the value of error to E_UNSPEC so avoid unknowledgable |
96 |
- functions to return with errror (status<0) and not setting it |
|
96 |
+ functions to return with error (status<0) and not setting it |
|
97 | 97 |
leaving there previous error; cache the previous value though |
98 | 98 |
for functions which want to process it */ |
99 | 99 |
prev_ser_error=ser_error; |
... | ... |
@@ -3,7 +3,7 @@ |
3 | 3 |
* |
4 | 4 |
* scanner for cfg files |
5 | 5 |
* |
6 |
- * Copyright (C) 2001-2003 Fhg Fokus |
|
6 |
+ * Copyright (C) 2001-2003 FhG Fokus |
|
7 | 7 |
* |
8 | 8 |
* This file is part of ser, a free SIP server. |
9 | 9 |
* |
... | ... |
@@ -129,7 +129,7 @@ MAX_LEN "max_len" |
129 | 129 |
|
130 | 130 |
/* condition keywords */ |
131 | 131 |
METHOD method |
132 |
-/* hack -- the second element in first line is referrable |
|
132 |
+/* hack -- the second element in first line is referable |
|
133 | 133 |
as either uri or status; it only would makes sense to |
134 | 134 |
call it "uri" from route{} and status from onreply_route{} |
135 | 135 |
*/ |
... | ... |
@@ -3,7 +3,7 @@ |
3 | 3 |
* |
4 | 4 |
* cfg grammar |
5 | 5 |
* |
6 |
- * Copyright (C) 2001-2003 Fhg Fokus |
|
6 |
+ * Copyright (C) 2001-2003 FhG Fokus |
|
7 | 7 |
* |
8 | 8 |
* This file is part of ser, a free SIP server. |
9 | 9 |
* |
... | ... |
@@ -325,7 +325,7 @@ statement: assign_stm |
325 | 325 |
listen_id: ip { tmp=ip_addr2a($1); |
326 | 326 |
if(tmp==0){ |
327 | 327 |
LOG(L_CRIT, "ERROR: cfg. parser: bad ip " |
328 |
- "addresss.\n"); |
|
328 |
+ "address.\n"); |
|
329 | 329 |
$$=0; |
330 | 330 |
}else{ |
331 | 331 |
$$=pkg_malloc(strlen(tmp)+1); |
... | ... |
@@ -1483,7 +1483,7 @@ cmd: FORWARD LPAREN host RPAREN { $$=mk_action( FORWARD_T, |
1483 | 1483 |
| APPEND_BRANCH LPAREN STRING COMMA STRING RPAREN { |
1484 | 1484 |
{ qvalue_t q; |
1485 | 1485 |
if (str2q(&q, $5, strlen($5)) < 0) { |
1486 |
- yyerror("bad arqument, q value expected"); |
|
1486 |
+ yyerror("bad argument, q value expected"); |
|
1487 | 1487 |
} |
1488 | 1488 |
$$=mk_action(APPEND_BRANCH_T, STRING_ST, NUMBER_ST, $3, (void *)q); } |
1489 | 1489 |
} |
... | ... |
@@ -1,7 +1,7 @@ |
1 | 1 |
/* |
2 | 2 |
* $Id$ |
3 | 3 |
* |
4 |
- * Copyright (C) 2001-2003 Fhg Fokus |
|
4 |
+ * Copyright (C) 2001-2003 FhG Fokus |
|
5 | 5 |
* |
6 | 6 |
* This file is part of ser, a free SIP server. |
7 | 7 |
* |
... | ... |
@@ -155,7 +155,7 @@ |
155 | 155 |
/* max length of the text of fifo 'print' command */ |
156 | 156 |
#define MAX_PRINT_TEXT 256 |
157 | 157 |
|
158 |
-/* maximum length of Contact heder field in redirection replies */ |
|
158 |
+/* maximum length of Contact header field in redirection replies */ |
|
159 | 159 |
#define MAX_REDIRECTION_LEN 512 |
160 | 160 |
|
161 | 161 |
/* used by FIFO statistics in module to terminate line; |
... | ... |
@@ -1,7 +1,7 @@ |
1 | 1 |
/* $Id$ |
2 | 2 |
* |
3 | 3 |
* |
4 |
- * Copyright (C) 2001-2003 Fhg Fokus |
|
4 |
+ * Copyright (C) 2001-2003 FhG Fokus |
|
5 | 5 |
* |
6 | 6 |
* This file is part of ser, a free SIP server. |
7 | 7 |
* |
... | ... |
@@ -28,7 +28,7 @@ |
28 | 28 |
* -------- |
29 | 29 |
* 2003-01-19 support for duplication lump lists added (jiri) |
30 | 30 |
* 2003-03-31 added subst lumps --they expand in ip addr, port a.s.o (andrei) |
31 |
- * 2003-04-01 added conditional lump suport functions (andrei) |
|
31 |
+ * 2003-04-01 added conditional lump support functions (andrei) |
|
32 | 32 |
* 2003-10-20 anchor_lump & del_lump will automatically choose the lump list |
33 | 33 |
* based on msg->eoh comparisons (andrei) |
34 | 34 |
* 2003-10-28 added extra checks (paranoia) for {anchor,del}_lump (andrei) |
... | ... |
@@ -257,7 +257,7 @@ struct lump* insert_cond_lump_before( struct lump* before, |
257 | 257 |
|
258 | 258 |
|
259 | 259 |
/* removes an already existing header/data lump */ |
260 |
-/* WARNING: thist function adds the lump either to the msg->add_rm or |
|
260 |
+/* WARNING: this function adds the lump either to the msg->add_rm or |
|
261 | 261 |
* msg->body_lumps list, depending on the offset being greater than msg->eoh, |
262 | 262 |
* so msg->eoh must be parsed (parse with HDR_EOH) if you think your lump |
263 | 263 |
* might affect the body!! */ |
... | ... |
@@ -313,7 +313,7 @@ struct lump* del_lump(struct sip_msg* msg, int offset, int len, int type) |
313 | 313 |
|
314 | 314 |
|
315 | 315 |
/* add an anchor |
316 |
- * WARNING: thist function adds the lump either to the msg->add_rm or |
|
316 |
+ * WARNING: this function adds the lump either to the msg->add_rm or |
|
317 | 317 |
* msg->body_lumps list, depending on the offset being greater than msg->eoh, |
318 | 318 |
* so msg->eoh must be parsed (parse with HDR_EOH) if you think your lump |
319 | 319 |
* might affect the body!! */ |
... | ... |
@@ -513,7 +513,7 @@ void free_duped_lump_list(struct lump* l) |
513 | 513 |
foo=r; r=r->before; |
514 | 514 |
/* (+): if a new item was introduced to the shallow-ly |
515 | 515 |
* duped list, remove it completely, preserve it |
516 |
- * othewise (it is still refered by original list) |
|
516 |
+ * otherwise (it is still referred by original list) |
|
517 | 517 |
*/ |
518 | 518 |
if (foo->flags!=LUMPFLAG_DUPED) |
519 | 519 |
free_lump(foo); |
... | ... |
@@ -2,7 +2,7 @@ |
2 | 2 |
* $Id$ |
3 | 3 |
* |
4 | 4 |
* |
5 |
- * Copyright (C) 2001-2003 Fhg Fokus |
|
5 |
+ * Copyright (C) 2001-2003 FhG Fokus |
|
6 | 6 |
* |
7 | 7 |
* This file is part of ser, a free SIP server. |
8 | 8 |
* |
... | ... |
@@ -45,7 +45,7 @@ struct lump_rpl* add_lump_rpl(struct sip_msg *msg, char *s, int len, int flags) |
45 | 45 |
struct lump_rpl *lump = 0; |
46 | 46 |
struct lump_rpl *foo; |
47 | 47 |
|
48 |
- /* some checkings */ |
|
48 |
+ /* some checking */ |
|
49 | 49 |
if ( (flags&(LUMP_RPL_HDR|LUMP_RPL_BODY))==(LUMP_RPL_HDR|LUMP_RPL_BODY) |
50 | 50 |
|| (flags&(LUMP_RPL_HDR|LUMP_RPL_BODY))==0 || (flags&LUMP_RPL_SHMEM) ) { |
51 | 51 |
LOG(L_ERR,"ERROR:add_lump_rpl: bad flags combination (%d)!\n",flags); |
... | ... |
@@ -1,7 +1,7 @@ |
1 | 1 |
/* |
2 | 2 |
* $Id$ |
3 | 3 |
* |
4 |
- * Copyright (C) 2001-2003 Fhg Fokus |
|
4 |
+ * Copyright (C) 2001-2003 FhG Fokus |
|
5 | 5 |
* |
6 | 6 |
* This file is part of ser, a free SIP server. |
7 | 7 |
* |
... | ... |
@@ -135,7 +135,7 @@ typedef int (*db_update_f) (db_con_t* _h, db_key_t* _k, db_op_t* _o, db_val_t* _ |
135 | 135 |
|
136 | 136 |
typedef struct db_func { |
137 | 137 |
db_use_table_f use_table; /* Specify table name */ |
138 |
- db_init_f init; /* Initialize dabase connection */ |
|
138 |
+ db_init_f init; /* Initialize database connection */ |
|
139 | 139 |
db_close_f close; /* Close database connection */ |
140 | 140 |
db_query_f query; /* query a table */ |
141 | 141 |
db_raw_query_f raw_query; /* Raw query - SQL */ |
... | ... |
@@ -1,7 +1,7 @@ |
1 | 1 |
/* |
2 | 2 |
* $Id$ |
3 | 3 |
* |
4 |
- * Copyright (C) 2001-2003 Fhg Fokus |
|
4 |
+ * Copyright (C) 2001-2003 FhG Fokus |
|
5 | 5 |
* |
6 | 6 |
* This file is part of ser, a free SIP server. |
7 | 7 |
* |
... | ... |
@@ -219,7 +219,7 @@ static inline int parse_db_value( str *s, db_val_t *val, str **ret_s) |
219 | 219 |
s->len -= n+2; |
220 | 220 |
} |
221 | 221 |
|
222 |
- /* string has at least one caracter */ |
|
222 |
+ /* string has at least one character */ |
|
223 | 223 |
DBG("DEBUG:parse_db_value: value id <%.*s>\n",s->len,s->s); |
224 | 224 |
if ( s->s[0]=='\"' && s->s[s->len-1]=='\"' && s->len!=1) { |
225 | 225 |
/* can be DB_STR, DB_STRING, DB_BLOB */ |
... | ... |
@@ -265,11 +265,11 @@ static inline int parse_db_value( str *s, db_val_t *val, str **ret_s) |
265 | 265 |
td.tm_yday = 0; |
266 | 266 |
/* get year */ |
267 | 267 |
get_int( p, end, td.tm_year, n, "Missing year in date format",error); |
268 |
- td.tm_year -= 1900; /* corection */ |
|
268 |
+ td.tm_year -= 1900; /* correction */ |
|
269 | 269 |
if (*(p++)!='-') goto date_error; |
270 | 270 |
/* get month */ |
271 | 271 |
get_int( p, end, td.tm_mon, n, "Missing month in date format",error); |
272 |
- td.tm_mon --; /* corection */ |
|
272 |
+ td.tm_mon --; /* correction */ |
|
273 | 273 |
if (*(p++)!='-') goto date_error; |
274 | 274 |
/* get day */ |
275 | 275 |
get_int( p, end, td.tm_mday, n, "Missing day in date format",error); |
... | ... |
@@ -369,7 +369,7 @@ static inline int get_avps( FILE *fifo , db_key_t *keys, db_op_t *ops, |
369 | 369 |
/* read a new line */ |
370 | 370 |
line.s = buf; |
371 | 371 |
if (read_line( line.s, MAX_SIZE_LINE, fifo, &line.len)!=1) { |
372 |
- double_log("Comamnd end when reading AVPs - missing . at after " |
|
372 |
+ double_log("Command end when reading AVPs - missing . at after " |
|
373 | 373 |
"AVP list?"); |
374 | 374 |
goto error; |
375 | 375 |
} |
... | ... |
@@ -650,7 +650,7 @@ int db_fifo( FILE *fifo, char *response_file ) |
650 | 650 |
nr2 = 0; |
651 | 651 |
|
652 | 652 |
if (db_cmd==SELECT_CMD) { |
653 |
- /* read the colums to be fetched */ |
|
653 |
+ /* read the columns to be fetched */ |
|
654 | 654 |
if ( get_keys( fifo, keys1, &nr1, MAX_ARRAY)!=0 ) |
655 | 655 |
goto error; |
656 | 656 |
} else if (db_cmd==UPDATE_CMD) { |
... | ... |
@@ -666,7 +666,7 @@ int db_fifo( FILE *fifo, char *response_file ) |
666 | 666 |
/* all the operators must be '=' */ |
667 | 667 |
for(n=0;n<nr1;n++) { |
668 | 668 |
if (ops1[n][0]!='=' || ops1[n][1]!='\0') { |
669 |
- double_log("Invalid operator in updated fileds (expected = )"); |
|
669 |
+ double_log("Invalid operator in updated fields (expected = )"); |
|
670 | 670 |
goto error1; |
671 | 671 |
} |
672 | 672 |
}/*end for*/ |
... | ... |
@@ -740,7 +740,7 @@ int db_fifo( FILE *fifo, char *response_file ) |
740 | 740 |
/* all the operators must be '=' in the first avp list */ |
741 | 741 |
for(n=0;n<nr1;n++) { |
742 | 742 |
if (ops1[n][0]!='=' || ops1[n][1]!='\0') { |
743 |
- double_log("Invalid operator in updated fileds " |
|
743 |
+ double_log("Invalid operator in updated fields " |
|
744 | 744 |
"(expected = )"); |
745 | 745 |
goto error; |
746 | 746 |
} |
... | ... |
@@ -770,7 +770,7 @@ int db_fifo( FILE *fifo, char *response_file ) |
770 | 770 |
/* all the operators must be '=' */ |
771 | 771 |
for(n=0;n<nr2;n++) { |
772 | 772 |
if (ops2[n][0]!='=' || ops2[n][1]!='\0') { |
773 |
- double_log("Invalid operator in inserted fileds " |
|
773 |
+ double_log("Invalid operator in inserted fields " |
|
774 | 774 |
"(expected = )"); |
775 | 775 |
goto error; |
776 | 776 |
} |
... | ... |
@@ -1,7 +1,7 @@ |
1 | 1 |
/* |
2 | 2 |
* $Id$ |
3 | 3 |
* |
4 |
- * Copyright (C) 2001-2003 Fhg Fokus |
|
4 |
+ * Copyright (C) 2001-2003 FhG Fokus |
|
5 | 5 |
* |
6 | 6 |
* This file is part of ser, a free SIP server. |
7 | 7 |
* |
... | ... |
@@ -39,7 +39,7 @@ |
39 | 39 |
|
40 | 40 |
|
41 | 41 |
/* |
42 |
- * Dabase module client example |
|
42 |
+ * Database module client example |
|
43 | 43 |
*/ |
44 | 44 |
|
45 | 45 |
|
... | ... |
@@ -6,11 +6,11 @@ It was downloaded from http://iptel.org/ser. |
6 | 6 |
Upstream Authors: Andrei Pelinescu-Onciul |
7 | 7 |
<pelinescu-onciul@fokus.fraunhofer.de>, Bogdan Iancu |
8 | 8 |
<iancu@fokus.fraunhofer.de>, Daniel-Constantin Mierla, Jan Janak |
9 |
-<J.Janak@sh.cvut.cz>, Jiri Kuthan <jiri@iptel.org>, Juha Heinanen, Maxim |
|
9 |
+<jan@iptel.org>, Jiri Kuthan <jiri@iptel.org>, Juha Heinanen, Maxim |
|
10 | 10 |
Sobolev, Miklos Tirpak, Nils Ohlmeier, Ramona-Elena Modroiu, Raphael Coeffic, |
11 | 11 |
Ricardo Baratto, Stelios Sidiroglou-Douskos (see AUTHORS file for details) |
12 | 12 |
|
13 |
-This software is copyright (c) 2002-2003 by Fhg Fokus |
|
13 |
+This software is copyright (c) 2002-2003 by FhG Fokus |
|
14 | 14 |
|
15 | 15 |
You are free to distribute this software under the terms of |
16 | 16 |
the GNU General Public License. |
... | ... |
@@ -40,16 +40,16 @@ |
40 | 40 |
<simpara> |
41 | 41 |
&ser can be configured to use &rad; server for authentication, accounting, and group |
42 | 42 |
membership checking. Since configuration of &rad; seems to be a common source of |
43 |
- problems, we decided to put together this howto. |
|
43 |
+ problems, we decided to put together this HOWTO. |
|
44 | 44 |
</simpara> |
45 | 45 |
<simpara> |
46 |
- The howto covers installation and configuration of FreeRADIUS server only. There are |
|
46 |
+ The HOWTO covers installation and configuration of FreeRADIUS server only. There are |
|
47 | 47 |
also other &rad; servers available and as long as they support digest authentication, |
48 | 48 |
they should work too. Any volunteers willing to describe setup of other &rad; servers |
49 | 49 |
are encouraged to contact the author. |
50 | 50 |
</simpara> |
51 | 51 |
<section> |
52 |
- <title>Prerequisities</title> |
|
52 |
+ <title>Prerequisites</title> |
|
53 | 53 |
<simpara> |
54 | 54 |
To setup &rad; support in &ser; you will need the following: |
55 | 55 |
</simpara> |
... | ... |
@@ -57,7 +57,7 @@ |
57 | 57 |
<listitem> |
58 | 58 |
<simpara> |
59 | 59 |
FreeRADIUS server, you can get it from <ulink |
60 |
- url="http://www.freeradius.org">FreeRADIUS website</ulink>. The howto |
|
60 |
+ url="http://www.freeradius.org">FreeRADIUS website</ulink>. The HOWTO |
|
61 | 61 |
describes installation and setup of release 0.9.1. |
62 | 62 |
</simpara> |
63 | 63 |
</listitem> |
... | ... |
@@ -134,7 +134,7 @@ root@localhost:/usr/local/src/radiusclient-0.3.2# make install |
134 | 134 |
<simpara> |
135 | 135 |
The main configuration file of the library is <filename |
136 | 136 |
moreinfo="none">/usr/local/etc/radiusclient/radiusclient.conf</filename>, open |
137 |
- the file in your favourite text editor and find lines containing the following: |
|
137 |
+ the file in your favorite text editor and find lines containing the following: |
|
138 | 138 |
</simpara> |
139 | 139 |
<programlisting format="linespecific"> |
140 | 140 |
authserver localhost |
... | ... |
@@ -324,7 +324,7 @@ test Auth-Type := Digest, User-Password == "test" |
324 | 324 |
<simpara> |
325 | 325 |
The basic configuration of FreeRADIUS server is done it now we are going to test if |
326 | 326 |
it really works. Start the server with parameter -X. That will cause the server to |
327 |
- stay in the foreground (it will not turn into daemon) and produce a lot of debuging |
|
327 |
+ stay in the foreground (it will not turn into daemon) and produce a lot of debugging |
|
328 | 328 |
information on the standard output: |
329 | 329 |
</simpara> |
330 | 330 |
<screen format="linespecific"> |
... | ... |
@@ -459,7 +459,7 @@ joe@iptel.org Sip-Group == "pstn", Auth-Type := Accept |
459 | 459 |
<title>&ser; Configuration</title> |
460 | 460 |
<simpara> |
461 | 461 |
We will describe installation from sources here. If you use binary packages then there |
462 |
- is an additional package containg &rad; related modules. You will need to install the |
|
462 |
+ is an additional package containing &rad; related modules. You will need to install the |
|
463 | 463 |
package. |
464 | 464 |
</simpara> |
465 | 465 |
<warning> |
... | ... |
@@ -471,7 +471,7 @@ joe@iptel.org Sip-Group == "pstn", Auth-Type := Accept |
471 | 471 |
<simpara> |
472 | 472 |
If you need accounting over &rad; then you will have to compile &rad;-enabled |
473 | 473 |
version of acc module from the sources. This will be fixed in one of future |
474 |
- releases, we apologize for any incovenience. |
|
474 |
+ releases, we apologize for any inconvenience. |
|
475 | 475 |
</simpara> |
476 | 476 |
</warning> |
477 | 477 |
<simpara> |
... | ... |
@@ -561,7 +561,7 @@ libradiusclient.so.0: cannot open shared object file: No such file or directory |
561 | 561 |
<question> |
562 | 562 |
<simpara> |
563 | 563 |
I configured everything as described in this HOWTO, but I get the following |
564 |
- message from radiusclient librarary <quote> check_radius_reply: received |
|
564 |
+ message from radiusclient library <quote> check_radius_reply: received |
|
565 | 565 |
invalid reply digest from RADIUS server</quote>. What does that mean ? |
566 | 566 |
</simpara> |
567 | 567 |
</question> |
... | ... |
@@ -20,10 +20,10 @@ |
20 | 20 |
<simpara> |
21 | 21 |
Fast inline assembly locks, defined in <filename |
22 | 22 |
moreinfo="none">fast_lock.h</filename>. They are currently available for |
23 |
- x86, sparc64, strongarm (amv4l) and ppc (external untested contributed |
|
23 |
+ x86, sparc64, strong-arm (amv4l) and ppc (external untested contributed |
|
24 | 24 |
code). In general if the assembly code exists for a given architecture and |
25 | 25 |
the compiler knows inline assembly (for example sun cc does not) FAST_LOCK |
26 |
- is prefered. The main advantage of using FAST_LOCK is very low memory |
|
26 |
+ is preferred. The main advantage of using FAST_LOCK is very low memory |
|
27 | 27 |
overhead and extremely fast lock/unlock operations (like 20 times faster |
28 | 28 |
then SYSV semaphores on linux & 40 times on solaris). The only thing that |
29 | 29 |
comes close to them are pthread mutexes (which are about 3-4 times slower). |
... | ... |
@@ -42,7 +42,7 @@ |
42 | 42 |
Uses posix semaphores (<function |
43 | 43 |
moreinfo="none">sem_wait</function>/<function |
44 | 44 |
moreinfo="none">sem_post</function>). They are slower then the previous |
45 |
- methods but still way faster then SYSV sempahores. Unfortunately they also |
|
45 |
+ methods but still way faster then SYSV semaphores. Unfortunately they also |
|
46 | 46 |
do not work on all the systems (e.g. linux). |
47 | 47 |
</simpara> |
48 | 48 |
</listitem> |
... | ... |
@@ -50,7 +50,7 @@ |
50 | 50 |
<simpara><emphasis>SYSV_SEM</emphasis></simpara> |
51 | 51 |
<simpara> |
52 | 52 |
This is the most portable but also the slowest locking method. Another |
53 |
- problem is that the number of semaphores that can be alocated by a process |
|
53 |
+ problem is that the number of semaphores that can be allocated by a process |
|
54 | 54 |
is limited. One also has to free them before exiting. |
55 | 55 |
</simpara> |
56 | 56 |
</listitem> |
... | ... |
@@ -140,7 +140,7 @@ if (lock_init(&bar->lock)==0){ |
140 | 140 |
free the lock shared memory part. Think of sysv <command |
141 | 141 |
moreinfo="none">rmid</command>. Please don't forget to call this function, or |
142 | 142 |
you can leave allocated resources in some cases (e.g sysv semaphores). Be |
143 |
- carefull to call it in your module destroy function if you use any global module |
|
143 |
+ careful to call it in your module destroy function if you use any global module |
|
144 | 144 |
locks. |
145 | 145 |
</simpara> |
146 | 146 |
<simpara> |
... | ... |
@@ -15,7 +15,7 @@ |
15 | 15 |
footprint. Modules can be also provided by 3rd party developers and distributed |
16 | 16 |
separately from the main server. Most of the functionality that &ser; provides is |
17 | 17 |
available through modules, the core itself contains only minimum set of functions |
18 |
- that is essential for proper server's behaviour or that is needed by all modules. |
|
18 |
+ that is essential for proper server's behavior or that is needed by all modules. |
|
19 | 19 |
</para> |
20 | 20 |
<para> |
21 | 21 |
This chapter provides detailed information on module interface of &ser;, which is |
... | ... |
@@ -139,7 +139,7 @@ typedef int (*cmd_function)(struct sip_msg*, char*, char*); |
139 | 139 |
</simpara> |
140 | 140 |
<simpara> |
141 | 141 |
If you provide pointer to a fixup function in this field, the fixup function |
142 |
- will be called for each occurence of the exported function in the |
|
142 |
+ will be called for each occurrence of the exported function in the |
|
143 | 143 |
configuration script. |
144 | 144 |
</simpara> |
145 | 145 |
<simpara> |
... | ... |
@@ -198,7 +198,7 @@ typedef int (*cmd_function)(struct sip_msg*, char*, char*); |
198 | 198 |
<abstract> |
199 | 199 |
<simpara> |
200 | 200 |
Each module can provide zero or more parameters, which can affect the module's |
201 |
- behaviour. This section gives a detailed description of structures describing |
|
201 |
+ behavior. This section gives a detailed description of structures describing |
|
202 | 202 |
exported parameters and passing this information to the core through the module |
203 | 203 |
interface. |
204 | 204 |
</simpara> |
... | ... |
@@ -230,7 +230,7 @@ typedef struct param_export_ param_export_t; |
230 | 230 |
<listitem> |
231 | 231 |
<simpara><varname>char* name</varname></simpara> |
232 | 232 |
<simpara> |
233 |
- This is null-terminated name of the parametes as it will be used in the |
|
233 |
+ This is null-terminated name of the parameters as it will be used in the |
|
234 | 234 |
scripts. Usually this is the same as the name of the variable holding the |
235 | 235 |
value. |
236 | 236 |
</simpara> |
... | ... |
@@ -314,7 +314,7 @@ struct module_exports{ |
314 | 314 |
char* name; /* null terminated module name */ |
315 | 315 |
cmd_export_t* cmds; /* null terminated array of the exported commands */ |
316 | 316 |
param_export_t* params; /* null terminated array of the exported module parameters */ |
317 |
- init_function init_f; /* Initilization function */ |
|
317 |
+ init_function init_f; /* Initialization function */ |
|
318 | 318 |
response_function response_f; /* function used for responses, returns yes or no; can be null */ |
319 | 319 |
destroy_function destroy_f; /* function called when the module should be "destroyed", e.g: on ser exit; can be null */ |
320 | 320 |
onbreak_function onbreak_f; |
... | ... |
@@ -112,7 +112,7 @@ |
112 | 112 |
<section id="parser-init"> |
113 | 113 |
<title>Parser Initialization</title> |
114 | 114 |
<para> |
115 |
- <acronym>SER</acronym> contains a fast 32-bit parser. The parser uses precalculated hash table that needs to be |
|
115 |
+ <acronym>SER</acronym> contains a fast 32-bit parser. The parser uses pre-calculated hash table that needs to be |
|
116 | 116 |
filled in upon startup. The initialization is done here, there are two functions that do the |
117 | 117 |
job. Function <function moreinfo="none">init_hfname_parser</function> initializes hash table |
118 | 118 |
in header field name parser and function <function moreinfo="none">init_digest_parser</function> |
... | ... |
@@ -595,7 +595,7 @@ module_stm = "loadmodule" STRING |
595 | 595 |
be called every time a message is processed and that is not necessary. |
596 | 596 |
</para> |
597 | 597 |
<para> |
598 |
- Instead of that the length of the string parameter could be precalculated upon server startup, saved |
|
598 |
+ Instead of that the length of the string parameter could be pre-calculated upon server startup, saved |
|
599 | 599 |
and reused later. The processing of the request will be faster because |
600 | 600 |
<function moreinfo="none">append_hf</function> doesn't need |
601 | 601 |
to call <function moreinfo="none">strlen</function> every time, I can just reuse the saved value. |
... | ... |
@@ -2342,7 +2342,7 @@ struct sip_msg { |
2342 | 2342 |
to lower case first and then compare. Since converting byte by byte would slow down the parser a lot, we |
2343 | 2343 |
have implemented a hash table, that can again convert 4 bytes at once. Since set of keys that need to be |
2344 | 2344 |
converted to lowercase is known (the set consists of all possible 4-byte parts of all recognized header |
2345 |
- field names) we can precalculate size of the hash table to be synonym-less. That will simplify (and speed |
|
2345 |
+ field names) we can pre-calculate size of the hash table to be synonym-less. That will simplify (and speed |
|
2346 | 2346 |
up) the lookup a lot. The hash table must be initialized upon the server startup (function |
2347 | 2347 |
<function moreinfo="none">init_hfname_parser</function>). |
2348 | 2348 |
</para> |
... | ... |
@@ -4188,7 +4188,7 @@ typedef struct db_con { |
4188 | 4188 |
<para> |
4189 | 4189 |
Each cell in a database table can be of a different type. To distinguish |
4190 | 4190 |
among these types, the <type>db_type_t</type> enumeration is used. Every |
4191 |
- value of the enumeration represents one datatype that is recognized by the |
|
4191 |
+ value of the enumeration represents one data-type that is recognized by the |
|
4192 | 4192 |
database <acronym>API</acronym>. This enumeration is used in conjunction |
4193 | 4193 |
with <type>db_type_t</type>. For more information, see the next section. |
4194 | 4194 |
</para> |
... | ... |
@@ -4210,7 +4210,7 @@ typedef enum { |
4210 | 4210 |
<section id="type-db-val"> |
4211 | 4211 |
<title>Type <type>db_val_t</type></title> |
4212 | 4212 |
<para> |
4213 |
- This structure represents a value in the database. Several datatypes are |
|
4213 |
+ This structure represents a value in the database. Several data-types are |
|
4214 | 4214 |
recognized and converted by the database <acronym>API</acronym>: |
4215 | 4215 |
<itemizedlist> |
4216 | 4216 |
<listitem> |
... | ... |
@@ -4244,7 +4244,7 @@ typedef enum { |
4244 | 4244 |
</para> |
4245 | 4245 |
</listitem> |
4246 | 4246 |
</itemizedlist> |
4247 |
- These datatypes are automatically recognized, converted from internal database |
|
4247 |
+ These data-types are automatically recognized, converted from internal database |
|
4248 | 4248 |
representation and stored in a variable of corresponding type. |
4249 | 4249 |
</para> |
4250 | 4250 |
<programlisting format="linespecific"> |
... | ... |
@@ -5165,7 +5165,7 @@ int n = RES_ROW_N(res); |
5165 | 5165 |
<para> |
5166 | 5166 |
<varname>calculate_ha1</varname> - If set to true, auth module assumes that |
5167 | 5167 |
<quote>password_column</quote> contains plaintext passwords and ha1 string will be calculated |
5168 |
- at runtime. If set to false, "password_column" must contain precalculated ha1 strings. |
|
5168 |
+ at runtime. If set to false, "password_column" must contain pre-calculated ha1 strings. |
|
5169 | 5169 |
</para> |
5170 | 5170 |
<para> |
5171 | 5171 |
Type: <type>integer</type> |
... | ... |
@@ -5983,7 +5983,7 @@ end of body |
5983 | 5983 |
<varname>wt_timer</varname> - Time for which a transaction stays in memory to absorb |
5984 | 5984 |
delayed messages after it completed; also, when this |
5985 | 5985 |
timer hits, retransmission of local cancels is stopped |
5986 |
- (a puristic but complex behaviour would be not to enter |
|
5986 |
+ (a puristic but complex behavior would be not to enter |
|
5987 | 5987 |
wait state until local branches are finished by a final |
5988 | 5988 |
reply or FR timer -- we simplified) |
5989 | 5989 |
</para> |
... | ... |
@@ -6035,9 +6035,9 @@ end of body |
6035 | 6035 |
<listitem> |
6036 | 6036 |
<para> |
6037 | 6037 |
<varname>noisy_ctimer</varname> - If set, on FR timer INVITE transactions will be |
6038 |
- explicitly cancelled if possible, silently dropped |
|
6038 |
+ explicitly canceled if possible, silently dropped |
|
6039 | 6039 |
otherwise; preferably, it is turned off to allow |
6040 |
- very long ringing; this behaviour is overridden if |
|
6040 |
+ very long ringing; this behavior is overridden if |
|
6041 | 6041 |
a request is forked, or some functionality explicitly |
6042 | 6042 |
turned it off for a transaction (like acc does to avoid |
6043 | 6043 |
unaccounted transactions due to expired timer). |
... | ... |
@@ -6147,7 +6147,7 @@ if (!t_relay()) { |
6147 | 6147 |
set of command which are usable within reply_routes is |
6148 | 6148 |
strictly limited to rewriting URI, initiating new branches, |
6149 | 6149 |
logging, and sending 'unsafe' replies (t_reply_unsafe). Any |
6150 |
- other commands may result in unpredictable behaviour and |
|
6150 |
+ other commands may result in unpredictable behavior and |
|
6151 | 6151 |
possible server failure. |
6152 | 6152 |
Note that whenever reply_route is entered, uri is reset to |
6153 | 6153 |
value which it had on relaying. If it temporarily changed |
... | ... |
@@ -6584,7 +6584,7 @@ if (t_newtran()) { |
6584 | 6584 |
<para> |
6585 | 6585 |
<varname>db_mode</varname> - The usrloc module can utilize database for persistent |
6586 | 6586 |
contact storage. If you use database, your contacts |
6587 |
- will survive machine restarts or sw crashes. The |
|
6587 |
+ will survive machine restarts or SW crashes. The |
|
6588 | 6588 |
disadvantage is that accessing database can be very |
6589 | 6589 |
time consuming. Therefore, usrloc module implements |
6590 | 6590 |
three database accessing modes: |
... | ... |
@@ -61,7 +61,7 @@ |
61 | 61 |
<answer> |
62 | 62 |
<simpara> |
63 | 63 |
Many modules need the database. Authentication modules retrieve users' |
64 |
- crecentials from the database, user location module can be configured to store |
|
64 |
+ credentials from the database, user location module can be configured to store |
|
65 | 65 |
registered bindings into the database, accounting module can use database to |
66 | 66 |
store CDR and so on. |
67 | 67 |
</simpara> |
... | ... |
@@ -93,7 +93,7 @@ |
93 | 93 |
well with this database. |
94 | 94 |
</simpara> |
95 | 95 |
<simpara> |
96 |
- Another option is postgres support which was donated by Greg Faustak. The module |
|
96 |
+ Another option is postgres support which was donated by Greg Fausak. The module |
|
97 | 97 |
still new and not that mature (read proven) yet. People using the module |
98 | 98 |
reported that it worked well. |
99 | 99 |
</simpara> |
... | ... |
@@ -101,7 +101,7 @@ |
101 | 101 |
Last option is dbtext module which uses plaintext files to store the data. This |
102 | 102 |
module is somewhat experimental and shouldn't be used for any serious |
103 | 103 |
deployment. The module is quite slow, but it can fit well into small |
104 |
- instalations containing only a couple of users or demos where you need to change |
|
104 |
+ installations containing only a couple of users or demos where you need to change |
|
105 | 105 |
the content of the database often by hand. |
106 | 106 |
</simpara> |
107 | 107 |
</answer> |
... | ... |
@@ -6,7 +6,7 @@ |
6 | 6 |
<qandaentry> |
7 | 7 |
<question> |
8 | 8 |
<simpara> |
9 |
- Is the &sername; (&ser;) free ? Or do we need to pay ? Becaure my boss worry |
|
9 |
+ Is the &sername; (&ser;) free ? Or do we need to pay ? Because my boss worry |
|
10 | 10 |
about that, please help me. |
11 | 11 |
</simpara> |
12 | 12 |
</question> |
... | ... |
@@ -49,7 +49,7 @@ |
49 | 49 |
<simpara> |
50 | 50 |
Not easily. &ser; has built-in some functions that allow to use it as user |
51 | 51 |
agent, but our primary goal is to develop a server so this is without |
52 |
- guarantee and can even dissapear in future versions. |
|
52 |
+ guarantee and can even disappear in future versions. |
|
53 | 53 |
</simpara> |
54 | 54 |
</answer> |
55 | 55 |
</qandaentry> |
... | ... |
@@ -62,7 +62,7 @@ |
62 | 62 |
<answer> |
63 | 63 |
<simpara> |
64 | 64 |
&ser;'s built-in location server uses in-<acronym>RAM</acronym> database for |
65 |
- high performance and optionally MySQL for persistency. More database |
|
65 |
+ high performance and optionally MySQL for persistence. More database |
|
66 | 66 |
protocols may be supplied on contractual basis. As far as I know, |
67 | 67 |
<acronym>DNS</acronym> is not used in the industry for user location. |
68 | 68 |
</simpara> |
... | ... |
@@ -94,7 +94,7 @@ |
94 | 94 |
</simpara> |
95 | 95 |
<simpara> |
96 | 96 |
A B2BUA acts merely as connection of two or more user agents which are |
97 |
- connected through some means. B2BUAs keep some state (usualy some structures |
|
97 |
+ connected through some means. B2BUAs keep some state (usually some structures |
|
98 | 98 |
in the memory) during the whole call. |
99 | 99 |
</simpara> |
100 | 100 |
<para> |
... | ... |
@@ -313,13 +313,13 @@ |
313 | 313 |
<qandaentry> |
314 | 314 |
<question> |
315 | 315 |
<simpara> |
316 |
- Is it necesarry to have a <acronym>DNS SVR</acronym> Resource Record, as |
|
316 |
+ Is it necessary to have a <acronym>DNS SVR</acronym> Resource Record, as |
|
317 | 317 |
mentioned in the ser-Howto guide for connecting to &ser; ? |
318 | 318 |
</simpara> |
319 | 319 |
</question> |
320 | 320 |
<answer> |
321 | 321 |
<simpara> |
322 |
- No. It's nice to have it, but you can work arround it setting a normal A |
|
322 |
+ No. It's nice to have it, but you can work around it setting a normal A |
|
323 | 323 |
record for your domain. The <acronym>SRV</acronym> lookup will fall back to |
324 | 324 |
normal A lookup. |
325 | 325 |
</simpara> |
... | ... |
@@ -340,7 +340,7 @@ |
340 | 340 |
<qandaentry> |
341 | 341 |
<question> |
342 | 342 |
<simpara> |
343 |
- Are you going to provide intergration support from &sip; to H.323 and vice |
|
343 |
+ Are you going to provide integration support from &sip; to H.323 and vice |
|
344 | 344 |
versa ? |
345 | 345 |
</simpara> |
346 | 346 |
</question> |
... | ... |
@@ -456,7 +456,7 @@ |
456 | 456 |
<qandaentry> |
457 | 457 |
<question> |
458 | 458 |
<simpara> |
459 |
- Can you send me detail for me to sign up for the comercial program. I would |
|
459 |
+ Can you send me detail for me to sign up for the commercial program. I would |
|
460 | 460 |
also like detail on your levels of support you offer (ie...paid support)? |
461 | 461 |
</simpara> |
462 | 462 |
</question> |
... | ... |
@@ -548,7 +548,7 @@ |
548 | 548 |
<qandaentry> |
549 | 549 |
<question> |
550 | 550 |
<simpara> |
551 |
- Is there any way to change the defaul log file to a special SER.log file ? |
|
551 |
+ Is there any way to change the default log file to a special SER.log file ? |
|
552 | 552 |
</simpara> |
553 | 553 |
</question> |
554 | 554 |
<answer> |
... | ... |
@@ -616,7 +616,7 @@ ser -E 2>/tmp/ser.log |
616 | 616 |
<qandaentry> |
617 | 617 |
<question> |
618 | 618 |
<simpara> |
619 |
- I would like know if &ser; support also the trasmission protocol |
|
619 |
+ I would like know if &ser; support also the transmission protocol |
|
620 | 620 |
<acronym>TCP</acronym>, or <acronym>TLS</acronym>. |
621 | 621 |
</simpara> |
622 | 622 |
</question> |
... | ... |
@@ -654,7 +654,7 @@ ser -E 2>/tmp/ser.log |
654 | 654 |
error occurs: |
655 | 655 |
</simpara> |
656 | 656 |
<simpara> |
657 |
- <quote>ERROR: Your message was not sent. You do not have permision to use the |
|
657 |
+ <quote>ERROR: Your message was not sent. You do not have permissions to use the |
|
658 | 658 |
gateway.</quote> |
659 | 659 |
</simpara> |
660 | 660 |
<simpara> |
... | ... |
@@ -1206,7 +1206,7 @@ out_uri=sip:addaline.com via_cnt==1". |
1206 | 1206 |
<qandaentry> |
1207 | 1207 |
<question> |
1208 | 1208 |
<simpara> |
1209 |
- It is posible to process the voicemail request on the same instance I use to |
|
1209 |
+ It is possible to process the voicemail request on the same instance I use to |
|
1210 | 1210 |
forward/register users ? |
1211 | 1211 |
</simpara> |
1212 | 1212 |
</question> |
... | ... |
@@ -1243,7 +1243,7 @@ out_uri=sip:addaline.com via_cnt==1". |
1243 | 1243 |
<qandaentry> |
1244 | 1244 |
<question> |
1245 | 1245 |
<simpara> |
1246 |
- What is symetric signalling ? |
|
1246 |
+ What is symmetric signaling ? |
|
1247 | 1247 |
</simpara> |
1248 | 1248 |
</question> |
1249 | 1249 |
<answer> |
... | ... |
@@ -45,7 +45,7 @@ |
45 | 45 |
</question> |
46 | 46 |
<answer> |
47 | 47 |
<simpara> |
48 |
- Dan Austin's howto (see &ser; webpage) is probably the currently most extensive |
|
48 |
+ Dan Austin's HOWTO (see &ser; webpage) is probably the currently most extensive |
|
49 | 49 |
documentation available. |
50 | 50 |
</simpara> |
51 | 51 |
</answer> |
... | ... |
@@ -8,7 +8,7 @@ |
8 | 8 |
|
9 | 9 |
<book> |
10 | 10 |
<bookinfo> |
11 |
- <title>&ser; HowTo</title> |
|
11 |
+ <title>&ser; HOWTO</title> |
|
12 | 12 |
<authorgroup> |
13 | 13 |
<author> |
14 | 14 |
<firstname>Dan</firstname> |
... | ... |
@@ -519,7 +519,7 @@ modparam ("usrloc", "db_mode", 2) |
519 | 519 |
</itemizedlist> |
520 | 520 |
</para> |
521 | 521 |
<para> |
522 |
- To enable digest authentication we additionaly need to uncomment the following two lines: |
|
522 |
+ To enable digest authentication we additionally need to uncomment the following two lines: |
|
523 | 523 |
</para> |
524 | 524 |
<screen format="linespecific"> |
525 | 525 |
loadmodule "/usr/lib/ser/modules/auth.so" |
... | ... |
@@ -580,7 +580,7 @@ if (!www_authorize("mydomain.com", "subscriber")) { |
580 | 580 |
<quote>heslo</quote> |
581 | 581 |
</para> |
582 | 582 |
<para> |
583 |
- To make JoeUser an administrator, we need to logon to MySQL and modify the database. |
|
583 |
+ To make JoeUser an administrator, we need to login to MySQL and modify the database. |
|
584 | 584 |
</para> |
585 | 585 |
<para> |
586 | 586 |
<screen format="linespecific"> |
... | ... |
@@ -598,7 +598,7 @@ mysql> select * from subscriber; |
598 | 598 |
The third from last field shows that Joe has been assigned admin privileges. |
599 | 599 |
</para> |
600 | 600 |
<para> |
601 |
- At this point Joe can logon to our server, but since he is the only user, there is |
|
601 |
+ At this point Joe can login to our server, but since he is the only user, there is |
|
602 | 602 |
not much he can do. We can now add additional users using the serctl script, or now |
603 | 603 |
is a good time to look at installing serweb, which will allow users to subscribe to |
604 | 604 |
our service. |
... | ... |
@@ -631,12 +631,12 @@ usage: |
631 | 631 |
* usrloc * |
632 | 632 |
ul show [<username>]................ show in-RAM online users |
633 | 633 |
ul rm <username> ................... delete user's UsrLoc entries |
634 |
- ul add <username> <uri> ............ introduce a permanent UrLoc entry |
|
634 |
+ ul add <username> <uri> ............ introduce a permanent UsrLoc entry |
|
635 | 635 |
showdb [<username>] ................ show online users flushed in DB |
636 | 636 |
|
637 | 637 |
* control and diagnostic * |
638 | 638 |
moni ... show internal status start .... start ser |
639 |
- ps ..... show runnig processes stop ..... stop ser |
|
639 |
+ ps ..... show running processes stop ..... stop ser |
|
640 | 640 |
fifo ... send raw FIFO commands restart .. restart ser |
641 | 641 |
ping <uri> .. ping a URI (OPTIONS) |
642 | 642 |
cisco_restart <uri> .. restart a Cisco phone (NOTIFY) |
... | ... |
@@ -952,7 +952,7 @@ $this->mail_header_from=<quote>Registration@ mydomain.com</quote>; |
952 | 952 |
Some &sip; client providers are building in options into their products that allow the |
953 | 953 |
user to identify the &ip; address that their phone will appear as to the public. This |
954 | 954 |
is a nice simple approach, but presumes that the person installing the client knows |
955 |
- what that IP address is, and that it doesn?t change. Cisco has built this feature |
|
955 |
+ what that IP address is, and that it doesn't change. Cisco has built this feature |
|
956 | 956 |
into their 79XX series &sip; phones. |
957 | 957 |
</para> |
958 | 958 |
<para> |
... | ... |
@@ -1091,7 +1091,7 @@ ngrep -n 5060 -d eth0 joe |
1091 | 1091 |
</listitem> |
1092 | 1092 |
<listitem> |
1093 | 1093 |
<para> |
1094 |
- SIPmacaddress.cnf - Phone specific settings, including logon name |
|
1094 |
+ SIPmacaddress.cnf - Phone specific settings, including login name |
|
1095 | 1095 |
and password. Example: SIP000A8A93D466.cnf |
1096 | 1096 |
</para> |
1097 | 1097 |
</listitem> |
... | ... |
@@ -1105,7 +1105,7 @@ ngrep -n 5060 -d eth0 joe |
1105 | 1105 |
<para> |
1106 | 1106 |
Each time the phone is powered on it will tftp download OS79XX and determine if |
1107 | 1107 |
it needs a firmware update. If no update is needed the next step is to download |
1108 |
- SIPDefault.cnf, SIPmacaddress.cnf, and optionally a dialplan, ringlist and ring |
|
1108 |
+ SIPDefault.cnf, SIPmacaddress.cnf, and optionally a dial plan, ringlist and ring |
|
1109 | 1109 |
tones. |
1110 | 1110 |
</para> |
1111 | 1111 |
<para> |
... | ... |
@@ -126,7 +126,7 @@ if (uri=~"^sip:jiri@") { |
126 | 126 |
<para> |
127 | 127 |
This example shows how to display caller's address |
128 | 128 |
in email notification. The trick is easy: process |
129 |
- request received on shell programm's input |
|
129 |
+ request received on shell program's input |
|
130 | 130 |
and grep From header field. |
131 | 131 |
</para> |
132 | 132 |
<programlisting format="linespecific"> |
... | ... |
@@ -246,7 +246,7 @@ SIP_HF_CONTACT=<sip:123.20.128.35:9315> |
246 | 246 |
<title>Adding Stateful Processing</title> |
247 | 247 |
<para> |
248 | 248 |
The previously improved example still features a shortcoming. |
249 |
- When a message retransmission arrives due to a nework |
|
249 |
+ When a message retransmission arrives due to a network |
|
250 | 250 |
mistake such as lost reply, the email notification is |
251 | 251 |
executed again and again. That happens because the script |
252 | 252 |
is stateless, i.e., no track of current transactions is |
... | ... |
@@ -261,7 +261,7 @@ SIP_HF_CONTACT=<sip:123.20.128.35:9315> |
261 | 261 |
a reply is sent statefully. |
262 | 262 |
<note> |
263 | 263 |
<para> |
264 |
- Note carefuly: it is important that the stateful |
|
264 |
+ Note carefully: it is important that the stateful |
|
265 | 265 |
reply processing (<command moreinfo="none">t_reply</command>) |
266 | 266 |
is used as opposed to using stateless replies |
267 | 267 |
(<command moreinfo="none">sl_send_reply</command>). |
... | ... |
@@ -307,7 +307,7 @@ SIP_HF_CONTACT=<sip:123.20.128.35:9315> |
307 | 307 |
is used for. It does not matter what caused the transaction |
308 | 308 |
to fail -- it may be unresponsive downstream server, |
309 | 309 |
server responding with 6xx, or server sending a 487 |
310 |
- reply, because an INVITE was cancelled. When any such |
|
310 |
+ reply, because an INVITE was canceled. When any such |
|
311 | 311 |
circumstances occur (i.e., transaction does not complete |
312 | 312 |
with a 2xx status code), <command moreinfo="none">failure_route</command> |
313 | 313 |
is entered. |
... | ... |
@@ -481,7 +481,7 @@ print |
481 | 481 |
# call this script to send an instant message; script parameters |
482 | 482 |
# will be displayed in message body |
483 | 483 |
# |
484 |
-# paremeters mean: message type, request-URI, outbound server is |
|
484 |
+# parameters mean: message type, request-URI, outbound server is |
|
485 | 485 |
# left blank ("."), required header fields From and To follow, |
486 | 486 |
# then optional header fields terminated by dot and optional |
487 | 487 |
# dot-terminated body |
... | ... |
@@ -517,7 +517,7 @@ EOF |
517 | 517 |
The web interface needs to have the ability to upload new user's |
518 | 518 |
contacts to <application moreinfo="none">ser</application>. |
519 | 519 |
This is what the <command moreinfo="none">ul_add</command> FIFO |
520 |
- command is good for. Paremeterized by user's name, table name, |
|
520 |
+ command is good for. Parameterized by user's name, table name, |
|
521 | 521 |
expiration time and weight, it allows external applications to |
522 | 522 |
introduce new contacts to server's in-memory user location table. |
523 | 523 |
</para> |
... | ... |
@@ -618,11 +618,11 @@ function write2fifo($fifo_cmd, &$errors, &$status){ |
618 | 618 |
<para> |
619 | 619 |
There are basically two ways how to build such a feature: |
620 | 620 |
distributed and centralized. We prefer the distributed |
621 |
- approach since it is very robust and leight-weighted. |
|
621 |
+ approach since it is very robust and light-weighted. |
|
622 | 622 |
The "click-to-dial" application just needs to instruct |
623 | 623 |
the calling user to call a destination and that's it. |
624 | 624 |
(That's done using "REFER" method.) |
625 |
- Then, the calling user takes over whereas the initating |
|
625 |
+ Then, the calling user takes over whereas the initiating |
|
626 | 626 |
application disappears from signaling and |
627 | 627 |
is no longer involved in subsequent communication. Which |
628 | 628 |
is good because such a simple design scales well. |
... | ... |
@@ -668,9 +668,9 @@ function write2fifo($fifo_cmd, &$errors, &$status){ |
668 | 668 |
<note> |
669 | 669 |
<para> |
670 | 670 |
The wrapper INVITE may or may not be used |
671 |
- in future. The internet draft |
|
671 |
+ in future. The Internet draft |
|
672 | 672 |
draft-ietf-sipping-service-examples |
673 |
- mentiones the click-to-dial application |
|
673 |
+ mentions the click-to-dial application |
|
674 | 674 |
without use of the dummy INVITE. As of |
675 | 675 |
today, most telephones do need it. |
676 | 676 |
</para> |
... | ... |
@@ -20,7 +20,7 @@ |
20 | 20 |
In this way, plug-ins such as RADIUS accounting, |
21 | 21 |
SMS gateway, ENUM queries, or presence agent have already been developed and are provided as |
22 | 22 |
advanced features. Other modules are underway: |
23 |
- firewall control, postgress and LDAP database drivers and more. |
|
23 |
+ firewall control, postgres and LDAP database drivers and more. |
|
24 | 24 |
</para> |
25 | 25 |
<para> |
26 | 26 |
Its performance and robustness allows it to serve millions of users |
... | ... |
@@ -317,7 +317,7 @@ |
317 | 317 |
</para> |
318 | 318 |
|
319 | 319 |
<para> |
320 |
- Additionaly, help may be obtained from our user forum. The community |
|
320 |
+ Additionally, help may be obtained from our user forum. The community |
|
321 | 321 |
of <application>SER</application> users is subscribed to the |
322 | 322 |
serusers@iptel.org mailing list and discusses issues related to |
323 | 323 |
<application>SER</application> operation. |
... | ... |
@@ -539,7 +539,7 @@ if (uri=~"^sip:(.+@)?(192\.168\.0\.10|(sip\.)?foo\.bar)([:;\?].*)?$") |
539 | 539 |
callers who can only |
540 | 540 |
use numeric keypads. Next-hop destination of IP users is looked up dynamically |
541 | 541 |
using user location database. On the other hand, PSTN destinations are |
542 |
- always indicated by nummerical usernames. Requests to PSTN are statically |
|
542 |
+ always indicated by numerical usernames. Requests to PSTN are statically |
|
543 | 543 |
forwarded to well-known PSTN gateways. |
544 | 544 |
</para> |
545 | 545 |
<example> |
... | ... |
@@ -547,11 +547,11 @@ if (uri=~"^sip:(.+@)?(192\.168\.0\.10|(sip\.)?foo\.bar)([:;\?].*)?$") |
547 | 547 |
<para> |
548 | 548 |
This example shows a simple dialing plan which reserves |
549 | 549 |
dialing prefix "8" for IP users, other numbers |
550 |
- are used for PSTN destinations and all other non-nummerical |
|
550 |
+ are used for PSTN destinations and all other non-numerical |
|
551 | 551 |
usernames are used for IP users. |
552 | 552 |
</para> |
553 | 553 |
<programlisting format="linespecific"> |
554 |
-# is it a PSTN destination? (is username nummerical and does not begin with 8?) |
|
554 |
+# is it a PSTN destination? (is username numerical and does not begin with 8?) |
|
555 | 555 |
if (uri=~"^sip:[0-79][0-9]*@") { # ... forward to gateways then; |
556 | 556 |
# check first to which PSTN destination the requests goes; |
557 | 557 |
# if it is US (prefix "1"), use the gateway 192.168.0.1... |
... | ... |
@@ -818,7 +818,7 @@ forward(uri:host, uri:port); |
818 | 818 |
allows translation of a single request URI into multiple |
819 | 819 |
outgoing URIs. The ability to forward a request to multiple |
820 | 820 |
destinations is known as <emphasis>forking</emphasis> |
821 |
- in SIP language. All outogoing URIs (in trivial case one of them) |
|
821 |
+ in SIP language. All outgoing URIs (in trivial case one of them) |
|
822 | 822 |
are called <emphasis>destination set</emphasis>. The destination |
823 | 823 |
set always includes one default URI, to which additional URIs |
824 | 824 |
can be appended. Maximum size of a destination set is limited by |
... | ... |
@@ -927,7 +927,7 @@ Expires: 600 |
927 | 927 |
(usrloc module's parameter <varname>timer_interval</varname> determines |
928 | 928 |
their length), all changes to the in-memory table are backed up in |
929 | 929 |
<application moreinfo="none">mysql</application> database to achieve |
930 |
- peristence accross server reboots. Administrators or application writers |
|
930 |
+ persistence across server reboots. Administrators or application writers |
|
931 | 931 |
can lookup list of current user's contacts stored in memory using the |
932 | 932 |
<application moreinfo="none">serctl</application> tool (see <xref linkend="serctl">). |
933 | 933 |
<example> |
... | ... |
@@ -1070,7 +1070,7 @@ t_relay_to_udp("192.168.99.100", "5060"); |
1070 | 1070 |
for accessing mysql databases and sl module for generating |
1071 | 1071 |
authentication challenges. We recommend that modules are |
1072 | 1072 |
loaded in dependency order to avoid ambiguous server |
1073 |
- behaviour. |
|
1073 |
+ behavior. |
|
1074 | 1074 |
</para> |
1075 | 1075 |
<para> |
1076 | 1076 |
<example id="moduleparameters"> |
... | ... |
@@ -1114,7 +1114,7 @@ route{ |
1114 | 1114 |
<title>Writing Scripts</title> |
1115 | 1115 |
<para> |
1116 | 1116 |
This section demonstrates simple examples |
1117 |
- how to configure server's behaviour using the |
|
1117 |
+ how to configure server's behavior using the |
|
1118 | 1118 |
<application moreinfo="none">ser</application> |
1119 | 1119 |
request routing language. All configuration scripts follow the |
1120 | 1120 |
<application moreinfo="none">ser</application> language |
... | ... |
@@ -1123,7 +1123,7 @@ route{ |
1123 | 1123 |
<listitem> |
1124 | 1124 |
<para> |
1125 | 1125 |
<emphasis>global configuration parameters</emphasis> -- |
1126 |
- these value affect behaviour of the server such as port |
|
1126 |
+ these value affect behavior of the server such as port |
|
1127 | 1127 |
number at which it listens, number of spawned children |
1128 | 1128 |
processes, and log-level. See <xref linkend="coreoptions"> |
1129 | 1129 |
for a list of available options. |
... | ... |
@@ -1184,7 +1184,7 @@ route{ |
1184 | 1184 |
<para> |
1185 | 1185 |
The configuration script, <filename moreinfo="none">ser.cfg</filename>, |
1186 | 1186 |
is a part of every <application moreinfo="none">ser</application> |
1187 |
- distribution and defines default behaviour. It allows users |
|
1187 |
+ distribution and defines default behavior. It allows users |
|
1188 | 1188 |
to register with the server and have requests proxied to each |
1189 | 1189 |
other. |
1190 | 1190 |
</para> |
... | ... |
@@ -1424,7 +1424,7 @@ route{ |
1424 | 1424 |
The primitives used are <command moreinfo="none">t_on_failure(r)</command> |
1425 | 1425 |
and <command moreinfo="none">failure_route[r]{}.</command> If |
1426 | 1426 |
<command>t_on_failure</command> is called before |
1427 |
- a request is statefuly forwarded and a forwarding failure occurs, |
|
1427 |
+ a request is statefully forwarded and a forwarding failure occurs, |
|
1428 | 1428 |
<application moreinfo="none">ser</application> |
1429 | 1429 |
will return to request processing in a <command moreinfo="none">failure_route</command> |
1430 | 1430 |
block. Failures include receipt of a SIP error |
... | ... |
@@ -159,7 +159,7 @@ Warning: 392 127.0.0.1:5060 "Noisy feedback tells: pid=31604 req_src_ip=153.96.1 |
159 | 159 |
<para> |
160 | 160 |
Server's process id. That is useful for |
161 | 161 |
debugging to discover situations when |
162 |
- mutliple servers listen at the same |
|
162 |
+ multiple servers listen at the same |
|
163 | 163 |
address. |
164 | 164 |
</para> |
165 | 165 |
</listitem> |
... | ... |
@@ -347,7 +347,7 @@ warning: IP extract from warning activated to be more informational |
347 | 347 |
<application>ser</application> by default logs |
348 | 348 |
to <application>syslog</application> facility. |
349 | 349 |
It is very useful to watch log messages for |
350 |
- abnormal behaviour. Log messages, subject to |
|
350 |
+ abnormal behavior. Log messages, subject to |
|
351 | 351 |
<application>syslog</application> configuration |
352 | 352 |
may be stored at different files, or even at remote |
353 | 353 |
systems. A typical location of the log file is |
... | ... |
@@ -377,7 +377,7 @@ warning: IP extract from warning activated to be more informational |
377 | 377 |
</listitem> |
378 | 378 |
<listitem> |
379 | 379 |
<para> |
380 |
- Set explicitely at which address |
|
380 |
+ Set explicitly at which address |
|
381 | 381 |
<application moreinfo="none">ser</application> |
382 | 382 |
should be listening, e.g., <varname>listen=192.168.2.16</varname>. |
383 | 383 |
</para> |
... | ... |
@@ -607,7 +607,7 @@ sip:666@gateway.foo.bar |
607 | 607 |
<para> |
608 | 608 |
Frequently, it is desirable for a user to have multiple |
609 | 609 |
addresses in a domain. For example, a user with username "john.doe" wants to be |
610 |
- reachable at a shorter address "john" or at a nummerical address |
|
610 |
+ reachable at a shorter address "john" or at a numerical address |
|
611 | 611 |
"12335", so that PSTN callers with digits-only key-pad can reach |
612 | 612 |
him too. |
613 | 613 |
</para> |
... | ... |
@@ -668,7 +668,7 @@ sip:john.doe@foo.bar |
668 | 668 |
</screen> |
669 | 669 |
</para> |
670 | 670 |
<para> |
671 |
- Note that persitence needs to be turned on in usrloc |
|
671 |
+ Note that persistence needs to be turned on in usrloc |
|
672 | 672 |
module. All changes to aliases will be otherwise lost |
673 | 673 |
on server reboot. To enable persistence, set the |
674 | 674 |
db_mode usrloc parameter to a non-zero value. |
... | ... |
@@ -778,7 +778,7 @@ MySql Password: |
778 | 778 |
</para> |
779 | 779 |
<para> |
780 | 780 |
To enable call accounting, tm and acc modules need to be loaded, |
781 |
- requests need to be processed statefuly and labeled for |
|
781 |
+ requests need to be processed statefully and labeled for |
|
782 | 782 |
accounting. That means, if you want a transaction to be reported, |
783 | 783 |
the initial request must have taken the path |
784 | 784 |
"<command>setflag(X)</command>, <command>t_relay</command>" |
... | ... |
@@ -789,7 +789,7 @@ MySql Password: |
789 | 789 |
<para> |
790 | 790 |
Also note, that by default only transactions that initiate |
791 | 791 |
a SIP dialog (typically INVITE) visit a proxy server. |
792 |
- Subsequent transactions are exhanged directly between |
|
792 |
+ Subsequent transactions are exchanged directly between |
|
793 | 793 |
end-devices, do not visit proxy server and cannot be |
794 | 794 |
reported. To be able to report on subsequent transactions, |
795 | 795 |
you need to force them visit proxy server by turning |
... | ... |
@@ -935,7 +935,7 @@ MySql Password: |
935 | 935 |
<emphasis>Forwarding Services</emphasis>. All sort of services |
936 | 936 |
with the "forward_on_event" logic, which rely on |
937 | 937 |
<command moreinfo="none">t_on_failure</command> tm |
938 |
- action must be processed statefuly. |
|
938 |
+ action must be processed statefully. |
|
939 | 939 |
</para> |
940 | 940 |
</listitem> |
941 | 941 |
<listitem> |
... | ... |
@@ -953,8 +953,8 @@ MySql Password: |
953 | 953 |
<para> |
954 | 954 |
Positive return value of stateless |
955 | 955 |
<command moreinfo="none">forward</command> action only indicates that |
956 |
- a request was successfuly sent out, and does not gain any knowledge |
|
957 |
- about whether it was successfuly received or replied. Neither does |
|
956 |
+ a request was successfully sent out, and does not gain any knowledge |
|
957 |
+ about whether it was successfully received or replied. Neither does |
|
958 | 958 |
the return value of |
959 | 959 |
the stateful <command moreinfo="none">t_relay</command> action family |
960 | 960 |
gain you this knowledge. However, these actions store transactional |
... | ... |
@@ -1055,7 +1055,7 @@ modparam("acc", "log_missed_flag", 3 ); |
1055 | 1055 |
if (!lookup("location")) { |
1056 | 1056 |
# call invitations to off-line users are reported using the |
1057 | 1057 |
# acc_request action; to avoid duplicate reports on request |
1058 |
- # retransmissions, request is processed statefuly (t_newtran, |
|
1058 |
+ # retransmissions, request is processed statefully (t_newtran, |
|
1059 | 1059 |
# t_reply) |
1060 | 1060 |
if ((method=="INVITE" || method=="ACK") && t_newtran() ) { |
1061 | 1061 |
t_reply("404", "Not Found"); |
... | ... |
@@ -1088,14 +1088,14 @@ if (!lookup("location")) { |
1088 | 1088 |
and save money charged for IP addresses. Unfortunately, they |
1089 | 1089 |
translate addresses in a way which is not compatible with SIP. |
1090 | 1090 |
SIP advertises receiver addresses in its payload. The advertised |
1091 |
- addresses are invalid out of NATted networks. As a result, |
|
1092 |
- SIP communication does not work accross NATs without extra |
|
1091 |
+ addresses are invalid out of NATed networks. As a result, |
|
1092 |
+ SIP communication does not work across NATs without extra |
|
1093 | 1093 |
effort. |
1094 | 1094 |
</para> |
1095 | 1095 |
<para> |
1096 | 1096 |
There are few methods that may be deployed to traverse NATs. |
1097 | 1097 |
How proper their use is depends on the deployment scenario. |
1098 |
- Unfortunatelly, all the methods have some limitations and |
|
1098 |
+ Unfortunately, all the methods have some limitations and |
|
1099 | 1099 |
there is no straight-forward solution addressing all |
1100 | 1100 |
scenarios. Note that none of these methods takes explicit |
1101 | 1101 |
support in <application moreinfo="none">ser</application>. |
... | ... |
@@ -1171,9 +1171,9 @@ if (!lookup("location")) { |
1171 | 1171 |
<title>Authentication Policy: Prevention of Unauthorized Domain |
1172 | 1172 |
Name Use in From and More</title> |
1173 | 1173 |
<para> |
1174 |
- Malicous users can claim a name of domain, to which they do |
|
1174 |
+ Malicious users can claim a name of domain, to which they do |
|
1175 | 1175 |
not administratively belong, in From header field. This |
1176 |
- behaviour cannot be generally prevented. The reason is |
|
1176 |
+ behavior cannot be generally prevented. The reason is |
|
1177 | 1177 |
that requests with such a faked header field do not need |
1178 | 1178 |
to visit servers of the domain in question. However, if they |
1179 | 1179 |
do so, it is desirable to assure that users claiming |
... | ... |
@@ -1184,7 +1184,7 @@ if (!lookup("location")) { |
1184 | 1184 |
the proxy server. |
1185 | 1185 |
</para> |
1186 | 1186 |
<para> |
1187 |
- Preventing unathorized domain name use in relayed requests |
|
1187 |
+ Preventing unauthorized domain name use in relayed requests |
|
1188 | 1188 |
is not difficult. |
1189 | 1189 |
One needs to authenticate each request with name of the |
1190 | 1190 |
served domain in From header field. To do so, one can |
... | ... |
@@ -1271,7 +1271,7 @@ if (to me): |
1271 | 1271 |
is guarding PSTN gateways (see <xref linkend="acl">). There |
1272 | 1272 |
may be destinations that are given away for free whereas |
1273 | 1273 |
other destinations may require access control using |
1274 |
- group membership, to which authentication is a prerequisity. |
|
1274 |
+ group membership, to which authentication is a prerequisite. |
|
1275 | 1275 |
</para> |
1276 | 1276 |
|
1277 | 1277 |
</section> <!-- authentication policy, faked froms --> |
... | ... |
@@ -1332,7 +1332,7 @@ if (to me): |
1332 | 1332 |
<para> |
1333 | 1333 |
This section gathers practices how to deal with errors |
1334 | 1334 |
known to occur frequently. To understand how to watch |
1335 |
- SIP messages, server logs, and in genereal how to |
|
1335 |
+ SIP messages, server logs, and in general how to |
|
1336 | 1336 |
troubleshoot, read also <xref linkend="operationalpractices">. |
1337 | 1337 |
</para> |
1338 | 1338 |
<qandaset> |
... | ... |
@@ -31,12 +31,12 @@ usage: |
31 | 31 |
* usrloc * |
32 | 32 |
serctl ul show [<username>]................ show in-RAM online users |
33 | 33 |
serctl ul rm <username> ................... delete user's UsrLoc entries |
34 |
- serctl ul add <username> <uri> ............ introduce a permanent UrLoc entry |
|
34 |
+ serctl ul add <username> <uri> ............ introduce a permanent UsrLoc entry |
|
35 | 35 |
serctl showdb [<username>] ................ show online users flushed in DB |
36 | 36 |
|
37 | 37 |
* server health * |
38 | 38 |
serctl monitor ............................ show internal status |
39 |
- serctl ps ................................. show runnig processes |
|
39 |
+ serctl ps ................................. show running processes |
|
40 | 40 |
serctl fifo ............................... send raw commands to FIFO |
41 | 41 |
|
42 | 42 |
Commands labeled with (*) will prompt for a MySQL password. |
... | ... |
@@ -3,7 +3,7 @@ |
3 | 3 |
<section id="coreoptions"> |
4 | 4 |
<title>Core Options</title> |
5 | 5 |
<para>Core options are located in beginning of configuration file and |
6 |
- affect behaviour of the server.</para> |
|
6 |
+ affect behavior of the server.</para> |
|
7 | 7 |
<itemizedlist> |
8 | 8 |
<listitem> |
9 | 9 |
<para> |
... | ... |
@@ -595,7 +595,7 @@ if (len_gt(1024)) { |
595 | 595 |
<listitem> |
596 | 596 |
<para> |
597 | 597 |
<emphasis>-l address</emphasis> - Listens on the specified address. Multiple -l mean listening |
598 |
- on multiple addresses. The default behaviour is to listen on all the ipv4 interfaces. |
|
598 |
+ on multiple addresses. The default behavior is to listen on all the ipv4 interfaces. |
|
599 | 599 |
</para> |
600 | 600 |
</listitem> |
601 | 601 |
<listitem> |
... | ... |
@@ -1067,7 +1067,7 @@ if (len_gt(1024)) { |
1067 | 1067 |
RegExp, Substitute |
1068 | 1068 |
</entry> |
1069 | 1069 |
<entry> |
1070 |
- find the first occurence of a string matching the regular |
|
1070 |
+ find the first occurrence of a string matching the regular |
|
1071 | 1071 |
expression in header or body and replace it with a substitute |
1072 | 1072 |
</entry> |
1073 | 1073 |
</row> |
... | ... |
@@ -1082,7 +1082,7 @@ if (len_gt(1024)) { |
1082 | 1082 |
RegExp, Substitute |
1083 | 1083 |
</entry> |
1084 | 1084 |
<entry> |
1085 |
- find all occurences of a string matching the regular |
|
1085 |
+ find all occurrences of a string matching the regular |
|
1086 | 1086 |
expression in header or body and replace it with a substitute |
1087 | 1087 |
</entry> |
1088 | 1088 |
</row> |
... | ... |
@@ -1284,7 +1284,7 @@ if (len_gt(1024)) { |
1284 | 1284 |
<entry>t_uac_dlg</entry> |
1285 | 1285 |
<entry>tm</entry> |
1286 | 1286 |
<entry>method, request URI, outbound URI (if none, empty line with a single dot), |
1287 |
- dot-line-terminated header fields, optionaly dot-line terminated message |
|
1287 |
+ dot-line-terminated header fields, optionally dot-line terminated message |
|
1288 | 1288 |
body. |
1289 | 1289 |
</entry> |
1290 | 1290 |
|
... | ... |
@@ -43,7 +43,7 @@ |
43 | 43 |
<para> |
44 | 44 |
If you want your voicemail system to support |
45 | 45 |
other codecs, a simple plugin system with |
46 |
- SDK alows you to integrate them fast and |
|
46 |
+ SDK allows you to integrate them fast and |
|
47 | 47 |
simply (see the basis plugins for examples). |
48 | 48 |
</para> |
49 | 49 |
</listitem> |
... | ... |
@@ -58,8 +58,8 @@ |
58 | 58 |
<listitem> |
59 | 59 |
<para> |
60 | 60 |
The sound conversion engine doesn't |
61 |
- support yet resampling. It means that |
|
62 |
- input and ouput files have to be |
|
61 |
+ support yet re-sampling. It means that |
|
62 |
+ input and output files have to be |
|
63 | 63 |
compatible with the sampling rate of the |
64 | 64 |
codec. All codecs included with the |
65 | 65 |
distribution work at 8kHz, which means |
... | ... |
@@ -85,7 +85,7 @@ |
85 | 85 |
<listitem> |
86 | 86 |
<para> |
87 | 87 |
First, you need to compile Ser with voicemail |
88 |
- support. Thatfor, you must edit Ser's |
|
88 |
+ support. Therefore, you must edit Ser's |
|
89 | 89 |
Makefile.defs file and uncomment the line with |
90 | 90 |
'-DVOICE_MAIL' and '-D_TOTAG'. |
91 | 91 |
</para> |
... | ... |
@@ -156,7 +156,7 @@ |
156 | 156 |
</section> |
157 | 157 |
<section> |
158 | 158 |
|