#### core, lib, modules: restructured source code tree

- new folder src/ to hold the source code for main project applications
- main.c is in src/
- all core files are subfolder are in src/core/
- modules are in src/modules/
- libs are in src/lib/
- application Makefiles are in src/
- application binary is built in src/ (src/kamailio)

Daniel-Constantin Mierla authored on 07/12/2016 11:03:51
Showing 1 changed files
 1 1 deleted file mode 100644 ... ... @@ -1,42 +0,0 @@ 1 -/*  2 - * Copyright (C) 2006 iptelorg GmbH 3 - * 4 - * This file is part of Kamailio, a free SIP server. 5 - * 6 - * Kamailio is free software; you can redistribute it and/or modify 7 - * it under the terms of the GNU General Public License as published by 8 - * the Free Software Foundation; either version 2 of the License, or 9 - * (at your option) any later version 10 - * 11 - * Kamailio is distributed in the hope that it will be useful, 12 - * but WITHOUT ANY WARRANTY; without even the implied warranty of 13 - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 - * GNU General Public License for more details. 15 - * 16 - * You should have received a copy of the GNU General Public License 17 - * along with this program; if not, write to the Free Software 18 - * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA 19 - */ 20 - 21 -/*! 22 - * \file 23 - * \brief Kamailio core :: atomic_ops init functions 24 - * 25 - * Copyright (C) 2006 iptelorg GmbH 26 - * 27 - * \ingroup core 28 - * Module: \ref core 29 - * 30 - * Needed for lock intializing if no native asm locks are available 31 - * for the current arch./compiler combination, see \ref atomic_ops.c 32 - */ 33 - 34 -#ifndef __atomic_ops_init_h 35 -#define __atomic_ops_init_h 36 - 37 -/*! \brief init atomic ops */ 38 -int init_atomic_ops(void); 39 -/*! \brief destroy atomic ops (e.g. frees the locks, if locks are used) */ 40 -void destroy_atomic_ops(void); 41 - 42 -#endif

#### core : Update include files - delete IDs, update doxygen, delete history

Olle E. Johansson authored on 03/01/2015 10:55:48
Showing 1 changed files
 ... ... @@ -1,16 +1,14 @@ 1 1  /*  2 - * $Id$ 3 - *  4 2  * Copyright (C) 2006 iptelorg GmbH 5 3  * 6 - * This file is part of ser, a free SIP server. 4 + * This file is part of Kamailio, a free SIP server. 7 5  * 8 - * ser is free software; you can redistribute it and/or modify 6 + * Kamailio is free software; you can redistribute it and/or modify 9 7  * it under the terms of the GNU General Public License as published by 10 8  * the Free Software Foundation; either version 2 of the License, or 11 9  * (at your option) any later version 12 10  * 13 - * ser is distributed in the hope that it will be useful, 11 + * Kamailio is distributed in the hope that it will be useful, 14 12  * but WITHOUT ANY WARRANTY; without even the implied warranty of 15 13  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 16 14  * GNU General Public License for more details. ... ... @@ -22,7 +20,9 @@ 22 20   23 21  /*! 24 22  * \file 25 - * \brief SIP-router core :: atomic_ops init functions 23 + * \brief Kamailio core :: atomic_ops init functions 24 + * 25 + * Copyright (C) 2006 iptelorg GmbH 26 26  * 27 27  * \ingroup core 28 28  * Module: \ref core ... ... @@ -30,11 +30,6 @@ 30 30  * Needed for lock intializing if no native asm locks are available 31 31  * for the current arch./compiler combination, see \ref atomic_ops.c 32 32  */ 33 -/*  34 - * History: 35 - * -------- 36 - * 2006-03-30 created by andrei 37 - */ 38 33   39 34  #ifndef __atomic_ops_init_h 40 35  #define __atomic_ops_init_h

#### all: updated FSF address in GPL text

Anthony Messina authored on 04/07/2014 09:36:37 • Daniel-Constantin Mierla committed on 04/07/2014 09:37:36
Showing 1 changed files
 ... ... @@ -17,7 +17,7 @@ 17 17  * 18 18  * You should have received a copy of the GNU General Public License 19 19  * along with this program; if not, write to the Free Software 20 - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 20 + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA 21 21  */ 22 22   23 23  /*!

#### core: Added void to declarations of functions with empty argument list

In C language, a declaration in the form int f(); is equivalent to int f(...);, thus being able to accept an indefinit number of parameters. With the -Wstrict-prototypes GCC options, these declarations are reported as "function declaration isn’t a prototype".
On some cases, this may trick the compiler into generating unoptimized code (like preparing to handle variadic argument list).
In all cases having a declaration int f() and a definition inf f(int) is missleading, even if standard compliant.
This is still Work in Progress. (maybe adding the -Wstrict-prototypes option to default is desireable)

Marius Zbihlei authored on 02/04/2012 14:19:17
Showing 1 changed files
 ... ... @@ -40,8 +40,8 @@ 40 40  #define __atomic_ops_init_h 41 41   42 42  /*! \brief init atomic ops */ 43 -int init_atomic_ops(); 43 +int init_atomic_ops(void); 44 44  /*! \brief destroy atomic ops (e.g. frees the locks, if locks are used) */ 45 -void destroy_atomic_ops(); 45 +void destroy_atomic_ops(void); 46 46   47 47  #endif

oej authored on 25/10/2009 19:11:28
Showing 1 changed files
 ... ... @@ -10,11 +10,6 @@ 10 10  * the Free Software Foundation; either version 2 of the License, or 11 11  * (at your option) any later version 12 12  * 13 - * For a license to use the ser software under conditions 14 - * other than those described here, or to purchase support for this 15 - * software, please contact iptel.org by e-mail at the following addresses: 16 - * info@iptel.org 17 - * 18 13  * ser is distributed in the hope that it will be useful, 19 14  * but WITHOUT ANY WARRANTY; without even the implied warranty of 20 15  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ... ... @@ -24,6 +19,7 @@ 24 19  * along with this program; if not, write to the Free Software 25 20  * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 26 21  */ 22 + 27 23  /*! 28 24  * \file 29 25  * \brief SIP-router core :: atomic_ops init functions

#### - Doxygen updates on core files - Add project name to doxygen in Makefile

oej authored on 19/10/2009 20:35:43
Showing 1 changed files
 ... ... @@ -24,10 +24,15 @@ 24 24  * along with this program; if not, write to the Free Software 25 25  * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 26 26  */ 27 -/* 28 - * atomic_ops init functions 29 - * (needed for lock intializing if no native asm locks are available 30 - * for the current arch./compiler combination, see atomic_ops.c) 27 +/*! 28 + * \file 29 + * \brief SIP-router core :: atomic_ops init functions 30 + * 31 + * \ingroup core 32 + * Module: \ref core 33 + * 34 + * Needed for lock intializing if no native asm locks are available 35 + * for the current arch./compiler combination, see \ref atomic_ops.c 31 36  */ 32 37  /*  33 38  * History: ... ... @@ -38,9 +43,9 @@ 38 43  #ifndef __atomic_ops_init_h 39 44  #define __atomic_ops_init_h 40 45   41 -/* init atomic ops */ 46 +/*! \brief init atomic ops */ 42 47  int init_atomic_ops(); 43 -/* destroy atomic ops (e.g. frees the locks, if locks are used) */ 48 +/*! \brief destroy atomic ops (e.g. frees the locks, if locks are used) */ 44 49  void destroy_atomic_ops(); 45 50   46 51  #endif

#### - makefile: - compile in 64bit mode by default on sparc64 - sparc <= v8 support - -CC_GCC_LIKE_ASM is defined when the compiler supports gcc style inline asm (gcc and icc)

- atomic operations and memory barriers support for:
- x86
- x86_64
- mips (only in NOSMP mode and if it supports ll and sc)
- mips2 (mips32, isa >= 2)
- mips64
- powerpc
- powerpc64
- sparc <= v8 (only memory barriers, the atomic operations are implemented
using locks because there is no hardware support for them)
- sparc64 - both 32 (v8plus) and 64 bit mode
If there is no support for the compiler/arch. combination, it falls back to
locks.

The code is tested (only basic tests: it runs and the results are ok, but no
parallel tests) on x86, x86_64, mips2, powerpc, sparc64 (both modes).
The sparc version runs ok on sparc64 (so it's most likely ok).
powerpc64 and mips64 not tested due to no access to the corresponding
hardware, but they do compile ok.
For more details see the comments at the beginning of atomic_ops.h.

Andrei Pelinescu-Onciul authored on 30/03/2006 19:56:06
Showing 1 changed files
 1 1 new file mode 100644 ... ... @@ -0,0 +1,46 @@ 1 +/*  2 + * $Id$ 3 + *  4 + * Copyright (C) 2006 iptelorg GmbH 5 + * 6 + * This file is part of ser, a free SIP server. 7 + * 8 + * ser is free software; you can redistribute it and/or modify 9 + * it under the terms of the GNU General Public License as published by 10 + * the Free Software Foundation; either version 2 of the License, or 11 + * (at your option) any later version 12 + * 13 + * For a license to use the ser software under conditions 14 + * other than those described here, or to purchase support for this 15 + * software, please contact iptel.org by e-mail at the following addresses: 16 + * info@iptel.org 17 + * 18 + * ser is distributed in the hope that it will be useful, 19 + * but WITHOUT ANY WARRANTY; without even the implied warranty of 20 + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 21 + * GNU General Public License for more details. 22 + * 23 + * You should have received a copy of the GNU General Public License 24 + * along with this program; if not, write to the Free Software 25 + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 26 + */ 27 +/* 28 + * atomic_ops init functions 29 + * (needed for lock intializing if no native asm locks are available 30 + * for the current arch./compiler combination, see atomic_ops.c) 31 + */ 32 +/*  33 + * History: 34 + * -------- 35 + * 2006-03-30 created by andrei 36 + */ 37 + 38 +#ifndef __atomic_ops_init_h 39 +#define __atomic_ops_init_h 40 + 41 +/* init atomic ops */ 42 +int init_atomic_ops(); 43 +/* destroy atomic ops (e.g. frees the locks, if locks are used) */ 44 +void destroy_atomic_ops(); 45 + 46 +#endif