Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
O
OpenXG-RAN
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
canghaiwuhen
OpenXG-RAN
Commits
e0151733
Commit
e0151733
authored
Dec 03, 2014
by
Lionel Gauthier
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
git-svn-id:
http://svn.eurecom.fr/openair4G/trunk@6150
818b1a75-f10b-46b9-bf7c-635c3b92a50f
parent
9ca953d5
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
42 additions
and
13 deletions
+42
-13
openair-cn/SGW-LITE/spgw_config.c
openair-cn/SGW-LITE/spgw_config.c
+42
-13
No files found.
openair-cn/SGW-LITE/spgw_config.c
View file @
e0151733
...
...
@@ -155,8 +155,6 @@ int spgw_config_init(char* lib_config_file_name_pP, spgw_config_t* config_pP) {
char
*
pgw_default_dns_ipv4_address
=
NULL
;
char
*
pgw_default_dns_sec_ipv4_address
=
NULL
;
char
*
delimiters
=
NULL
;
char
*
saveptr1
=
NULL
;
char
*
astring
=
NULL
;
char
*
atoken
=
NULL
;
char
*
atoken2
=
NULL
;
...
...
@@ -165,7 +163,6 @@ int spgw_config_init(char* lib_config_file_name_pP, spgw_config_t* config_pP) {
char
*
mask
=
NULL
;
int
num
=
0
;
int
i
=
0
;
int
jh
,
jn
;
unsigned
char
buf_in6_addr
[
sizeof
(
struct
in6_addr
)];
struct
in6_addr
addr6_start
;
struct
in6_addr
addr6_mask
;
...
...
@@ -178,6 +175,7 @@ int spgw_config_init(char* lib_config_file_name_pP, spgw_config_t* config_pP) {
pgw_lite_conf_ipv6_list_elm_t
*
ip6_ref
=
NULL
;
#if defined (ENABLE_USE_GTPU_IN_KERNEL)
char
system_cmd
[
256
];
int
ret
;
#endif
memset
((
char
*
)
config_pP
,
0
,
sizeof
(
spgw_config_t
));
...
...
@@ -226,7 +224,11 @@ int spgw_config_init(char* lib_config_file_name_pP, spgw_config_t* config_pP) {
free
(
cidr
);
#if defined (ENABLE_USE_GTPU_IN_KERNEL)
system
(
"echo 0 > /proc/sys/net/ipv4/conf/all/send_redirects"
);
ret
=
system
(
"echo 0 > /proc/sys/net/ipv4/conf/all/send_redirects"
);
if
(
ret
<
0
)
{
SPGW_APP_ERROR
(
"ERROR in setting echo 0 > /proc/sys/net/ipv4/conf/all/send_redirects: %d
\n
"
,
ret
);
}
#endif
in_addr_var
.
s_addr
=
config_pP
->
sgw_config
.
ipv4
.
sgw_ipv4_address_for_S1u_S12_S4_up
;
SPGW_APP_INFO
(
"Parsing configuration file found sgw_ipv4_address_for_S1u_S12_S4_up: %s/%d on %s
\n
"
,
...
...
@@ -273,7 +275,10 @@ int spgw_config_init(char* lib_config_file_name_pP, spgw_config_t* config_pP) {
config_pP
->
sgw_config
.
ipv4
.
sgw_interface_name_for_S1u_S12_S4_up
,
config_pP
->
sgw_config
.
sgw_interface_mtu_for_S1u_S12_S4_up
)
>
0
)
{
SPGW_APP_INFO
(
"Set S1U interface MTU: %s
\n
"
,
system_cmd
);
system
(
system_cmd
);
ret
=
system
(
system_cmd
);
if
(
ret
<
0
)
{
SPGW_APP_ERROR
(
"ERROR in setting %s: %d
\n
"
,
system_cmd
,
ret
);
}
}
else
{
SPGW_APP_ERROR
(
"Set S1U interface MTU
\n
"
);
}
...
...
@@ -293,7 +298,10 @@ int spgw_config_init(char* lib_config_file_name_pP, spgw_config_t* config_pP) {
"iptables -t raw -I PREROUTING -i %s --protocol udp --destination-port 2152 -j DROP"
,
config_pP
->
sgw_config
.
ipv4
.
sgw_interface_name_for_S1u_S12_S4_up
)
>
0
)
{
SPGW_APP_INFO
(
"Drop uplink traffic: %s
\n
"
,
system_cmd
);
system
(
system_cmd
);
ret
=
system
(
system_cmd
);
if
(
ret
<
0
)
{
SPGW_APP_ERROR
(
"ERROR in setting %s: %d
\n
"
,
system_cmd
,
ret
);
}
}
else
{
SPGW_APP_ERROR
(
"Drop uplink traffic
\n
"
);
}
...
...
@@ -363,7 +371,10 @@ int spgw_config_init(char* lib_config_file_name_pP, spgw_config_t* config_pP) {
"iptables -t nat -A POSTROUTING -o %s ! --protocol sctp -j MASQUERADE"
,
config_pP
->
pgw_config
.
ipv4
.
pgw_interface_name_for_SGI
)
>
0
)
{
SPGW_APP_INFO
(
"Masquerade SGI: %s
\n
"
,
system_cmd
);
system
(
system_cmd
);
ret
=
system
(
system_cmd
);
if
(
ret
<
0
)
{
SPGW_APP_ERROR
(
"ERROR in setting %s: %d
\n
"
,
system_cmd
,
ret
);
}
}
else
{
SPGW_APP_ERROR
(
"Masquerade SGI
\n
"
);
}
...
...
@@ -378,7 +389,10 @@ int spgw_config_init(char* lib_config_file_name_pP, spgw_config_t* config_pP) {
"iptables -I POSTROUTING -t mangle -o %s -m mark ! --mark 0 ! --protocol sctp -j CONNMARK --save-mark"
,
config_pP
->
pgw_config
.
ipv4
.
pgw_interface_name_for_SGI
)
>
0
)
{
SPGW_APP_INFO
(
"Save mark: %s
\n
"
,
system_cmd
);
system
(
system_cmd
);
ret
=
system
(
system_cmd
);
if
(
ret
<
0
)
{
SPGW_APP_ERROR
(
"ERROR in setting %s: %d
\n
"
,
system_cmd
,
ret
);
}
}
else
{
SPGW_APP_ERROR
(
"Save mark
\n
"
);
}
...
...
@@ -386,7 +400,10 @@ int spgw_config_init(char* lib_config_file_name_pP, spgw_config_t* config_pP) {
"iptables -I PREROUTING -t mangle -i %s ! --protocol sctp -j CONNMARK --restore-mark"
,
config_pP
->
pgw_config
.
ipv4
.
pgw_interface_name_for_SGI
)
>
0
)
{
SPGW_APP_INFO
(
"Restore mark: %s
\n
"
,
system_cmd
);
system
(
system_cmd
);
ret
=
system
(
system_cmd
);
if
(
ret
<
0
)
{
SPGW_APP_ERROR
(
"ERROR in setting %s: %d
\n
"
,
system_cmd
,
ret
);
}
}
else
{
SPGW_APP_ERROR
(
"Restore mark
\n
"
);
}
...
...
@@ -419,7 +436,10 @@ int spgw_config_init(char* lib_config_file_name_pP, spgw_config_t* config_pP) {
atoken2
,
config_pP
->
sgw_config
.
ipv4
.
sgw_interface_name_for_S1u_S12_S4_up
)
>
0
)
{
SPGW_APP_INFO
(
"Add route: %s
\n
"
,
system_cmd
);
system
(
system_cmd
);
ret
=
system
(
system_cmd
);
if
(
ret
<
0
)
{
SPGW_APP_ERROR
(
"ERROR in setting %s: %d
\n
"
,
system_cmd
,
ret
);
}
}
else
{
SPGW_APP_ERROR
(
"Add route: for %s
\n
"
,
astring
);
}
...
...
@@ -429,7 +449,10 @@ int spgw_config_init(char* lib_config_file_name_pP, spgw_config_t* config_pP) {
"iptables -t filter -I FORWARD -d %s/%s -j DROP"
,
astring
,
atoken2
)
>
0
)
{
SPGW_APP_INFO
(
"Drop downlink traffic: %s
\n
"
,
system_cmd
);
system
(
system_cmd
);
ret
=
system
(
system_cmd
);
if
(
ret
<
0
)
{
SPGW_APP_ERROR
(
"ERROR in setting %s: %d
\n
"
,
system_cmd
,
ret
);
}
}
else
{
SPGW_APP_ERROR
(
"Drop downlink traffic
\n
"
);
}
...
...
@@ -437,7 +460,10 @@ int spgw_config_init(char* lib_config_file_name_pP, spgw_config_t* config_pP) {
"iptables -t filter -I OUTPUT -d %s/%s -j DROP"
,
astring
,
atoken2
)
>
0
)
{
SPGW_APP_INFO
(
"Drop downlink traffic: %s
\n
"
,
system_cmd
);
system
(
system_cmd
);
ret
=
system
(
system_cmd
);
if
(
ret
<
0
)
{
SPGW_APP_ERROR
(
"ERROR in setting %s: %d
\n
"
,
system_cmd
,
ret
);
}
}
else
{
SPGW_APP_ERROR
(
"Drop downlink traffic
\n
"
);
}
...
...
@@ -481,7 +507,10 @@ int spgw_config_init(char* lib_config_file_name_pP, spgw_config_t* config_pP) {
buf_in_addr
,
config_pP
->
sgw_config
.
ipv4
.
sgw_interface_name_for_S1u_S12_S4_up
)
>
0
)
{
SPGW_APP_INFO
(
"Add route: %s
\n
"
,
system_cmd
);
system
(
system_cmd
);
ret
=
system
(
system_cmd
);
if
(
ret
<
0
)
{
SPGW_APP_ERROR
(
"ERROR in setting %s: %d
\n
"
,
system_cmd
,
ret
);
}
}
else
{
SPGW_APP_ERROR
(
"Add route: for %s
\n
"
,
buf_in_addr
);
}
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment