Compare commits

...

1406 Commits

Author SHA1 Message Date
Sukchan Lee
cbc557f51a Release v1.2.2 2020-03-25 23:53:55 +00:00
Sukchan Lee
557d9532b0 Add GTPv2 ECHO REQ/RSP Message (#378)
This is only handling ECHO REQ/RSP message.
The related function is not implemented at this point.
2020-03-25 17:43:02 -04:00
Sukchan Lee
9c150253d9 fix the #384 issue bug
If Initial UE Message with Service Request is received and
   There is no Session Context
     (e.g due to UEContextReleaseRequest or InitialContextSetupFailure)
MME will sends Service Reject NAS message.
2020-03-25 14:02:06 -04:00
Sukchan Lee
1225d1f1d5 Fix the missing for debian package (#388) 2020-03-22 20:53:13 +00:00
Sukchan Lee
db13836426 Rename dbconf.sh to open5gs-dbctl (#388) 2020-03-22 16:44:45 -04:00
Spencer Sevilla
3d6a84ca85 Add dbconf to hss Debian package (#388)
* add dbconf.sh to package installation as open5gs_db

* left out an end quote

Co-authored-by: Spencer Sevilla <sevilla@cs.washington.edu>
2020-03-22 16:21:12 -04:00
Sukchan Lee
0521d9fccf Support Debian(Bluster) with MongoDB-ORG(#377) 2020-03-22 13:48:20 -04:00
rafael2k
df60fbd0a5 Make it installable in Debian Buster with MongoDB-ORG packages. (#377)
Co-authored-by: Rafael Diniz <rafael@rhizomatica.org>
2020-03-22 13:46:30 -04:00
EugeneBogush
5eb1c87e43 fix for systemd reload (#393)
* Update open5gs-hssd.service.in

impleneted 'systemd reload ' open5gs-*

* Update open5gs-mmed.service.in

* Update open5gs-pcrfd.service.in

* Update open5gs-pgwd.service.in

* Update open5gs-sgwd.service.in
2020-03-22 05:34:09 +09:00
miaoski
0796ce3d7e fix trivial typos in comments (#387)
Co-authored-by: miaoski <miaoski@gmail.com>
2020-03-15 07:49:46 -04:00
Nick
44455d55b3 Updated readme for PythonAPI to include UpdateSubscriber 2020-03-15 17:28:50 +11:00
Nick
85dbeb05cc Added editing subscribers with PythonAPI Interface
Using the UpdateSubscriber call. Input variables are the IMSI and the subscriber data, which is the same as the outputted data of GetSubscriber.
2020-03-15 17:28:17 +11:00
Sukchan Lee
1e56141d1e Add socknode_add() [#367] 2020-02-28 20:26:32 +09:00
Sukchan Lee
bf751dcee7 Add a space line below mtu config (#376) 2020-02-25 20:44:50 +09:00
Sukchan Lee
8472aa3743 Add MTU as default in configuration (#376) 2020-02-25 20:34:51 +09:00
Supreeth Herle
3f2ad4ca08 Add feature to provide MTU size to be advertised in PCO options (#376)
This feature can be used for provisioning a limit on the size of the packets
sent by the MS to avoid packet fragmentation in the backbone network between
the MS and the GGSN/PGW and/or across the (S)Gi reference point) when some
of the backbone links does not support packets larger then 1500 octets
(ETSI TS 123 060 V15.5.0 Annex C)

Example of pgw.yaml to use this feature:

logger:
    file: @localstatedir@/log/open5gs/pgw.log

parameter:

pgw:
    freeDiameter: @sysconfdir@/freeDiameter/pgw.conf
    gtpc:
      - addr: 127.0.0.3
      - addr: ::1
    gtpu:
      - addr: 127.0.0.3
      - addr: ::1
    ue_pool:
      - addr: 10.45.0.1/16
      - addr: cafe::1/64
    dns:
      - 8.8.8.8
      - 8.8.4.4
      - 2001:4860:4860::8888
      - 2001:4860:4860::8844
    mtu: 1400
2020-02-25 20:13:52 +09:00
Sukchan Lee
6f97e32dca Link Kubernetes Open5GS Deployment (#375) 2020-02-25 19:27:45 +09:00
Harald Welte
f2df9db68c debian/control: Add build dependency to 'git' (#373)
meson seems to need the 'git' program available at build time:
	lib/diameter/common/meson.build:36:0: ERROR: Git program not found.
2020-02-24 00:52:34 +09:00
Sukchan Lee
787d8ebe01 change test code (#369) 2020-02-17 11:13:36 +09:00
Spencer Sevilla
24e9def813 change 45.45.0.1 -> 10.45.0.1 (#369) 2020-02-17 10:41:16 +09:00
Spencer Sevilla
baad38cab3 PGW service must depend on systemd-networkd 2020-02-16 15:21:23 +09:00
Sukchan Lee
c3627e6852 fix indentation (#367) 2020-02-13 10:58:10 +09:00
Supreeth Herle
4f29b912e8 Add feature to provide SGW GTU (S1) address to be advertised inside S1AP messages. (#367)
This feature is useful in scenarios where SGW is run inside in a container or openstack vm i.e. behind 1-to-1 mapping NAT.
In docker/openstack environment, we often have 1-to-1 mapped NAT IP address in order for eNB to reach SGW.
But, this 1-to-1 mapping NAT IP address is not seen on SGW host and hence non UDP socket bindable.
Since SGW can only bind to IP address visible in it's host (usually a private IP beind a NAT),
it advertises the same to UE in S1AP message resulting in eNB not able to reach SGW on Uplink. This commit solves this issue
by providing a means to advertise a different IP address than the one SGW UDP socket is bound to.

Example of sgw.yaml to use this feature:

logger:
    file: /root/open5gs/install/var/log/open5gs/sgw.log
    level: debug

parameter:
    no_ipv6: true

sgw:
    gtpc:
      addr: 127.0.0.2
    gtpu:
      dev: ens3
      advertise_addr:
        - 172.24.15.30
        - fe80::f816:3eff:fe15:fe34
2020-02-13 10:51:06 +09:00
Sukchan Lee
34384de197 Add missing document 2020-02-07 15:56:35 +09:00
Sukchan Lee
44ff12aa03 Update document 2020-02-07 15:51:36 +09:00
Sukchan Lee
c639569c91 Fix the WebUI installation script for Debian 2020-02-07 14:26:29 +09:00
Sukchan Lee
82e27f3ad9 Release v1.2.1 2020-02-05 20:00:18 +09:00
Sukchan Lee
cd6d51ad65 Fix debian package 2020-02-05 15:31:30 +09:00
Sukchan Lee
7df3d0509b Oops! remove the assert (#358) 2020-01-30 19:14:59 +09:00
Sukchan Lee
9a3d5b50fc Fix the PGW crash (#358) 2020-01-30 19:14:07 +09:00
Sukchan Lee
e9a8944189 Fix the bug in 'Delete existing TFT' (#358) 2020-01-30 01:45:54 +09:00
Sukchan Lee
307cf190c4 Use delete bearer request (#358)
If UE sends bearer resource modification request with 'all TFT are deleted',
PGW initiates 'Delete Bearer Request'.
2020-01-30 01:38:26 +09:00
Sukchan Lee
f27699abf5 Mapping VIDEO to QCI_2 in PCRF (#358) 2020-01-29 00:59:50 +09:00
Sukchan Lee
045f013f39 Upgrade test program for VoLTE (#358) 2020-01-28 18:26:51 +09:00
Sukchan Lee
5d99df4036 Support all TFT code (#358) 2020-01-28 18:26:10 +09:00
Sukchan Lee
7c658091c5 Improve GTP-U Performance for many UEs 2020-01-24 19:41:08 +09:00
Sukchan Lee
81856afff9 Fix the bug for PTI mismatch (#355)
If PDN connectivity/disconnect or Bearer Resource Modification,
MME should set UE's PTI.

And other case, PTI should set to be 0(unassigned).
2020-01-22 21:33:25 +09:00
Sukchan Lee
5ff8376a64 add configuration for EPC separated from eNodeB 2020-01-19 23:38:06 +09:00
Sukchan Lee
f49e5e2360 Fix the resolution for Safari(iPhone) 2020-01-19 23:31:40 +09:00
Supreeth Herle
4beba8e104 More VoLTE calling changes (#354)
* Updated the docs for setting up a working VoLTE testbed

* Fixed docs formatting

* More formatting fixes of doc

* Handling NAS Bearer Resource Modification Request to prevent crashing of mme

* Corrected tutorial with right APN settings required in Mongo DB for VoLTE UE

* Added more steps to enable calling using only USIM

* More changes to VoLTE document based on working setup

* Updated guide with link to a safe and better way to force enable VoLTE on phones
2020-01-19 21:31:05 +09:00
Sukchan Lee
047ad240e7 Add the VoLTE pcap to the related document (#351) 2020-01-15 21:30:15 +09:00
Spencer Sevilla
2abdef74cb send PDN error cause if needed (#352)
* initial commit: respond with ESM Cause PDN-Type if we only allow IPv4 or IPv6 (not both)

* works as intended, removing debug statement.

* Fix the indentation and add the reference

Co-authored-by: Sukchan Lee <acetcom@gmail.com>
2020-01-15 21:17:20 +09:00
Sukchan Lee
96af2d0337 Update release notes 2020-01-13 21:41:45 +09:00
Sukchan Lee
8536fe3979 Document update for Release v1.2.0 2020-01-12 23:40:05 +09:00
Sukchan Lee
ce07bc16d4 Update debian package in Release v1.2.0 2020-01-12 23:10:37 +09:00
Sukchan Lee
d39582ff6e Release v1.2.0 2020-01-12 22:44:53 +09:00
Sukchan Lee
e418eda22f change APN setting in VoLTE document. 2020-01-12 16:50:58 +09:00
Sukchan Lee
65b262a7f9 change deafult value in WebUI 2020-01-12 11:53:55 +09:00
Sukchan Lee
c4cc7f60ba Fix the Type Layout in WebUI 2020-01-12 10:56:51 +09:00
Sukchan Lee
6ee8ae0774 Merge branch 'master' of https://github.com/open5gs/open5gs 2020-01-12 10:36:11 +09:00
Sukchan Lee
04233e505b Merge branch 'pdn_type_webui' 2020-01-12 10:36:06 +09:00
Sukchan Lee
0e1fcb43a7 move TYPE location 2020-01-12 10:28:45 +09:00
Spencer Sevilla
1bf78f7655 Adding an option for PDN Type (IPv4, IPv6, IPv4v6) to webui (#346) 2020-01-12 10:27:49 +09:00
Supreeth Herle
75c431855b Handling AAR Request for IMS signalling 2020-01-12 09:41:01 +09:00
Spencer Sevilla
322d4d9157 Adding an option for PDN Type (IPv4, IPv6, IPv4v6) to webui 2020-01-10 16:12:49 -08:00
Sukchan Lee
c403e250fa Rollback /blog -> /open5gs 2020-01-08 15:32:43 +09:00
Sukchan Lee
a4670ca6e1 Try to change URL (/open5gs -> /blog) 2020-01-08 15:11:39 +09:00
Sukchan Lee
f3dd605c67 Not to delete transaction for GTP retry [#342] 2020-01-07 20:01:36 +09:00
Sukchan Lee
3975f6e775 fix the PGW crash for UE initiated detach [#342] 2020-01-06 21:32:01 +09:00
Sukchan Lee
0891ee5b19 For safety, check TEID presence in GTP 2020-01-01 20:17:46 +09:00
Sukchan Lee
d1f3439f93 Document update for openSUSE package install 2020-01-01 16:39:31 +09:00
Sukchan Lee
e35bc4cc0d Fix the bug the GTP xact during Request Duplicated 2020-01-01 13:02:22 +09:00
Sukchan Lee
8cf9da560b TFT mandatory in activate dedicated bearer (#336) 2019-12-29 12:56:25 +09:00
Sukchan Lee
f577f8dc9f Whether to include TFT in Update Bearer Request
(#336)
If Rx media component flow is not changed,
Exclude TFT info in the GTP Update Bearer Request
2019-12-29 12:36:59 +09:00
Sukchan Lee
4fcbb65eca Add missing code line (#336) 2019-12-28 22:25:30 +09:00
Sukchan Lee
d191a5135e Add Bearer Resource Modification feature (#336) 2019-12-28 21:46:30 +09:00
Supreeth Herle
e6432868de Added the final piece required for calling using only USIM (#340)
* Added more steps to enable calling using only USIM
2019-12-28 00:52:32 +09:00
Sukchan Lee
5664b90e38 fix the indentation and assert [#338] 2019-12-27 23:22:16 +09:00
Supreeth Herle
768e4d9eb3 Fixed conversion from Rx 'permit in' flow rule to Gx 'permit out' flow rule 2019-12-27 23:08:00 +09:00
Sukchan Lee
6a470c8881 Update docs for removing flow rule (#335) 2019-12-19 22:30:30 +09:00
Sukchan Lee
8e26a9adf3 fix identation for 80 columns 2019-12-19 22:24:26 +09:00
Supreeth Herle
b8928ee849 Handling NAS Bearer Modification Request and VoLTE tutorial update (#336)
* Updated the docs for setting up a working VoLTE testbed

* Fixed docs formatting

* More formatting fixes of doc

* Handling NAS Bearer Resource Modification Request to prevent crashing of mme

* Corrected tutorial with right APN settings required in Mongo DB for VoLTE UE
2019-12-19 22:14:13 +09:00
Sukchan Lee
3bc9b6e9aa update it 2019-12-18 22:00:41 +09:00
Sukchan Lee
ef6e16acf0 update it 2019-12-18 21:54:06 +09:00
Sukchan Lee
3b6b024866 update docs 2019-12-18 21:48:38 +09:00
Sukchan Lee
428fbffa36 Update VoLTE document (#333) (#334) 2019-12-18 21:25:46 +09:00
Sukchan Lee
0f0d87d742 move VoLTE setup docs fro guide to tutorial 2019-12-17 22:24:25 +09:00
Sukchan Lee
a62e07318e Oops! mistypo (#333) 2019-12-17 22:00:23 +09:00
Sukchan Lee
d7657a8f0b beauty VoLTE Setup Docs (#333) 2019-12-17 21:58:27 +09:00
Sukchan Lee
04f1730982 beautify VoLTE Docs (#333) 2019-12-17 21:25:15 +09:00
Sukchan Lee
83cf871ff7 beautify VoLTE docs (#333) 2019-12-17 21:12:57 +09:00
Supreeth Herle
50f5a527a8 Added Control Rx media type and mapped it to QCI 5 2019-12-17 21:06:44 +09:00
Sukchan Lee
219899b8d0 Add VoLTE Setup Guide [#333] 2019-12-17 21:00:56 +09:00
Supreeth Herle
2ac9d931cf Working VoLTE setup guide (#333)
* Updated the docs for setting up a working VoLTE testbed

* Fixed docs formatting

* More formatting fixes of doc
2019-12-17 20:54:35 +09:00
Nick
10235922f4 Update 04-setting-up-kamailio-IMS.md
Updated docs to show expected output for "java -version"
2019-12-16 13:02:08 +11:00
Sukchan Lee
a86e296afc Use uint32_t type instead of S1AP type (#326) 2019-12-13 13:49:20 +09:00
Spencer Sevilla
66f839592f assign enb_ue_s1ap_id as a part of enb_ue_add function (#326) 2019-12-13 13:46:22 +09:00
Spencer Sevilla
324f3d158f add PCO options as TODOs. Closes #7 (#324) 2019-12-13 13:45:29 +09:00
Sukchan Lee
f06a8b92fe change ogs_expect() to ogs_assert() (#323) 2019-12-13 13:44:22 +09:00
Spencer Sevilla
b86658e173 small stability fixes that were causing crashes in Bokondini (#323) 2019-12-13 13:25:52 +09:00
Sukchan Lee
b7360d37d4 update it 2019-12-08 20:44:56 +09:00
Sukchan Lee
79bada897b Minor bug fixed 2019-12-08 16:31:15 +09:00
Sukchan Lee
f7a4d0ed78 Add more delay in test-program 2019-12-08 04:09:35 +00:00
Sukchan Lee
cef1b46130 Add more delay in test-program 2019-12-08 04:04:20 +00:00
Sukchan Lee
b5307cdb7a Merge branch 'master' of https://github.com/open5gs/open5gs 2019-12-08 03:26:16 +00:00
Sukchan Lee
dfa5c4f0ee Fix the test program 2019-12-08 03:25:37 +00:00
Sukchan Lee
8749c2d666 For usrsctp, MacOSX needs options c_std=c99 2019-12-08 11:46:11 +09:00
Sukchan Lee
896ca50253 PFCP interface added, but not tested. 2019-12-07 13:17:00 +09:00
Sukchan Lee
cd6a295039 Release Notes v1.1.0 2019-12-06 20:55:54 +09:00
Sukchan Lee
e051941a45 Release v1.1.0 2019-12-06 20:14:20 +09:00
Sukchan Lee
79c4afe277 Update WebUI Version 2019-12-06 19:49:09 +09:00
Sukchan Lee
d0822c2e6b Add SGsAP-SERVICE-REQUEST in SMS & UE-active 2019-12-04 15:36:38 +09:00
Sukchan Lee
5e59349d17 Fix the memory leak (#316) 2019-12-04 15:22:25 +09:00
Nick
36dc786e01 Update about.md
Fixed spelling error on "compliant"
2019-12-03 12:24:36 +11:00
Sukchan Lee
4e2d7bf708 Add an initial code for PFCP 2019-12-01 21:40:52 +09:00
Sukchan Lee
ce6d2c5889 Before CUPS, move GTP-TLV to core library
TLV library will be shared in GTP and PFCP
2019-12-01 20:46:53 +09:00
Sukchan Lee
ed701ce90e [#314] further refined 2019-12-01 20:14:47 +09:00
Sukchan Lee
636170e0da Review ogs_expect() (#314) 2019-11-30 16:45:09 +09:00
Sukchan Lee
2cd9f496e2 This bug has already been fixed 2019-11-30 14:32:49 +09:00
Spencer Sevilla
5b59f09d9f ogs_assert to ogs_expects (#314)
* HACK: Don't retransmit InitialContextSetupReq

Related: #256

* HACK: Don't use buggy sa1p_copy()  in eNBConfigTransfer

Related: #257

* mme: don't reject with 'IMSI is unknown in HLR' (permanent reject)

* MME: Implement S6a result -> EMM cause code mapping

Closes: #263

* Spencer: modification to Haralds fix because macros are now renamed

* MME: don't assert on MAC failures of uplink NAS frames

Closes: #267

* MME: Avoid ogs_assert() in many situations

We don't want to crash the entire program just because a message
received from an external entity didn't match some of our expectations.

* compiles fine, checked DIFFs and only difference is the ogs_assert -> ogs_expect
2019-11-29 15:31:22 +09:00
Sukchan Lee
552045aa28 [#312] remove CS service notification in MT-SMS 2019-11-29 11:39:32 +09:00
Sukchan Lee
46e04210da Update docuement 2019-11-27 20:58:47 +09:00
Sukchan Lee
31f1fc030f [#313] remove ./build & ./install
The ./build and ./install directories are what users configure.
2019-11-27 20:48:24 +09:00
Sukchan Lee
b31836d8fc Merge pull request #313 from uw-ictd/mac_setup_easy
Prepares an easy install script for mac builds and initializes gitignore
2019-11-27 20:46:24 +09:00
Nick
7afc017cf9 Rename 05-troubleshooting to 05-troubleshooting.md
Gave .md filename
2019-11-26 12:52:37 +11:00
Nick
eb905e4514 Create 05-troubleshooting
Created basic troubleshooting steps documentation with some examples.
2019-11-26 12:52:10 +11:00
Sudheesh Singanamalla
9341d756cc Prepares an easy install script for mac builds and initializes gitignore
Signed-off-by: Sudheesh Singanamalla <sudheesh@cs.washington.edu>
2019-11-25 11:27:19 -08:00
Sukchan Lee
a808423631 Merge pull request #309 from uw-ictd/additional_troubleshooting
Adds Additional troubleshooting documentation for issues experienced
2019-11-21 17:20:29 +09:00
Sudheesh Singanamalla
fd05d25715 Adds Additional troubleshooting documentation for issues experienced
Signed-off-by: Sudheesh Singanamalla <sudheesh@cs.washington.edu>
2019-11-20 10:52:33 -08:00
Sukchan Lee
ee213e160a Prepare to release v1.1.0 2019-11-18 22:38:42 +09:00
Sukchan Lee
7b7acea59b Add IMEISV(MEI) in Create Session Request 2019-11-18 20:21:20 +09:00
Sukchan Lee
552305afe2 Add IMEISV Request 2019-11-18 19:34:28 +09:00
Sukchan Lee
f3ccd71db0 [#263] map S6a diameter codes to EMM codes 2019-11-18 10:20:48 +09:00
Sukchan Lee
a622feac84 [#256] Remove timer of NAS message related to S1AP 2019-11-18 09:04:10 +09:00
Sukchan Lee
835b3c9851 [#306] Refine static IP addresses 2019-11-17 17:43:36 +09:00
Sukchan Lee
c8bcfffe2e [#258] All GTP message is fixed not to crash 2019-11-15 23:56:55 +09:00
Aleksander Morgado
ad7fc34fa2 Build system updates (#307)
* build: skip default prefix as '/usr'

Distributions that ship this package will always provide the correct
system prefix, sysconfdir, libdir and such.

As a sane default, the package should use the meson default prefix set
to '/usr/local', which is also the standard in many other build
setups (e.g. autotools...).

* build: print actual full paths in meson output

Do not print the option values, print the full built paths.
2019-11-14 23:34:18 +09:00
Spencer Sevilla
b994a8efbf Adding support for static IP assignment in HSS (#306) 2019-11-14 14:30:19 +09:00
Sukchan Lee
cdbbbc500b [#258] Test done for receiving unknown TEID 2019-11-11 23:09:35 +09:00
Sukchan Lee
71f54a4500 [#305] name changes 2019-11-10 16:04:39 +09:00
Spencer Sevilla
8639c0f43c basic cli db tool (#305)
I ensured that this script is cross-compatible with the webui so users added this way can be modified by the web UI and vice-versa. This should speed up development/setup and support users who don't want to run Node or don't have a GUI.
2019-11-10 15:56:04 +09:00
Sukchan Lee
b65d76d0b2 [#258] Support for receiving unknown TEID 2019-11-07 23:07:29 +09:00
Sukchan Lee
439ba9c82c [#203] misc 2019-11-06 10:44:44 +09:00
Sukchan Lee
f2e34dd7ff [#203] Now UE context is always single 2019-11-06 10:43:21 +09:00
Sukchan Lee
3743ef98a2 [#203] Fix the bug for maintaining single mme_ue context 2019-11-06 10:22:34 +09:00
Sukchan Lee
4b8e2a5c97 [#203] MME also maintains one session context like SGW/PGW 2019-11-05 23:15:57 +09:00
Sukchan Lee
6f44ff5f4d [#203] Rollback based on the spec
If the new Create Session Request received by the SGW/PGW collides with
an existing active PDN connection context, the PGW/SGW should delete it.
2019-11-05 22:32:32 +09:00
Sukchan Lee
c131295dfb Fix the errata 2019-11-05 15:40:26 +09:00
Spencer Sevilla
ee80d1f996 Log and print UEs/eNBs/sessions stats (#303) 2019-11-05 15:23:33 +09:00
Sukchan Lee
da242e6734 [#301] Add Bearer Context IE's Cause in Modify-Bearer-Response 2019-11-04 23:41:59 +09:00
Sukchan Lee
4fcde77017 [#301] Oops! Fix the comment 2019-11-04 17:17:05 +09:00
Sukchan Lee
13ee6960aa [#301] Include Bearer Context IE in Modify-Bearer-Request 2019-11-04 17:13:09 +09:00
Sukchan Lee
14427de551 For meson, python3-wheel needs to be installed 2019-11-04 16:55:19 +09:00
Sukchan Lee
aa7d7f3b7d [#300] Insert PGW-C/U F-TEID on S11 Create Session Response 2019-11-02 16:27:57 +09:00
Sukchan Lee
d4f982427c Update Open5GS/OGSLib version to 1.1.0 2019-11-02 15:55:51 +09:00
Sukchan Lee
e55c7f9174 Upgrade freeDiameter version to 1.3.2 2019-11-02 15:52:48 +09:00
Sukchan Lee
f2831ff1fd freediameter name changes 2019-11-01 13:17:49 +09:00
Sukchan Lee
29e8a68dea remove SO_LINGER in usrsctp library 2019-10-31 18:13:49 +09:00
Sukchan Lee
46f9e1369b Merge branch 'master' of https://github.com/open5gs/open5gs 2019-10-31 14:19:21 +09:00
Sukchan Lee
9f1a5d19a4 Build with usrsctp source using MESON Subproject 2019-10-31 14:17:43 +09:00
Sukchan Lee
32c80cb031 [#299] Fix the WebUI installation script 2019-10-31 08:59:51 +09:00
Sukchan Lee
b47e0e510e change SCTP test port 2019-10-30 13:09:22 +09:00
Sukchan Lee
28f6d16ce2 refine usrsctp 2019-10-30 09:48:38 +09:00
Sukchan Lee
06f8e42173 Fix the document errata 2019-10-29 09:22:48 +00:00
Sukchan Lee
1e30669d6c Fix the document errata 2019-10-29 09:20:24 +00:00
Sukchan Lee
04f5c31287 The Child AVPs of Terminal-Information is Optional
(#297)
2019-10-29 15:36:38 +09:00
Sukchan Lee
dcef973a09 fix the meson warning 2019-10-28 08:19:41 +00:00
Sukchan Lee
290cdfac42 Fix the document errata 2019-10-27 19:57:18 +09:00
Sukchan Lee
87b6b66cfd fix the document errata 2019-10-27 19:14:12 +09:00
Sukchan Lee
79759f4599 Oops! mailing list name is not changed 2019-10-27 19:04:47 +09:00
Sukchan Lee
e4476863f6 name changes from nextepc to open5gs 2019-10-27 17:58:16 +09:00
Sukchan Lee
1a22e00f6a Fix the URL 2019-10-27 17:46:36 +09:00
Sukchan Lee
142763c280 Rename Project to Open5GS
- Change BuildTool to Meson
 - Many BUGS Fixed
2019-10-27 17:41:14 +09:00
Sukchan Lee
cb447af93a Fix MongoDB installation guide for MacOSX 2019-10-03 00:50:53 -07:00
Sukchan Lee
2eac6d860a Merge branch 'laforge/fd-debug' of https://github.com/laf0rge/nextepc 2019-09-19 22:26:22 +09:00
Sukchan Lee
312af947c8 Fix an indentation 2019-09-15 22:18:53 +09:00
Sukchan Lee
a3dd018564 Merge pull request #281 from herlesupreeth/master
Updated guide with missing configuration
2019-09-15 22:12:41 +09:00
Supreeth Herle
fa4d7697f9 Merge branch 'master' of https://github.com/open5gs/nextepc 2019-09-15 15:07:09 +02:00
Sukchan Lee
0f7f0415ae Add meson build in docker environment 2019-09-15 22:05:31 +09:00
Supreeth Herle
2d025bb0f2 Added missing configuration to guide 2019-09-15 15:04:34 +02:00
Sukchan Lee
9d031a08fc Add meson tool in docker 2019-09-15 21:26:27 +09:00
Sukchan Lee
766c9ee36f link ogslib 2019-09-14 12:05:04 +09:00
Sulchan Lee
d15365a398 fix the debian package error 2019-09-13 13:55:19 +00:00
Sulchan Lee
0acece1570 update it 2019-09-13 13:30:50 +00:00
Sukchan Lee
f683e29eca fix the debian package error 2019-09-13 22:08:15 +09:00
Sukchan Lee
8c9c2db2a9 update it 2019-09-13 12:14:30 +00:00
Sukchan Lee
3c8af69805 Re-factoring the all library 2019-09-13 21:07:47 +09:00
Sukchan Lee
bd0ac4bd80 The following is not working
- sudo ip tuntap add name pgwtun mode tun user $USER grup $USER
2019-08-28 11:44:31 +09:00
Sukchan Lee
b3f8bbb964 [#264] rollback ogs_expect_or_return() 2019-08-28 00:14:19 +09:00
Sukchan Lee
1f7647a04b [#266] Add LOG for debugging 2019-08-27 22:54:45 +09:00
Sukchan Lee
9c5f1334cb Use ogs_expect() 2019-08-27 22:51:30 +09:00
Sukchan Lee
848140bc90 [#264] change ogs_expect() 2019-08-27 22:47:06 +09:00
Sukchan Lee
6088be18c0 For linking OGSLib 2019-08-26 23:27:00 +09:00
Sukchan Lee
204dd651a0 Merge pull request #273 from velichkov/master
Fix buffer length calculation in s1ap_copy_ie
2019-08-26 23:19:26 +09:00
Vasil Velichkov
c1a0f897b1 Fix buffer length calculation in s1ap_copy_ie
The aper_encode function returns the number of encoded bits and when
converting to bytes we should round up or use the ((.encoded + 7) / 8)
formula as described in per_encoder.h

Fixes: #257
2019-08-26 17:16:24 +03:00
Sukchan Lee
282231a77f increase waiting time 2019-08-25 12:18:19 +00:00
Sukchan Lee
91b48cde7a Document Update 2019-08-25 20:50:01 +09:00
Sukchan Lee
0aae608c5c Use the process interface instead of fork()
- CommandLine Options is also changed
 - PID File removed (Old-style daemon)
2019-08-25 20:15:20 +09:00
Sukchan Lee
33c5562835 Update Document 2019-08-25 20:13:28 +09:00
Sukchan Lee
3bd5ce8505 [#257] Add test code for s1ap_copy_ie 2019-08-24 23:49:29 +09:00
Sukchan Lee
dff916551f [#256] Increse T3450 timeout to 6 sec 2019-08-18 00:35:04 +09:00
Sukchan Lee
83bec0ef40 Merge pull request #253 from laf0rge/laforge/rau-tau
mme: Fix ULA without Subscribed-RAU-TAU-Timer
2019-08-16 07:07:17 +09:00
Harald Welte
d575c32358 fd: Log source file name and line in all log messages 2019-08-15 18:49:06 +02:00
Harald Welte
25b5cec6ed mme: Fix ULA without Subscribed-RAU-TAU-Timer
The check for whether the AVP exists in the ULA was wrong, resulting in
the MME refusing to proceed without this AVP.  However, it is not a
mandatory AVP.
2019-08-15 18:49:06 +02:00
Sukchan Lee
c4956c88b8 Update document 2019-08-11 23:47:17 +09:00
Sukchan Lee
4f326f4460 Update Document for v0.5.2 2019-08-11 23:01:39 +09:00
Sukchan Lee
929826218e Relink ogslib 2019-08-11 22:51:00 +09:00
Sukchan Lee
2c52eaeb1f Release v0.5.2 for Ubuntu(Disco) 2019-08-11 13:21:36 +00:00
Sukchan Lee
db3f0db089 Release v0.5.2 for Ubuntu(Xenial) 2019-08-11 12:56:04 +00:00
Sukchan Lee
e686ecbc2b Release v0.5.2 for Ubuntu(Bionic) 2019-08-11 11:51:17 +00:00
Sukchan Lee
8c7371db7f Release v0.5.2 2019-08-11 11:19:05 +00:00
Sukchan Lee
a6f9ad52cb [#245] Add Configurable Memory Pool Size 2019-08-09 23:28:58 +09:00
Sukchan Lee
e2f94753b7 Merge pull request #244 from herlesupreeth/master
Edit IMS setup guide to install from deb packages
2019-08-07 00:09:01 +09:00
Supreeth Herle
9d8203eb68 Edit IMS setup guide to install from deb packages 2019-08-06 15:10:42 +02:00
Sukchan Lee
9079ab216d [#237] Add the IMS Guide 2019-08-05 23:04:02 +09:00
Sukchan Lee
4eb26c4012 Merge branch 'master' of https://github.com/open5gs/nextepc 2019-08-04 14:12:40 +09:00
Sukchan Lee
4b7721ba48 Relink ogslib 2019-08-04 14:12:25 +09:00
Sukchan Lee
197a16bca8 [#243] freeDiameter build fail for bison+flex 2019-08-03 23:14:17 +09:00
Sukchan Lee
fe5f2320b3 Fix the invalid IMSI format in volte test code 2019-08-03 22:12:24 +09:00
Sukchan Lee
715d2b7922 fix indentation 2019-08-03 22:08:20 +09:00
Sukchan Lee
56ff495e7b [#236] Fix the number of PCO 2019-08-02 20:41:33 +09:00
Sukchan Lee
d8d2f9836d Fix the SGsAP IPv6 configuration manual 2019-07-30 23:00:15 +09:00
Sukchan Lee
58af53a6cd Merge branch 'master' of https://github.com/open5gs/nextepc 2019-07-30 22:58:39 +09:00
Sukchan Lee
2db2558624 Document Update for v0.5.1 2019-07-30 22:58:17 +09:00
Sukchan Lee
967f40f216 Release v0.5.1 for Ubuntu(xenial) 2019-07-30 22:42:39 +09:00
Sukchan Lee
58105c9b1e Release v0.5.1 for Ubuntu(bionic) 2019-07-30 22:41:29 +09:00
Sukchan Lee
fdb7fbe368 Release v0.5.1 2019-07-30 21:35:04 +09:00
Sukchan Lee
d08a37f9bb WebUI version changes to v0.5.1 2019-07-30 21:05:23 +09:00
Sukchan Lee
8813e0a175 [#236] MME does mandate Subscribed-RAU-TAU-Timer 2019-07-30 20:58:45 +09:00
Sukchan Lee
dac2bd2e4f [#240] WebUI changes to apply default value 2019-07-30 20:51:50 +09:00
Sukchan Lee
4f9a2e94fc Merge pull request #240 from laf0rge/master
diameter spec compliance related fixes
2019-07-30 20:45:24 +09:00
Harald Welte
a7e2865ef0 hss: Subscribed-Periodic-RAU-TAU-Timer is in Subscriptio-Data
At least in version 11.8.0 Release 11 of 3GPP TS 29.272,
Subscribed-Periodic-RAU-TAU-Timer is only permitted inside
Subscription-Data.  Before this patch, the HSS encodes it outside, i.e.
on the "main" level of the DIAMETER AVP tree.

Related: #238
2019-07-30 00:34:55 +02:00
Harald Welte
7915773900 mme: Subscribed-Periodic-RAU-TAU-Timer is in Subscriptio-Data
At least in version 11.8.0 Release 11 of 3GPP TS 29.272,
Subscribed-Periodic-RAU-TAU-Timer is only permitted inside
Subscription-Data.  Before this patch, the MME expects it outside, i.e.
on the "main" level of the DIAMETER AVP tree.

Closes: #238
2019-07-30 00:31:33 +02:00
Harald Welte
8dca1eacd8 mme: Apply default values for Pre-Emption Capability + Vulnerability
Section 7.3.40 of 3GPP TS 29.272 states default values to be used if
those AVPs are not present in the DIAMETER message.

Closes: #239
2019-07-30 00:23:55 +02:00
Sukchan Lee
a3c5dcd190 [#231] Fix the NextEPC die in MT-Fallback 2019-07-28 15:09:23 +00:00
Sukchan Lee
50e2872ff4 [#234] Set SCTP PPID to 46
At this point, SCTP encryption is not supported.
So, PPID 46 is hard-corded.
2019-07-28 22:43:54 +09:00
Sukchan Lee
2109d7f9de [#235] Oops! Diameter SCTP is now enabled in Test 2019-07-28 22:32:44 +09:00
Sukchan Lee
470e66d37d [#235] TCP enabled for MacOSX 2019-07-28 20:18:51 +09:00
Sukchan Lee
f4647ca346 Merge pull request #235 from laf0rge/master
freeDiameter: Use SCTP-only by default, not TCP-only
2019-07-28 20:14:05 +09:00
Sukchan Lee
f5c5701b17 [#180] Fix EBI in the modify bearer request 2019-07-28 19:44:15 +09:00
Harald Welte
a8c14916a7 freeDiameter: Use SCTP-only by default, not TCP-only
The existing freeDiameter default config files for HSS, MME, PCRF and PGW
disabled SCTP and enabled TCP.  This is not in compliance with
3GPP TS 29.272 secition 7.1.5 which clearly states:
	"Diameter messages over the S6a, S6d, S13 and S13' interfaces shall
	 make use of SCTP IETF RFC 4960 [14]"
2019-07-28 12:41:52 +02:00
Sukchan Lee
709cce5c48 [#231] Add crash-test code 2019-07-25 22:20:18 +09:00
Sukchan Lee
dba1fcac5c Use asn1c library interface(CALLOC) for s1ap memory 2019-07-24 21:03:36 +09:00
Sukchan Lee
d791f0034d [SGsAP] add MM-INFORMATION-REQUEST(Discard by Option2) 2019-07-21 22:52:28 +09:00
Sukchan Lee
f19009c736 [#231] Hotfix for asn1c library
Workaround for asn1c library
- More than 9 ProtocolIE cannot be built from InitialContextSetupRequest
2019-07-21 22:39:23 +09:00
Sukchan Lee
82c4c0e1ec [#231] Wow! Succeed to replay crash in SIM 2019-07-21 21:57:36 +09:00
Sukchan Lee
adb48fbad6 For moving a work place 2019-07-21 21:04:10 +09:00
Sukchan Lee
78eeb1ad45 [#231] TAI-LAI configuration changed 2019-07-21 20:25:29 +09:00
Sukchan Lee
a40d1dd2af [#231] sgsap configuration is changed
sgsap:
      addr: 127.0.0.2
      map:
        tai:
          plmn_id:
            mcc: 001
            mnc: 01
          tac: 4131
        lai:
          plmn_id:
            mcc: 001
            mnc: 01
          lac: 43691
2019-07-21 20:06:08 +09:00
Sukchan Lee
46693cd351 [#231] update testsuite 2019-07-21 15:26:42 +09:00
Sukchan Lee
235121c82d [#231] Create simulator 2019-07-21 15:14:31 +09:00
Sukchan Lee
5e78b78166 [CSFB] Implement SGsAP UE-UNREACHABLE message 2019-07-21 13:08:21 +09:00
Sukchan Lee
9f4204ef8e [#227] Fix the crash when both EBT/PTI are 0 2019-07-21 12:20:26 +09:00
Sukchan Lee
60c0eff085 [#226] Protect Integrity in Security-mode Complete 2019-07-21 11:42:12 +09:00
Sukchan Lee
d9238e3036 [#220] fix RACE-CONDITION for MESSAGE and TIMER 2019-07-21 07:01:45 +09:00
Sukchan Lee
649b6ec5e9 Add comment 2019-07-21 01:09:03 +09:00
Sukchan Lee
ae3e59053d [#220] Timer for UE Context Release 2019-07-21 01:03:19 +09:00
Sukchan Lee
5ce04bcc6f [#220] T3489 done 2019-07-20 23:06:54 +09:00
Sukchan Lee
6a1f628e44 [#220] T3450 done 2019-07-20 22:30:53 +09:00
Sukchan Lee
b34dafcb09 [#220] T3470 done 2019-07-20 21:49:47 +09:00
Sukchan Lee
90290d236e [#220] T3460 done 2019-07-20 21:28:36 +09:00
Sukchan Lee
805869da4f [#220] Guard timer instance is created 2019-07-20 20:38:03 +09:00
Sukchan Lee
42f593d360 [TIMER] continue to refine code 2019-07-20 16:39:01 +09:00
Sukchan Lee
6dc66bce85 [TIMER] timer configuration is added 2019-07-20 16:25:09 +09:00
Sukchan Lee
f1c913129d [TIMER] Move SGSAP timer to the FSM 2019-07-20 15:34:41 +09:00
Sukchan Lee
8cf28d6e16 fix indentation 2019-07-20 15:20:52 +09:00
Sukchan Lee
c1c0b640f3 [TIMER] Move S1-Delayed-Send to the FSM 2019-07-20 15:16:46 +09:00
Sukchan Lee
9565967517 [TIMER] Move timer expiration work to the FSM 2019-07-20 13:07:40 +09:00
Sukchan Lee
a96398357f Update New OGSLib commit 2019-07-20 11:20:09 +09:00
Sukchan Lee
d6d824acb9 Merge pull request #230 from laf0rge/master
mme-kdf: Ensure input arguments (kasme, ..) are read-only and 'const'
2019-07-19 20:59:33 +09:00
Harald Welte
83e449ca63 mme-kdf: Ensure input arguments (kasme, ..) are read-only and 'const' 2019-07-18 11:20:14 +02:00
Sukchan Lee
a6e3affbec rename utils to mongodb 2019-07-16 09:14:53 +09:00
Nick
964e7ecebd Add files via upload
Basic Python Library / Class for adding / removing / reading data from NextEPC HSS (MongoDB)
2019-07-15 18:29:22 +10:00
Nick
cfd8df28c6 Create README.md
Added basic usage
2019-07-15 18:28:45 +10:00
Sukchan Lee
b642ca1491 Oops! Fix one more 2019-07-14 13:59:33 +09:00
Sukchan Lee
b9f7e9c409 fix new configuration (#225) 2019-07-14 13:48:14 +09:00
Sukchan Lee
3a5930650e Merge pull request #224 from medeiros405/master
Change in the config to allow different MCC/MNC in the LAI for CSFB
2019-07-14 13:26:22 +09:00
Romeu Medeiros
18ef1f65c3 Change in the config to allow different MCC/MNC in the LAI for CSFB 2019-07-14 01:18:29 -03:00
Sukchan Lee
99d91da6eb Clarify code for pull request (#223) 2019-07-14 11:00:11 +09:00
Sukchan Lee
79a952d910 Merge pull request #223 from medeiros405/master
Modification to correct UEContextModification for CSFB
2019-07-14 08:42:43 +09:00
Romeu Medeiros
a6fe0cb44f Changes to obey the 3GPP specification for CSFallback 2019-07-13 20:26:39 -03:00
medeiros405
3c4601a5e0 Merge branch 'master' of https://github.com/open5gs/nextepc
Update to original repository
2019-07-13 20:11:05 -03:00
Romeu Medeiros
7d79602eb1 Merge branch 'master' of https://github.com/medeiros405/nextepc 2019-07-13 20:08:25 -03:00
Sukchan Lee
942b9466ef Attach Reject if UE indicates only EIA0 (#222) 2019-07-13 23:47:24 +09:00
Sukchan Lee
f043ccd884 Update Document 2019-07-13 22:58:36 +09:00
Sukchan Lee
7d42465f4e [Done] SMS over SGs 2019-07-13 22:52:50 +09:00
Sukchan Lee
8e37f64c33 [SMS] MO-SMS Done 2019-07-13 14:51:35 +09:00
Sukchan Lee
663861d17b [SMS] Add MO-SMS 2019-07-13 11:51:28 +09:00
Sukchan Lee
bedd68573e [CSFB] Add Paging Reject 2019-07-12 23:18:17 +09:00
Sukchan Lee
9408bb6b4a Add Paging Reject 2019-07-12 18:33:42 +09:00
Sukchan Lee
f20a1a6e2b Add ErrorIndication for S1AP decode error (#218) 2019-07-12 16:22:40 +09:00
Sukchan Lee
74c1e1d481 Hotfix for ubuntu release 2019-07-11 15:34:19 +00:00
Sukchan Lee
fa07895b1e Change debian package 2019-07-11 15:30:40 +00:00
Sukchan Lee
610caf3af3 Ubuntu release patch 2019-07-11 15:26:36 +00:00
Sukchan Lee
3e51450b3c Date change 2019-07-12 00:17:29 +09:00
Sukchan Lee
80199a3c87 Update Document 2019-07-12 00:13:07 +09:00
Sukchan Lee
447fd902d2 Release v0.5.0 in Ubuntu(bionic) 2019-07-11 15:10:53 +00:00
Sukchan Lee
bfcaf15d5d Release v0.5.0 in Ubuntu(xenial) 2019-07-11 15:09:24 +00:00
Sukchan Lee
10d9159dc5 rename pkgconfig 2019-07-11 22:45:43 +09:00
Sukchan Lee
e03c1436fb Release v0.5.0 2019-07-11 22:26:56 +09:00
Sukchan Lee
aa4ea44c2c [OGSLIB] Use NEW Version v1.1.0 2019-07-11 22:25:20 +09:00
Sukchan Lee
e023be67e7 [OGSLIB] Use NEW version v1.1.0 2019-07-11 22:24:20 +09:00
Sukchan Lee
0a96d446b8 [Indentation] All source code changed 2019-07-11 22:22:22 +09:00
Sukchan Lee
97afc2db60 fix identation in HSS 2019-07-11 22:16:32 +09:00
Sukchan Lee
27d5208ea3 fix indentation in PGW 2019-07-11 22:09:30 +09:00
Sukchan Lee
7e08f7fc45 fix indentation in SGW 2019-07-11 22:01:52 +09:00
Sukchan Lee
19a01bdda4 Add CSFB TestSuite 2019-07-11 21:56:34 +09:00
Sukchan Lee
cb369daaea fix indentation in MME 2019-07-11 21:53:54 +09:00
Sukchan Lee
cd814afcff [CSFB] MT-Active-Test done 2019-07-11 21:39:44 +09:00
Sukchan Lee
de59488e2e [CSFB] MT-Active-Mode (Not Done) 2019-07-11 18:14:32 +09:00
Sukchan Lee
d9b7e966e1 [CSFB] Add MO in Active-mode 2019-07-10 22:04:52 +09:00
Sukchan Lee
9dbca85c1f [CSFB] Idle-mode done 2019-07-09 09:27:45 +09:00
Sukchan Lee
87cdd71582 Add Cause in Bearer IE (#215) 2019-07-08 23:08:15 +09:00
Sukchan Lee
0e1bd64646 fix indentation 2019-07-08 22:58:41 +09:00
Sukchan Lee
346e67b7de more sleep is needed in the test code 2019-07-08 22:42:10 +09:00
Sukchan Lee
ecfac8fe3b Add Delay for testcode 2019-07-08 22:20:25 +09:00
Sukchan Lee
40ae23aca4 Paging rollback 2019-07-08 21:44:03 +09:00
Sukchan Lee
979fd96a84 [CSFB] Fix the MacOSX 2019-07-08 21:03:39 +09:00
Sukchan Lee
16a8bea96b [CSFB] MT in idle-mode 2019-07-08 18:15:19 +09:00
Sukchan Lee
5e0c10bcb4 [CSFB] Rename test-name 2019-07-08 09:18:17 +09:00
Sukchan Lee
9863635342 [SGsAP] Add SGsAP-RESET-INDCIATON/ACK 2019-07-07 10:16:21 +09:00
Sukchan Lee
bc9cf078a5 [CSFB] Add MO-CSFB-Indication 2019-07-07 09:47:32 +09:00
Sukchan Lee
65cb21ce05 [SGsAP] clarify P_TMSI availablity 2019-07-06 23:30:05 +09:00
Sukchan Lee
0bbc5124e7 rename filename 2019-07-06 22:52:09 +09:00
Sukchan Lee
89ed2dda88 [SGsAP] TestCode for CS fallback in idle-mode 2019-07-06 22:45:15 +09:00
Sukchan Lee
a6eb646b76 [SGsAP] MO CS fallback in idle-mode 2019-07-06 22:16:13 +09:00
Sukchan Lee
5164b51607 [SGsAP] waiting for running the SCTP test server 2019-07-05 18:16:58 +09:00
Sukchan Lee
cc83c6a586 [SGsAP] DETACH-INDICATOIN/ACK is done 2019-07-05 18:13:32 +09:00
Sukchan Lee
a372bd2949 [SGsAP] Start to implement XXX-DETACH-INDICATION 2019-07-05 17:25:12 +09:00
Sukchan Lee
4f7aa2d5b7 [SGsAP] Location Update Reject 2019-07-05 15:55:07 +09:00
Sukchan Lee
334c678995 Fix the Security Command Reject (#214) 2019-07-04 22:48:26 +09:00
Sukchan Lee
0717b57465 Debian package name changed 2019-07-04 13:12:09 +00:00
Sukchan Lee
b440d59ce7 Update documentation 2019-07-04 20:30:58 +09:00
Nick
770d1cdba6 Reordered and updated MME details 2019-07-04 21:10:25 +10:00
Nick
cd2b420470 Created doc "NextEPC Splitting Network Elements"
Outlining basic requirements of each network element and interfaces and how to break up the network.
2019-07-04 21:09:05 +10:00
Sukchan Lee
f9f1ac7aac fix the docker-compose build error (#211) 2019-07-02 22:02:43 +09:00
Sukchan Lee
fd66c4023e Merge pull request #209 from laf0rge/master
freeDiameter: Fix compilation on Linux without SCTP_SEND_FAILED_EVENT
2019-07-02 15:15:52 +09:00
Harald Welte
6fc412dba7 fix 'no rule to make target "-L/usr/local/lib" compilation errors
When building (at least) on Debian unstable, I get the following type of errors:

make[4]: Entering directory '/space/home/laforge/projects/git/nextepc/lib/base'
make[4]: *** No rule to make target '-L/usr/local/lib', needed by 'libbase.la'.  Stop.

The cause seems to be that some target_DEPENDENCIES includes
@OGSCORE_LIBS@ or @OGSCRYPT_LIBS@, whcih both expand to "-L${libdir}
-lpthread -logscore-1.0" as per the pkg-config files.

I believe DEPENDENCIES should not list external library dependencies,
but only dependencies inside the repository.

Closes: #210
2019-07-02 13:58:40 +08:00
Harald Welte
95091210ff freeDiameter: Fix compilation on Linux without SCTP_SEND_FAILED_EVENT
The fallback to the old SCTP API must be made if either SCTP_SEND_FAILED_EVENT
or SCTP_NOTIFICATIONS_STOPPED_EVENT are undeclared.

This fixes building nextepc on e.g. Debian unstable.

Closes: #208
2019-07-02 13:42:33 +08:00
Sukchan Lee
9abc8575f6 fix the testcase error 2019-07-01 10:00:50 +09:00
Sukchan Lee
3ebe749bb2 Merge branch 'master' of https://github.com/open5gs/nextepc 2019-06-30 22:58:48 +09:00
Sukchan Lee
baa35843fc Update document for v0.4.4 2019-06-30 22:58:30 +09:00
Sukchan Lee
d9e0b0eeaf Release v0.4.4 in Ubuntu(bionic) 2019-06-30 13:24:00 +00:00
Sukchan Lee
6e5ab199af Release v0.4.4 in Ubuntu(xenial) 2019-06-30 13:22:19 +00:00
Sukchan Lee
e2af4473dd Release v0.4.4 2019-06-30 12:05:30 +00:00
Sukchan Lee
e704295811 fix the testsuite 2019-06-30 20:48:51 +09:00
Sukchan Lee
8e53e82913 fix identation 2019-06-30 20:46:15 +09:00
Sukchan Lee
db348156e2 fix indentation 2019-06-30 20:29:25 +09:00
Sukchan Lee
de8ae9823a Create Multiple Session for same IMSI (#203) 2019-06-30 12:46:02 +09:00
Sukchan Lee
16fdc0d989 Update identation 2019-06-30 12:14:04 +09:00
Sukchan Lee
971f41d951 Missing file (#203) 2019-06-29 16:04:25 +09:00
Sukchan Lee
7747a4e32a Change MME-UE-S1AP-ID and eNB-UE-S1AP-ID (#203) 2019-06-29 15:51:42 +09:00
Sukchan Lee
44710d3f63 Add simulator to solve (#203) problem 2019-06-29 15:40:52 +09:00
Sukchan Lee
a4d18c2d96 Move enb_ostream_id from mme_ue to enb_ue (#206) 2019-06-28 18:11:16 +09:00
Sukchan Lee
6901278816 Fix the setting of the SCTP ostream-id (#206) 2019-06-26 23:06:31 +09:00
Sukchan Lee
7492ec734b Oops! change github_username 2019-06-26 21:38:33 +09:00
Sukchan Lee
4af3fea81b Fix the MME crash (#205) 2019-06-26 20:52:28 +09:00
Sukchan Lee
148c109d05 Fix the SGW crash for "context not found" (#204) 2019-06-25 23:04:41 +09:00
Sukchan Lee
acd77a8ad6 Fix the MME crash (#203) 2019-06-25 10:55:00 +09:00
Sukchan Lee
f380af44c3 Fix the service reject handling (#201) 2019-06-24 09:44:05 +09:00
Sukchan Lee
5f8d609d0c Handle SR and TAU in security-mode state (#202) 2019-06-23 21:15:59 +09:00
Sukchan Lee
db83b1e004 fix identation 2019-06-23 20:43:23 +09:00
Sukchan Lee
fe15600e02 Remove S1 check in Downlink NAS transport (#201) 2019-06-23 20:17:44 +09:00
Sukchan Lee
9177ad4ee0 When STCP send failed, clear related context (#200) 2019-06-23 13:39:44 +09:00
Sukchan Lee
660ebc823f mme_sctp_event_push() interface introduced 2019-06-23 04:22:22 +00:00
Sukchan Lee
9d0b419085 Create new interface : s1ap_event_push() 2019-06-23 12:47:22 +09:00
Sukchan Lee
79cbd8fb24 Update document for Release v0.4.3 2019-06-22 16:51:28 +09:00
Sukchan Lee
f9ea5a9136 OGSLIB Version check >= 1.0.2 2019-06-22 07:10:23 +00:00
Sukchan Lee
6f65f9b5ec Release v0.4.3 in Ubuntu(Xenial) 2019-06-22 06:57:30 +00:00
Sukchan Lee
e688667b9f Release v0.4.3 in Ubuntu(Bionic) 2019-06-22 06:56:10 +00:00
Sukchan Lee
2ac74ef6ac Release v0.4.3 2019-06-22 04:05:09 +00:00
Sukchan Lee
aeedf01d6a Fix the package error 2019-06-22 03:53:03 +00:00
Sukchan Lee
8902411afe Release v0.4.3 2019-06-22 03:32:00 +00:00
Sukchan Lee
1a26354f29 Release v0.4.3 2019-06-22 03:30:34 +00:00
Sukchan Lee
712b9c8334 [SGsAP] Add TMSI-REALLOCATION-COMPLETE 2019-06-22 12:11:07 +09:00
Sukchan Lee
693afa922f [SGsAP] Location Update process is done 2019-06-22 11:16:22 +09:00
Sukchan Lee
058ebc747d Follow OGSlib updates 2019-06-22 10:14:01 +09:00
Sukchan Lee
5ca6d79590 Running ./tests/testcsfb without an installation 2019-06-22 09:24:46 +09:00
Sukchan Lee
652cfa70d5 [SGsAP] Basic operation done 2019-06-22 00:28:21 +09:00
Sukchan Lee
bbc594330b [SGsAP] update it 2019-06-21 18:23:29 +09:00
Sukchan Lee
c284ef7429 [SGsAP] build LOCATION-UPDATE-REQUEST 2019-06-20 21:22:51 +09:00
Sukchan Lee
95586eaf09 [SGsAP] Not tested 2019-06-20 18:20:32 +09:00
Sukchan Lee
eca47a2773 [SGsAP] update it 2019-06-19 18:04:57 +09:00
Sukchan Lee
0e0a69ed7c [SGsAP] server/client connected in test-code 2019-06-18 17:38:25 +09:00
Sukchan Lee
5ce95f94ee [SGsAP] contine to test code 2019-06-18 15:32:01 +09:00
Sukchan Lee
6b0561681f remove s1ap_recv() 2019-06-18 14:04:11 +09:00
Sukchan Lee
d0417d353a [SGsAP] fix the CSFB test 2019-06-17 12:51:25 +00:00
Sukchan Lee
4013d9203c [SGsAP] Add linger option in usrsctp 2019-06-17 21:40:34 +09:00
Sukchan Lee
fba54b09eb [SGsAP] fix the MacOSX 2019-06-17 20:56:52 +09:00
Sukchan Lee
8a711191b3 [SGsAP] add configuration and fix the testcode 2019-06-17 13:28:39 +09:00
Sukchan Lee
f53e80eec7 [SGsAP] fix the bug in handling memory 2019-06-17 10:36:44 +09:00
Sukchan Lee
fa454209a9 [SGsAP] continue to work 2019-06-16 23:33:23 +09:00
Sukchan Lee
7ee0b3324b [SGsAP] continue to work 2019-06-16 22:22:07 +09:00
Sukchan Lee
bfa526d221 [SGsAP] continue to work 2019-06-16 22:17:38 +09:00
Sukchan Lee
6816400247 [SGsAP] continue to work 2019-06-16 21:26:22 +09:00
Sukchan Lee
3b26983db9 fix identation 2019-06-16 19:09:31 +09:00
Sukchan Lee
eab4958a81 [SGsAP] client program in linux 2019-06-16 09:31:29 +00:00
Sukchan Lee
e2aa8ec198 [SGsAP] Client program 2019-06-16 18:20:40 +09:00
Sukchan Lee
ec7d9f2917 [SGsAP] continue to implement it 2019-06-16 17:33:45 +09:00
Sukchan Lee
0be339e52d [SGSAP] start this feature 2019-06-16 16:47:20 +09:00
Sukchan Lee
fa81c86e22 [CSFB] Create a state machine 2019-06-16 15:40:26 +09:00
Sukchan Lee
1f838c0f68 Move New Indentation with LINUX-style 2019-06-16 11:25:41 +09:00
Sukchan Lee
aa0001c78b more delay needed in MacOSX 2019-06-15 23:34:42 +09:00
Sukchan Lee
c49bda5173 CSFB Test framework done 2019-06-15 23:28:52 +09:00
Sukchan Lee
bb703243c6 Update gitignore 2019-06-15 21:19:38 +09:00
Sukchan Lee
f3a6620a65 CSFB test code update 2019-06-15 21:18:16 +09:00
Sukchan Lee
cb00bf848e Create CSFB test framework 2019-06-15 19:37:34 +09:00
Sukchan Lee
343c72b288 Option for NODELAY 2019-06-15 16:58:52 +09:00
Sukchan Lee
bcd784b1f0 Apply ogslib changes 2019-06-15 16:54:49 +09:00
Sukchan Lee
c855546d77 add delay for volte test 2019-06-15 16:21:18 +09:00
Sukchan Lee
f550919df1 more faster test code 2019-06-15 16:16:32 +09:00
Sukchan Lee
f6a8985267 remove delay in test code 2019-06-15 16:02:52 +09:00
Sukchan Lee
1542d70af6 nodelay for MacOSX 2019-06-15 15:37:05 +09:00
Sukchan Lee
3d154cc423 Apply ogslib changes 2019-06-15 15:21:34 +09:00
Sukchan Lee
fbc73230b0 enb_ue assertion is fixed (#198) 2019-06-15 00:11:30 +09:00
Sukchan Lee
55164b4a1f Turn on SCTP_NODELAY (#198) 2019-06-15 00:03:05 +09:00
Sukchan Lee
c52cf33c3c fix the bug (#195) 2019-06-14 18:10:59 +09:00
Sukchan Lee
eb0d8075ef Continue to fix the crash error (#195) 2019-06-14 17:04:04 +09:00
Sukchan Lee
d3476eca6d Fix PCRF Session Control (#195)
- If PCRF Session is NULL and CC-Request-Type is Terminate,
   the result code is DIAMETER_UNKNOWN_SESSION_ID
2019-06-14 16:55:16 +09:00
Sukchan Lee
9e3ebf9a16 fix the bug (#195), But more work is needed 2019-06-14 14:24:17 +09:00
Sukchan Lee
88217ff11e test framework for crash 2019-06-13 18:22:34 +09:00
Nick
a550cf5b1d Merge pull request #196 from open5gs/nick-docs-update
Update 01-quickstart.md
2019-06-12 19:31:03 +10:00
Nick
d7131dc2e1 Update 01-quickstart.md 2019-06-12 19:15:11 +10:00
Sukchan Lee
22c3d66bc3 More log for analyzing #195 2019-06-11 23:20:49 +09:00
Sukchan Lee
f28f3003c5 change code indentation 2019-06-11 23:16:54 +09:00
Sukchan Lee
c530e1cbcf Fix the bug (#194) 2019-06-11 22:39:23 +09:00
Sukchan Lee
3c61858f21 add missing file 2019-06-11 22:21:45 +09:00
Sukchan Lee
477f16ad0b rename project done 2019-06-11 22:10:47 +09:00
Sukchan Lee
75a18a30cf Add missing files 2019-06-11 18:28:57 +09:00
Sukchan Lee
a32465ed07 Rename library 2019-06-11 18:28:25 +09:00
Sukchan Lee
7bc245028a change directory name test to tests 2019-06-11 14:26:04 +09:00
Sukchan Lee
56567fec12 rename filename 2019-06-11 14:12:31 +09:00
Sukchan Lee
dc7f9d8e12 Change sample pcap from testing with my iphone-XS 2019-06-09 22:00:07 +09:00
Sukchan Lee
57af70fab9 refine GTP interface (#190) 2019-06-09 00:50:02 +09:00
Sukchan Lee
71f1b1cfa4 SGW packet buffer is changed to 65536 2019-06-09 00:03:53 +09:00
Sukchan Lee
60dc4402c6 gtp_path interface changes 2019-06-08 23:42:12 +09:00
Sukchan Lee
d4f00da662 continue to add a buffer configuration 2019-06-08 08:44:22 +09:00
Sukchan Lee
0ff388fb19 apply configuration related to MAX number 2019-06-07 15:19:09 +09:00
Sukchan Lee
ca742661f6 Add configuration related to memory support (#190) 2019-06-07 11:56:37 +09:00
Sukchan Lee
c849cc802c Add libusrsctp work-around for MacOSX 2019-06-06 23:25:32 +09:00
Sukchan Lee
4fc1e0e22c VLR configuration done 2019-06-05 22:23:45 +09:00
Sukchan Lee
d41ce4d8b1 ogs_socknode_new() interface changed 2019-06-05 22:07:37 +09:00
Sukchan Lee
8dc5211448 update it 2019-06-05 21:21:19 +09:00
Sukchan Lee
24da20bdc8 GTP interface changes 2019-06-05 21:13:18 +09:00
Sukchan Lee
70b2e51f79 Merge branch 'master' of https://github.com/open5gs/nextepc 2019-06-04 21:01:45 +09:00
Sukchan Lee
9e4d3cb824 add enb IP address to the log message 2019-06-04 21:01:23 +09:00
Sukchan Lee
10675caf89 Add SGsAP configuration 2019-06-02 21:55:24 +09:00
Sukchan Lee
fb1908410e rename s1ap filename 2019-06-02 11:35:44 +09:00
Sukchan Lee
b9c0feb40e Update configuration 2019-06-02 11:25:13 +09:00
Sukchan Lee
29a50892b5 Let me introduce SGSAP configuration 2019-06-02 11:09:01 +09:00
Sukchan Lee
f7ef0f3aab FAQ update 2019-06-02 00:50:46 +09:00
Sukchan Lee
5f4b42cbfc changes iptable usage 2019-06-02 00:32:32 +09:00
Sukchan Lee
681a7c87a4 usrsctp done 2019-06-01 21:30:13 +09:00
Sukchan Lee
a03df8d656 Document update for MacOSX 2019-06-01 19:53:57 +09:00
Sukchan Lee
a7053eb926 add workaround for MacOSX 2019-06-01 19:51:56 +09:00
Sukchan Lee
fe91a72271 fix the volte test in MacOSX 2019-06-01 19:49:06 +09:00
Sukchan Lee
5693c0c730 Merge branch 'socket' 2019-06-01 19:09:07 +09:00
Sukchan Lee
eb8b7e96d7 update ogslib 2019-06-01 19:08:53 +09:00
Sukchan Lee
85bedf1e35 this project is done 2019-06-01 19:04:34 +09:00
Sukchan Lee
8f8caf5177 remove USRSCTP macro in mme context 2019-06-01 09:57:29 +00:00
Sukchan Lee
756859d05c rename filename for s1ap-path 2019-06-01 09:52:38 +00:00
Sukchan Lee
d4023da087 continue to refine 2019-06-01 09:43:33 +00:00
Sukchan Lee
f384bdef3d fix the linux 2019-06-01 09:33:42 +00:00
Sukchan Lee
4cdc891898 rename source code 2019-06-01 18:20:02 +09:00
Sukchan Lee
7abd6b5ab9 continue to integrate MaxOSX 2019-06-01 18:19:00 +09:00
Sukchan Lee
8a7634d00c the MacOSX porting 2019-06-01 18:06:47 +09:00
Sukchan Lee
1f752e51e8 usrsctp work-around 2019-06-01 17:20:46 +09:00
Sukchan Lee
282936f215 support usrsctp 2019-06-01 16:59:38 +09:00
Sukchan Lee
60bfaa2c41 fix to compile MacOSX 2019-06-01 08:38:57 +09:00
Sukchan Lee
937f0319e3 handler type changes 2019-05-31 23:30:46 +09:00
Sukchan Lee
32c9c512d8 socknode includes pollset 2019-05-31 23:22:22 +09:00
Sukchan Lee
163bc4a040 update it 2019-05-31 13:55:05 +00:00
Sukchan Lee
58faa7bcac apply ogslib changes 2019-05-31 12:05:35 +00:00
Sukchan Lee
61d0573686 ogs_sockopt_t is added 2019-05-31 16:33:09 +09:00
Sukchan Lee
f0c84d3037 move s1ap_lksctp to ogs-lksctp 2019-05-31 14:05:45 +09:00
Sukchan Lee
69cfb3280c rename file 2019-05-31 13:58:08 +09:00
Sukchan Lee
d597912abb sctp configuration update 2019-05-31 11:34:49 +09:00
Sukchan Lee
34e2b4d44a add sctp configuration interface 2019-05-31 11:20:30 +09:00
Sukchan Lee
241efaf581 Change SCTP interface 2019-05-31 10:18:43 +09:00
Sukchan Lee
335e8513e9 fix the MacOSX 2019-05-30 21:51:25 +09:00
Sukchan Lee
cbb819f6b9 apply ogslib changes 2019-05-30 21:30:31 +09:00
Sukchan Lee
2267a59cc3 UDP interface is changed 2019-05-30 21:14:54 +09:00
Sukchan Lee
550be1cd95 apply ogslib interface changes 2019-05-30 20:14:19 +09:00
Sukchan Lee
338f359285 apply new ogslib interface 2019-05-30 19:58:27 +09:00
Sukchan Lee
3da632dd1e rename sa_family and sin_port 2019-05-30 13:50:53 +09:00
Sukchan Lee
8b782eb370 Merge branch 'master' into socket 2019-05-30 12:52:09 +09:00
Sukchan Lee
5bca0920b9 update code indentation 2019-05-29 21:27:22 +09:00
Sukchan Lee
bd1c505024 apply socknode interface changes 2019-05-29 21:05:42 +09:00
Sukchan Lee
1ed22fe7b2 Update document 2019-05-29 20:20:55 +09:00
Sukchan Lee
71367627a8 Fix mistypo 2019-05-29 20:17:12 +09:00
Sukchan Lee
88d0a53956 Release Notes - v0.4.2 2019-05-28 21:19:32 +09:00
Sukchan Lee
4d7b6c04c5 Fix errata for the document 2019-05-28 21:09:56 +09:00
Sukchan Lee
e032565991 Update debian changelog for ubuntu(xenial) 2019-05-28 20:12:02 +09:00
Sukchan Lee
f19f714136 Update debian changelog for ubuntu(bionic) 2019-05-28 20:09:15 +09:00
Sukchan Lee
94797e7d7a Update debian package 2019-05-28 20:05:07 +09:00
Sukchan Lee
581f4feb97 struct name update 2019-05-28 17:46:19 +09:00
Sukchan Lee
7c1c320141 gtp interface update 2019-05-28 14:47:06 +09:00
Sukchan Lee
244770de65 mistypo 2019-05-28 11:36:23 +09:00
Sukchan Lee
68ac111bd5 update document 2019-05-26 17:18:56 +09:00
Sukchan Lee
56556195a9 Document update 2019-05-26 17:15:14 +09:00
Sukchan Lee
9be8d1fd00 change new struct definition 2019-05-26 16:10:06 +09:00
Sukchan Lee
cdffdcaa78 update it 2019-05-26 15:27:09 +09:00
Sukchan Lee
ed803b27cb Update it 2019-05-26 12:57:29 +09:00
Sukchan Lee
314642fe1a Update it 2019-05-26 12:22:43 +09:00
Sukchan Lee
d58ddcb3ae Fix the crash error (#187) 2019-05-25 19:39:37 +09:00
Sukchan Lee
60277dcf05 Enable all s1ap message test 2019-05-19 20:26:33 +09:00
Sukchan Lee
77b8656dc3 Fix the PIDFile of the systemd service file (#182) 2019-05-19 00:42:16 +09:00
Sukchan Lee
0f892f6e84 Support a different APN for each PGW (#183) 2019-05-19 00:24:15 +09:00
Sukchan Lee
8ae096f77e Document: Fix the method of uninstalling nextepc 2019-05-18 21:08:25 +09:00
Sukchan Lee
6c99b7c187 Release Notes - v0.4.1 2019-05-18 19:32:14 +09:00
Sukchan Lee
fe68841456 Update debian changelog for ubuntu(bionic) 2019-05-18 09:59:30 +00:00
Sukchan Lee
314a1cd4be Update debian changelog for ubuntu(xenial) 2019-05-18 09:58:03 +00:00
Sukchan Lee
179df88c32 Update debian changelog 2019-05-18 08:19:39 +00:00
Sukchan Lee
bc180c3ffc Improve sanity check for queue-push fail 2019-05-06 23:13:26 +09:00
Sukchan Lee
ab81e38487 Fix the ./testsimple crash in MacOSX 2019-05-06 22:49:58 +09:00
Sukchan Lee
2d7438313d Change initialization sequence 2019-05-06 20:43:50 +09:00
Sukchan Lee
bb67705a66 BUGFIX: if SCTP uses SEQPACKET, sock should not use hash key. 2019-05-06 19:22:43 +09:00
Sukchan Lee
f097364d52 Merge branch 'master' of https://github.com/open5gs/nextepc 2019-05-03 12:43:17 +00:00
Sukchan Lee
0992fbe7f3 Fix the bug of segmentation fault in test program (#175) 2019-05-03 12:41:57 +00:00
Sukchan Lee
9bef56806e Merge pull request #178 from medeiros405/master
Change in the Log about the address use for the UE.
2019-05-03 12:27:37 +10:00
medeiros405
2ef9718209 Change in the Log about the address use for the UE. 2019-05-02 21:40:10 -03:00
Romeu Medeiros
825978d2af Revert "Small fix to set correct timezone in UE."
This reverts commit 16aa960b1e.
2019-05-02 11:42:00 -03:00
Sukchan Lee
d744893fba Update document to fix the WebUI installation URL (#176) 2019-05-02 16:34:05 +10:00
Sukchan Lee
0291d97dd5 Update document for changing debian repository 2019-05-01 18:13:21 +09:00
Sukchan Lee
a5f764544f Remove net-select in debian docker 2019-05-01 17:43:42 +09:00
Sukchan Lee
39766bc379 Merge branch 'master' of https://github.com/open5gs/nextepc 2019-05-01 17:25:29 +09:00
Sukchan Lee
bf1c6c00fe change fedora latest version 2019-05-01 17:24:59 +09:00
Sukchan Lee
c8ed909f46 Remove __DATE__/__TIME due to reproduce same binary 2019-05-01 07:56:46 +00:00
Sukchan Lee
49adabdc70 Fix the compile error for CentOS (#175) 2019-04-30 21:22:35 +00:00
Sukchan Lee
e5523342d4 Set submodule to ogslib master 2019-05-01 00:22:43 +09:00
Sukchan Lee
08efe857a0 Merge branch 'master' of https://github.com/open5gs/nextepc 2019-04-30 15:19:03 +00:00
Sukchan Lee
aec51b399a add xenial package 2019-04-30 15:18:50 +00:00
Sukchan Lee
ce2590d6fc fix the warning 2019-04-30 00:04:43 +09:00
Sukchan Lee
157d5fd739 Update NEWS document 2019-04-29 23:47:33 +09:00
Sukchan Lee
1e2ca81ae3 update ogslib changeset 2019-04-29 23:37:32 +09:00
Sukchan Lee
de2cadd926 update changelog for ubuntu 2019-04-29 14:30:51 +00:00
Sukchan Lee
dacfb7d209 Reset debian changelog 2019-04-29 14:09:29 +00:00
Sukchan Lee
f87ecc9e2c ubuntu release tag 2019-04-29 13:53:10 +00:00
Sukchan Lee
1300a4f0e7 add ubuntu release script 2019-04-29 13:50:50 +00:00
Sukchan Lee
16ea21d4a0 update document 2019-04-29 22:26:52 +09:00
Sukchan Lee
92733e71be Add Google Analytics 2019-04-28 23:20:33 +09:00
Sukchan Lee
8a5ef1ac1a Update Document 2019-04-28 20:28:52 +09:00
Sukchan Lee
6294ae3349 Merge branch 'master' of https://github.com/open5gs/nextepc 2019-04-28 20:20:27 +09:00
Sukchan Lee
59cd4aaa2e Set OGSLib master 2019-04-28 20:19:39 +09:00
Sukchan Lee
b9e3d76783 version update in webui 2019-04-28 09:16:18 +00:00
Sukchan Lee
3defa0974c Merge branch 'r0.3.11' 2019-04-28 09:14:50 +00:00
Sukchan Lee
bb2e976958 nextepc release v0.3.11 2019-04-28 05:17:14 +00:00
Sukchan Lee
9b53988ab6 Update document 2019-04-28 13:42:14 +09:00
Sukchan Lee
af1b87002a Update document 2019-04-28 00:45:07 +09:00
Sukchan Lee
75b09fe410 fix gitignore since test progname is changed 2019-04-28 00:11:48 +09:00
Sukchan Lee
c47f065e1a fix the baseurl to nextepc 2019-04-28 00:10:50 +09:00
Sukchan Lee
48bfe83c0f Add a Document 2019-04-28 00:01:51 +09:00
Sukchan Lee
3ff9c6bbb5 add gitsubmodule 2019-04-28 00:00:02 +09:00
Sukchan Lee
1b62f07684 remove gitmodules 2019-04-27 23:57:29 +09:00
Sukchan Lee
0ebd85f364 Integration with OGSLib 2019-04-27 23:54:30 +09:00
Sukchan Lee
4165ec1264 Release v0.3.11 2019-04-27 14:00:29 +00:00
Sukchan Lee
540a3956bb Merge pull request #171 from toldjuuso/patch-1
typo: trace log message on s11
2019-04-19 06:15:52 +09:00
Juuso Haavisto
9919e7dc86 typo: trace log message on s11 2019-04-18 20:10:18 +03:00
Sukchan Lee
6bd8411fc1 Add log message if EIA0 is used (#167) 2019-04-02 11:11:24 +09:00
Sukchan Lee
8fea12643a nas_plmn_id_t structure for NAS message. (#166)
/**********************************
 * NAS PLMN_ID Structure             */
typedef struct _nas_plmn_id_t {
ED2(uint8_t mcc2:4;,
    uint8_t mcc1:4;)
ED2(uint8_t mnc3:4;,
    uint8_t mcc3:4;)
ED2(uint8_t mnc2:4;,
    uint8_t mnc1:4;)
} __attribute__ ((packed)) nas_plmn_id_t;

/**********************************
 * PLMN_ID Structure             */
typedef struct _plmn_id_t {
ED2(c_uint8_t mcc2:4;,
    c_uint8_t mcc1:4;)
ED2(c_uint8_t mnc1:4;,
    c_uint8_t mcc3:4;)
ED2(c_uint8_t mnc3:4;,
    c_uint8_t mnc2:4;)
} __attribute__ ((packed)) plmn_id_t;
2019-03-31 14:26:18 +09:00
Sukchan Lee
c964d1df3c Increase packet memory buffer (#161) 2019-03-22 16:59:37 +09:00
Sukchan Lee
ddaea685b3 Notify mailing list 2019-03-17 21:37:48 +09:00
Sukchan Lee
e1ad9c43d7 Fix the source code (#159) 2019-03-17 01:58:14 +00:00
Sukchan Lee
0b91d42cb1 Merge pull request #159 from laf0rge/laforge/typo
nas_message.py: Fix copy+paste error
2019-03-17 10:57:37 +09:00
Harald Welte
653701abdb nas_message.py: Fix copy+paste error
Files are not generated by gtpv2c_tlv.py but by nas_message.py
2019-03-16 20:55:54 +01:00
Sukchan Lee
58bcda332b Set ENB-ID to zero in S1AP message. (#156) 2019-03-10 10:32:26 +09:00
Sukchan Lee
8cb620e477 refine exit routine for nextepc-epcd 2019-03-03 21:11:50 +09:00
Sukchan Lee
5cac796e46 Support 4-byte RES in auth (#147) 2019-02-07 20:53:01 +09:00
Sukchan Lee
8c68560ccd fix the timezone in EMM & GTP encoding 2019-01-20 15:36:11 +09:00
Sukchan Lee
b2c6c8f856 Merge pull request #129 from EugeneBogush/patch-1
maybe this more logically?
2018-12-05 06:46:03 +09:00
EugeneBogush
f753d38338 maybe this more logically? 2018-12-04 18:00:46 +02:00
Sukchan Lee
c711e788d2 Add TimeZone in the docker environment 2018-11-13 10:03:24 +09:00
Sukchan Lee
26f4081979 Merge pull request #109 from brchiu/add_missing_c_namespace 2018-10-12 20:49:48 +09:00
Bi-Ruei, Chiu
3427835ecc Add missing C namespace 2018-10-12 14:59:30 +08:00
Sukchan Lee
7312dd1974 Change configuration description (#100) 2018-09-23 14:41:55 +09:00
Sukchan Lee
f5599896ff SGW selection mode is added (#100) 2018-09-23 14:29:19 +09:00
Sukchan Lee
aea1d83026 Create mme_sgw_t and mme_pgw_t for configuration (#100) 2018-09-23 13:16:40 +09:00
Jihoon Brandon Lee
3dc2d396db S1AP PWS(public warning system) support
S1AP Write Replace Warning Request/Response
S1AP Kill Request/Response
CBC integration (SBc-AP) is required to initiate a PWS procedure.
2018-09-13 20:38:33 -06:00
Sukchan Lee
d004770e17 Release v0.3.10 2018-08-17 11:54:36 +00:00
Sukchan Lee
f049ffb945 Release v0.3.10 2018-08-17 04:28:50 +00:00
Sukchan Lee
3b66bf09aa Renew freeDiameter Certification #93, #94 2018-08-17 10:00:15 +09:00
Sukchan Lee
0e7cf76f8a Change directory src/app to src/common 2018-08-14 17:28:22 +09:00
Sukchan Lee
0ce11e3a7c Remove 'app_name' global variable 2018-08-14 17:01:46 +09:00
Sukchan Lee
d96efc6ea9 Re-arrange function declaration on Test Code 2018-08-13 17:49:49 +09:00
Sukchan Lee
a5dd751817 update packet-lock.json 2018-08-13 16:55:21 +09:00
Sukchan Lee
334de68d85 update package-lock.json 2018-08-13 15:46:09 +09:00
Sukchan Lee
295213dd62 Add Attach-Request handler in all EMM state.
If signal is low, UE cannot send an appropriate NAS message.

In this case, the eNB either sends a NASNonDelivery message or
sends the message back according to UE's NAS timer.

At this point, NextEPC did not implement NAS-Specification exactly. The
NASNonDelivery message will be ignored, and a timer of NAS is not yet in
need.

However, since necessary to recover, it is now implemented to
accept an Attach Request in all EMM state. The other features will be
added later if we decide that it is really necessary.
2018-08-11 12:27:50 +09:00
James Park
0a93c886ad Merge branch 'master' of https://github.com/acetcom/cellwire 2018-08-10 17:09:39 -07:00
James Park
f91b872d0b Do not resolve remote peer, which may results in the failure of running
nextepcd.
2018-08-10 17:04:34 -07:00
Sukchan Lee
283e37ca26 update package-lock.json 2018-08-09 20:55:20 +09:00
Sukchan Lee
e2afb6b2fc fix package-lock 2018-07-31 19:40:04 +09:00
Sukchan Lee
51b07a496e Show reason string for YAML parser error (#40) 2018-07-23 20:28:38 +09:00
Sukchan Lee
c3e5bdba53 fix the indentation 2018-07-04 18:05:30 +09:00
Sukchan Lee
271949ad86 Merge pull request #73 from giuliol/master
fixed TLV uint32 bug
2018-07-04 18:04:08 +09:00
Sukchan Lee
7ed6d53604 update it 2018-07-02 22:35:36 +09:00
Sukchan Lee
85a100c69d udpate it 2018-07-02 22:34:59 +09:00
Sukchan Lee
3327420b6f Change discussion channel from slack to discord 2018-07-02 22:31:59 +09:00
Sukchan Lee
64a9fef969 upgrade NPM package 2018-07-02 22:20:13 +09:00
Sukchan Lee
95079a8e90 fix the slack invite link 2018-07-02 21:02:51 +09:00
Sukchan Lee
1c658c1e45 add make in fedora dockerfile 2018-06-23 22:12:57 +09:00
Sukchan Lee
06e56a4509 fix the compile error in MacOSX 2018-06-23 22:10:39 +09:00
Sukchan Lee
2295636f36 Merge branch 'master' of https://github.com/acetcom/nextepc 2018-06-23 13:00:01 +00:00
Sukchan Lee
8f9219bef0 fix the compile error for GCC 8.1 2018-06-23 12:59:40 +00:00
Sukchan Lee
b2f957dc8e fix the compiler error in the mongo-c-driver 1.11 2018-06-23 21:14:03 +09:00
Sukchan Lee
71c7508047 Merge branch 'master' of https://github.com/acetcom/nextepc 2018-06-20 17:57:17 +09:00
Sukchan Lee
bc87fc9c18 remove unnecessary code 2018-06-20 17:57:02 +09:00
Sukchan Lee
50fdf5474f Add log for UE IP (#71) 2018-06-19 22:43:13 +09:00
giuliol
51fde0acd8 fixed TLV uint32 bug 2018-06-18 10:34:17 +01:00
Sukchan Lee
5ee7cdd3f8 Release v0.3.9 2018-06-03 01:42:05 +00:00
Sukchan Lee
048eb3f2b2 Change default DISPLAY environment.
We set the DISPLAY=docker.for.mac.localhost:0
If you want to use wireshark in Linux, you need to set DISPLAY to :0.
2018-06-03 10:32:28 +09:00
Sukchan Lee
352b02fc3e Fix the Dockerfile error 2018-06-03 10:17:56 +09:00
Sukchan Lee
9d8695fa31 Update logging message 2018-05-31 09:40:34 +09:00
Sukchan Lee
9415f5215c Fix SCTP for Mac OS X 2018-05-30 22:17:46 +09:00
Sukchan Lee
8c674aa134 Update logging 2018-05-30 21:58:10 +09:00
Sukchan Lee
3b9b1108b1 Configure Outbound streams on SCTP_COMM_UP 2018-05-30 21:49:17 +09:00
Sukchan Lee
9aed43075c SCTP recv interface will be changed. (Progressing...) 2018-05-30 17:45:14 +09:00
Sukchan Lee
3d78f285be Install wireshark in docker 2018-05-30 15:05:47 +09:00
Sukchan Lee
749d632b86 Change the name of docker image 2018-05-29 17:41:11 +09:00
Sukchan Lee
37ecb9a63b Change debian package in docker 2018-05-29 16:03:29 +09:00
Sukchan Lee
0d3af830bb Unlink debian from ubuntu 2018-05-29 13:05:37 +09:00
Sukchan Lee
7c7cfd1cbf Support bionic in Docker 2018-05-29 11:20:48 +09:00
Sukchan Lee
4f1efbb521 Add wireshark in Docker 2018-05-29 11:15:18 +09:00
Sukchan Lee
2fb37ad797 Change the assert to warning
- When UEContextReleaseComplete is received,
    It could be unknown MME-UE-S1AP-ID.
- So, we change the log from assert to warning
2018-05-23 20:40:46 +09:00
Sukchan Lee
ffa6c2c15b Fix the bug of invalid TAU update result.
- MME should set TAU update result in TAU accept message. TAU udpate
result should be derived from TAU request message.
2018-05-22 19:21:34 +09:00
Sukchan Lee
c906b243a2 fix the encryption bug 2018-05-22 17:39:43 +09:00
Sukchan Lee
056fc43d34 Fix the bug for EIA2 (#64) 2018-05-22 11:31:09 +09:00
Sukchan Lee
76c84bdaa4 Fix the bug in building TAU accept message (#29)
- TAU accept should be integrity protected
2018-05-21 15:17:34 +09:00
Sukchan Lee
6ae20c9d1c refine code 2018-05-19 06:16:53 +09:00
Sukchan Lee
fe84604fa0 Oops! Change inbound_streams to outbound_streams (#63) 2018-05-19 06:06:02 +09:00
Sukchan Lee
85a2a64b65 Support Mac OS X for SCTP streams negotiations 2018-05-18 23:08:57 +09:00
Sukchan Lee
f5c203d3ac remove redundant code 2018-05-18 17:32:56 +09:00
Sukchan Lee
9a0afe035a Negociate SCTP stream ID with eNodeB (#63) 2018-05-18 17:14:29 +09:00
Sukchan Lee
76d8df3879 remove d_error 2018-05-18 15:52:47 +09:00
Sukchan Lee
550a606306 Update error message if SGW is not running (#59) 2018-05-14 21:46:19 +09:00
Sukchan Lee
1b21c21395 change warning to trace 2018-05-13 21:14:51 +09:00
Sukchan Lee
157dab73c7 fix the linux for SCTP streams 2018-05-13 18:31:01 +09:00
Sukchan Lee
7dba30b1e6 S1AP sends SCTP packet with stream id (#54) 2018-05-13 18:02:24 +09:00
Sukchan Lee
55fa0115e8 Merge branch 'master' into stream 2018-05-13 17:01:36 +09:00
Sukchan Lee
2142d406f0 fix the timezone for GTPv2 message 2018-05-13 17:00:57 +09:00
Sukchan Lee
9d84d4d43a Fix the timezone error 2018-05-13 16:45:49 +09:00
Medeiros405
16aa960b1e Small fix to set correct timezone in UE. 2018-05-13 00:27:39 -03:00
Sukchan Lee
57ef9697c3 Merge branch 'stream' of https://github.com/acetcom/nextepc into stream 2018-05-13 10:04:12 +09:00
Sukchan Lee
280aaf9fe1 Add SCTP output stream generator (#54) 2018-05-10 11:19:05 +09:00
Sukchan Lee
529b55c16b Introduce new configuration for SCTP streams (#54)
SCTP initmsg
 - Number of output streams : configured(default:30)
 - Maximum input streams : 65535
 - Maximum attempts : 4
 - Maximum initial timeout : 8 seconds
2018-05-10 10:35:15 +09:00
Sukchan Lee
10f59c850b Generate SCTP output stream identifier 2018-05-09 23:09:04 +09:00
Sukchan Lee
e18467889c Introduce new configuration for SCTP streams
SCTP initmsg
 - Number of output streams : configured(default:30)
 - Maximum input streams : 65535
 - Maximum attempts : 4
 - Maximum initial timeout : 8 seconds
2018-05-09 22:11:25 +09:00
Sukchan Lee
3148d4cd67 Support Ubuntu 18.04 LTS (bionic) 2018-05-05 22:52:03 +09:00
Sukchan Lee
de92fdd5c7 Update debian changelog for ubuntu 18.04(bionic)
We've release ubuntu 18.04 LTS(bionic)
2018-05-05 21:51:50 +09:00
Sukchan Lee
f3ddfaec44 Fix the docker development environment 2018-05-02 22:11:02 +09:00
Sukchan Lee
2d5f9d0d26 Release v0.3.8 2018-04-29 21:48:27 +09:00
Sukchan Lee
765eb2ada0 update it 2018-04-20 10:48:52 +02:00
Sukchan Lee
ee3c2d29bf Merge branch 'master' of https://github.com/acetcom/nextepc 2018-04-20 09:06:50 +02:00
Sukchan Lee
60aca81a1f fix the bug for handover command in case of no indirect tunnel 2018-04-20 09:06:17 +02:00
Sukchan Lee
e60a3d567d fix memory-leak when s1ap decode is failed 2018-04-18 22:21:58 +09:00
James Park
c968067829 -Initialize enb_ue_s1ap_id to invalid value
-Use mme_ue_s1apid if enb_ue_s1ap_id is not valid when encoding
ue_context_release_command
2018-04-17 14:35:15 -07:00
James Park
553804dd94 Fix bug: Paging message should be copied before sending 2018-04-17 11:46:20 -07:00
Sukchan Lee
38a252bbf0 Merge branch 'master' of https://github.com/acetcom/nextepc 2018-04-15 18:37:58 +09:00
Sukchan Lee
ae1660c436 add warning 2018-04-15 18:37:45 +09:00
Sukchan Lee
d2aed88ac6 Release 0.3.7 2018-04-14 15:04:04 +09:00
James Park
e5a0b1ff69 Reduce the number of buffered packets when UE is in idle.
FIXME: Need to be adjusted when the number of clbuf is increased.
2018-04-12 10:11:17 -07:00
Sukchan Lee
539d0c7bc5 fix the bug about wrong size value when calling core_calloc 2018-04-11 06:47:28 +09:00
James Park
a1e06c919f Fix bug : wrong size vlaue when calling core_calloc 2018-04-10 14:35:18 -07:00
Sukchan Lee
935e4b56ef Use common S1AP library for UERadioCapability
- Use S1AP_STORE/CLEAR macros for storing/retrieving UERadioCapability
- UERadioCapability will be stored in UECapabilityInfoIndication
- InitialContextSetupRequest use the stored UERadioCapability
2018-04-09 21:52:16 +09:00
Sukchan Lee
2a1feae83f add the log in initial_context_setup_request 2018-04-06 09:38:11 +09:00
Sukchan Lee
b1055f703a if Unknown GUTI in TAU request, MME sends TAU-reject (#42) 2018-03-27 09:42:23 +09:00
Sukchan Lee
dab5bae4ed add constraint for safety 2018-03-25 22:51:30 +09:00
Sukchan Lee
8ff9a7cf4c eNB/MME Configuration Transfer with new S1AP library 2018-03-24 10:08:55 +09:00
Sukchan Lee
82dee88309 change d_assert to d_error if target eNB is not found 2018-03-23 13:14:56 +09:00
Sukchan Lee
6ff80f4457 Apply velichkov's s1ap branch update 2018-03-22 15:55:52 +09:00
Sukchan Lee
62eed38e63 mistypo 2018-03-22 14:57:46 +09:00
Sukchan Lee
e66c8270d8 update readme 2018-03-22 14:55:03 +09:00
Sukchan Lee
ab6f48193b readme updated 2018-03-22 14:53:18 +09:00
Sukchan Lee
f3b4a9b70f Move new S1AP encoder/decoder 2018-03-22 14:12:03 +09:00
Sukchan Lee
80b14b85f0 Merge branch 's1ap' 2018-03-22 13:53:52 +09:00
Sukchan Lee
db1d139364 add debug message for s1ap(trace_level:25) 2018-03-21 21:15:01 +09:00
Sukchan Lee
03644bdb0c Release 0.3.6 2018-03-21 08:05:56 +00:00
Sukchan Lee
c944e87d5a Release 0.3.6 2018-03-21 16:49:39 +09:00
Sukchan Lee
778d23e717 Reset is done 2018-03-21 16:37:15 +09:00
Sukchan Lee
ef9d5948a8 s1 reset encoder/decoder is added 2018-03-21 16:10:20 +09:00
Sukchan Lee
13ece7f4d4 Merge branch 'master' into s1ap 2018-03-21 14:06:20 +09:00
Sukchan Lee
a9e5283db3 fix compile error trusty 32bit 2018-03-20 15:12:24 +09:00
Sukchan Lee
87b6896128 fix compile error 2018-03-18 18:50:36 +09:00
Sukchan Lee
6c692e05f5 Oops! 2018-03-16 13:29:36 +09:00
Sukchan Lee
bf6e3cdc8c change assert to warning 2018-03-16 13:13:56 +09:00
Sukchan Lee
8a2699b81f increase recv buffer size to 8192 (#35) 2018-03-15 21:54:50 +09:00
Sukchan Lee
d503fadd55 fix the testvolte 2018-03-15 17:39:41 +09:00
Sukchan Lee
463e40d41b test initial context setup failure and handover failure 2018-03-15 17:22:45 +09:00
Sukchan Lee
4b32d7f448 Merge branch 'master' into s1ap 2018-03-15 14:14:43 +09:00
Sukchan Lee
25c90c0e96 Increase SCTP recv buffer from 2048 to 4096 2018-03-15 10:50:32 +09:00
Sukchan Lee
1cd740704e update it 2018-03-14 18:12:07 +09:00
Sukchan Lee
9434c751cb merge master branch 2018-03-14 17:59:56 +09:00
Sukchan Lee
0414f19684 Merge branch 'master' into s1ap 2018-03-14 17:45:54 +09:00
Sukchan Lee
5d21ae4071 Sends ErrorIndication if S1 context has already been removed (#29) 2018-03-14 17:24:04 +09:00
Sukchan Lee
f89358dc03 add handover failure 2018-03-14 16:36:56 +09:00
Sukchan Lee
4c8123f771 ENB Status Transfer is added with s1ap_copy_ie() 2018-03-14 14:03:43 +09:00
Sukchan Lee
637d8613ba fix the 32bit S1AP problem 2018-03-14 13:40:45 +09:00
Sukchan Lee
d881f8c2ed handover test 2018-03-13 23:42:55 +09:00
Sukchan Lee
dbdd6bfdcf handover test 2018-03-13 23:16:01 +09:00
Sukchan Lee
99a8e06ccf Oops. rollback 2018-03-13 17:52:00 +09:00
Sukchan Lee
a11f6e431c S1AP handover is added. (Not tested) 2018-03-13 17:50:11 +09:00
Sukchan Lee
8e52447a53 ErrorIndication is added 2018-03-12 23:06:14 +09:00
Sukchan Lee
5172d2034a Path Switch Request is added 2018-03-12 22:47:10 +09:00
Sukchan Lee
49fba95ebb update README 2018-03-12 20:58:31 +09:00
Sukchan Lee
74834c0eb4 change s1ap asn1c to velichkov 2018-03-12 11:55:44 +00:00
Sukchan Lee
422d1c2f8f Merge branch 's1ap-brchiu' of https://github.com/acetcom/nextepc into s1ap-brchiu 2018-03-12 11:38:40 +00:00
Sukchan Lee
98a317b4b9 port linux 2018-03-12 11:38:21 +00:00
Sukchan Lee
ff3dc862b3 paging is tested 2018-03-11 21:24:26 +09:00
Sukchan Lee
9e55f1c78a Paging is added 2018-03-11 20:57:18 +09:00
Sukchan Lee
c7d24c804b E-RAB Setup/Release is added 2018-03-11 20:41:37 +09:00
Sukchan Lee
308c6f1e66 all attach test is successful 2018-03-11 16:36:51 +09:00
Sukchan Lee
6480689da4 ue context release is added 2018-03-11 14:38:35 +09:00
Sukchan Lee
2c1d70de3c new s1ap : attach done 2018-03-10 22:52:21 +09:00
Sukchan Lee
d40bf0463d continue to move new s1ap library 2018-03-10 12:21:02 +09:00
Sukchan Lee
e10d358a2b Merge branch 'master' into s1ap-brchiu 2018-03-09 21:02:17 +09:00
Sukchan Lee
bb844434f2 MME Configuration Transfer is added (#29) 2018-03-08 23:29:02 +09:00
Sukchan Lee
6c3390bf30 MME can support S1-handover without creating indirect tunnel 2018-03-07 22:32:31 +09:00
Sukchan Lee
c31dfb507d eNB Configuration Transfer is added (#29) 2018-03-07 21:53:53 +09:00
Sukchan Lee
5fad2f0e5c Release 0.3.5 2018-03-06 12:43:34 +00:00
James Park
e69cea9b5b Ignore UCS2 bit to encode UIA 2018-03-05 11:02:36 -08:00
Sukchan Lee
1c8d10a696 remove s1ap2 2018-03-05 23:33:29 +09:00
Sukchan Lee
0d073fbb73 s1setup encoder is implemented 2018-03-05 23:32:14 +09:00
Sukchan Lee
c5689b3f66 update it 2018-03-05 23:01:07 +09:00
Sukchan Lee
0c9b034f12 move s1ap3 to s1ap 2018-03-05 22:17:22 +09:00
Sukchan Lee
16b69865ac remove s1ap 2018-03-05 22:14:38 +09:00
Sukchan Lee
fa981b8028 update it 2018-03-04 23:34:40 +09:00
Sukchan Lee
0628b76296 update it 2018-03-04 23:23:35 +09:00
Sukchan Lee
0d8928ff05 re-add s1ap 2018-03-04 16:30:03 +09:00
Sukchan Lee
da04290a62 encoder/decoder sample code is added 2018-03-04 13:35:06 +09:00
Sukchan Lee
6f9e45a332 Modify the security capability length (#27)
If octet 5 is included, then also octet 6 shall be included and octet 7
may be included.
2018-03-03 14:18:33 +09:00
Sukchan Lee
9357381839 Fix the bug of secuirty capability in security command (#27) 2018-03-03 14:10:24 +09:00
Sukchan Lee
8ab602e6d2 update it 2018-02-27 18:35:57 +09:00
Sukchan Lee
84e7f50b3f update test code (#22) 2018-02-27 12:01:01 +09:00
Sukchan Lee
2bc92c5ac8 fix the indentation
* VIM
set sw=4
set ts=4
set expandtab

* Limited with 80 Column
2018-02-27 11:59:08 +09:00
Sukchan Lee
2429a4e363 fix the presentmask and change default configuration (#22) 2018-02-27 11:56:10 +09:00
Sukchan Lee
dab0f3ef3a Merge pull request #22 from medeiros405/master 2018-02-27 11:08:55 +09:00
medeiros405
144548f4c0 src/mme/emm_handler.c 2018-02-26 13:48:26 -03:00
medeiros405
1f44efbc3d src/mme/emm_handler.c 2018-02-26 13:46:28 -03:00
Sukchan Lee
6df88862f9 mistypo 2018-02-26 22:36:51 +09:00
Sukchan Lee
f49a66dfc5 script update 2018-02-26 14:59:51 +09:00
Sukchan Lee
7e8718e346 update it 2018-02-26 11:57:49 +09:00
medeiros405
02712a38e6 src/mme/emm_handler.c
src/mme/mme_context.c
src/mme/mme_context.h
support/config/mme.conf.in
2018-02-25 18:33:36 -03:00
Sukchan Lee
888cbfbdb8 S1-reset encoder/decoder is added 2018-02-22 22:52:59 +09:00
Sukchan Lee
cdf7fb94bf S1-Setup failure is added 2018-02-22 22:23:16 +09:00
Sukchan Lee
e4989c7aa3 fix the README.md 2018-02-22 11:27:38 +09:00
Sukchan Lee
5365893c34 Release 0.3.4 2018-02-22 02:17:11 +00:00
Sukchan Lee
3c65414135 Release 0.3.4 2018-02-22 02:14:31 +00:00
Sukchan Lee
80bcfcf646 Release 0.3.4 2018-02-22 02:10:52 +00:00
Sukchan Lee
7e460fbcb4 dput is added 2018-02-22 10:47:21 +09:00
Sukchan Lee
62fe796d41 fix check.sh 2018-02-22 09:51:38 +09:00
Sukchan Lee
0104543f7d add manpage for dev 2018-02-22 00:48:42 +09:00
Sukchan Lee
39c30cb908 fix it 2018-02-22 00:32:11 +09:00
Sukchan Lee
c09b272e53 fix the base image for docker-dev 2018-02-22 00:30:28 +09:00
Sukchan Lee
92d8bde84a change dependency docker-dev 2018-02-22 00:18:31 +09:00
Sukchan Lee
e2bb5706fa update Dockerfile 2018-02-21 23:55:44 +09:00
Sukchan Lee
d74afc5bc7 for old version gcc compiler, we fix the size of child_desc in TLV message library 2018-02-21 14:48:41 +00:00
Sukchan Lee
c8a65b6b18 add other OS for docker 2018-02-21 23:20:48 +09:00
Sukchan Lee
f5582c97b5 NULL-pointer sgw_ue context is accessed (#18) 2018-02-21 17:29:47 +09:00
Sukchan Lee
b8cc130bf5 update check.sh 2018-02-21 14:35:46 +09:00
Sukchan Lee
12d65e92d1 re-arrange package between base and dev 2018-02-21 14:11:41 +09:00
Sukchan Lee
2904284405 Dockerfile cache invalidating for nextepc build 2018-02-21 13:16:11 +09:00
Sukchan Lee
f1b0cd5748 Merge branch 'master' of https://github.com/acetcom/nextepc 2018-02-21 12:35:19 +09:00
Sukchan Lee
91c9586561 update docker configuration 2018-02-21 12:35:05 +09:00
Sukchan Lee
05cfcf4cc3 Override configuration if DB_URI environment variable is existed 2018-02-21 03:25:48 +00:00
Sukchan Lee
c827701824 update it 2018-02-20 23:57:06 +09:00
Sukchan Lee
5fcc7e2ee6 runtime is testedwq 2018-02-20 23:49:24 +09:00
Sukchan Lee
bd1dff2dc5 missing files 2018-02-20 22:47:56 +09:00
Sukchan Lee
f1ad0b11ae change network configuration for docker 2018-02-20 22:29:46 +09:00
Sukchan Lee
9a86d4cb7c Initial Proposal for Docker (#16) 2018-02-20 19:36:34 +09:00
Sukchan Lee
38cccb8a85 move new directory 2018-02-17 15:15:17 +09:00
Sukchan Lee
2d72eaa24d Docker for MongoDB and WebUI recommended by Issue (#16) 2018-02-17 14:47:06 +09:00
Sukchan Lee
f915820f3a network script update for linux 2018-02-15 16:59:27 +09:00
Sukchan Lee
1009ac5e47 add masquerading for Mac OS X 2018-02-14 20:09:04 +09:00
Sukchan Lee
536138457e fix the warning for Mac OS X 2018-02-14 10:22:36 +09:00
Sukchan Lee
730053cef4 update README.md 2018-02-14 10:07:20 +09:00
Sukchan Lee
4a01623d6e update README.md 2018-02-14 00:34:14 +09:00
Sukchan Lee
0cf0e73bf9 update README.md 2018-02-14 00:33:18 +09:00
Sukchan Lee
87e7992450 update docker README.md 2018-02-14 00:29:22 +09:00
Sukchan Lee
75aaf632b8 Dockerfile updated 2018-02-13 23:48:44 +09:00
Sukchan Lee
5c3c99acda update Dockerfile for including Web User Interface 2018-02-13 17:16:17 +09:00
Sukchan Lee
081170a86e add template Dockerfile for NextEPC 2018-02-13 16:15:11 +09:00
Sukchan Lee
c9b4a20223 Release v0.3.3 2018-02-13 04:50:34 +00:00
Sukchan Lee
926e73e87d We use deb-systemd-invoke instead of systemdctl (#16) 2018-02-13 03:38:33 +00:00
Sukchan Lee
61f796d341 update README.md 2018-02-12 22:11:27 +09:00
Sukchan Lee
03715c84be update README.md 2018-02-12 21:47:36 +09:00
Sukchan Lee
72d28286ea update README.md 2018-02-12 21:23:12 +09:00
Sukchan Lee
c2d68cf4b6 update it 2018-02-12 16:43:05 +09:00
Sukchan Lee
e99f6c7789 update README 2018-02-12 08:48:05 +09:00
Sukchan Lee
340b3cb69c Release v0.3.3 Update 2018-02-11 16:10:22 +00:00
Sukchan Lee
5d8231e6c2 Relase v0.3.3 2018-02-11 23:43:55 +09:00
Sukchan Lee
1e5313c230 fix the compile error in CentOS 2018-02-11 12:07:09 +00:00
Sukchan Lee
d488bc3ed7 fix the conflict between PDN disconnect and Detach Request 2018-02-10 23:59:03 +09:00
Sukchan Lee
0de9185545 change debug level 2018-02-10 17:08:51 +09:00
Sukchan Lee
9563e49f48 update nextepc-pgwd.service for systemd-networkd (#16) 2018-02-10 06:53:38 +00:00
Sukchan Lee
881196cde2 Debian package update for docker issue (#16)
* Previously, pgwtun is setup with ifupdown package.
* Now, we'll use the systemd-networkd.
2018-02-10 11:15:39 +09:00
Sukchan Lee
c096cce571 update print-out 2018-02-09 23:14:30 +09:00
Sukchan Lee
3c33206dee update comment 2018-02-09 16:43:28 +09:00
Sukchan Lee
382c52a481 clear sgw s1u path if delete session response is received 2018-02-09 16:26:55 +09:00
Sukchan Lee
f904b63053 Authentication failure should be handled based on EMM_CAUSE(#17)
* Synch failure(EMM_CAUSE:21)
  - Re-authorization. Send authentication request again.

* MAC failure(EMM_CAUSE:20)
  - Send Authentication Reject
  - Send UE Context Release Command

* Non-EPS authentication failure(EMM_CAUSE:26)
  - Send Authentication Reject
  - Send UE Context Release Command

* Others
  - Send Authentication Reject
  - Send UE Context Release Command
2018-02-07 14:12:40 +09:00
Sukchan Lee
7769ded65a remove installcheck 2018-02-06 03:45:08 +00:00
Sukchan Lee
0170166b6b update docker manual 2018-02-06 12:32:39 +09:00
Sukchan Lee
935e81f9c9 test directory re-factor 2018-02-06 12:18:11 +09:00
Sukchan Lee
9fbcb45171 testsuite is added. (refer to libosmocom) 2018-02-06 11:59:49 +09:00
Sukchan Lee
c9596d82f7 add cleanfiles 2018-02-05 14:29:13 +00:00
Sukchan Lee
598b711c01 make check is added. 2018-02-05 23:21:37 +09:00
Sukchan Lee
f9096d55f5 for make check, sample configuration is added 2018-02-05 22:45:14 +09:00
Sukchan Lee
0e87056e2e share common files for test programs 2018-02-05 20:57:06 +09:00
Sukchan Lee
ad10c84ffe volte test configuration is updated 2018-02-05 17:26:20 +09:00
Sukchan Lee
7b99cc7d7c Changes default IP configuration (#14)
* NextEPC will not use 127.0.0.1 address for Diameter and GTP-U

* MME
  S1AP: Auto-Detect
  GTP-C: Auto-Detect
  DIAMETER: 127.0.0.2

* SGW
  GTP-C: 127.0.0.2
  GTP-U: Auto-Detect

* PGW
  GTP-C: Both 127.0.0.3 and [::1]
  GTP-U: Both 127.0.0.3 and [::1]
  DIAMETER: 127.0.0.3

* HSS
  DIAMETER: 127.0.0.4

* PCRF
  DIAMETER: 127.0.0.5
2018-02-05 08:08:41 +00:00
Sukchan Lee
75cc9bbb47 update bearer context status in tracking area update 2018-02-04 23:48:49 +09:00
Sukchan Lee
3a57990cbc T3402 is redundant. Remove it in Attach/TAU Accept 2018-02-04 23:41:44 +09:00
Sukchan Lee
14ef938fb9 SGW sends End Marker if GTP Node changes. Previously, ULI's cell ID 2018-02-04 23:15:20 +09:00
Sukchan Lee
5c1a3d54e3 rename it 2018-02-04 17:05:30 +09:00
Sukchan Lee
2defa5c868 add simualtor for the active flag 2018-02-04 16:58:56 +09:00
Sukchan Lee
4371084af4 Tracking Area Update with considering Initial UE message and active flag 2018-02-04 16:01:09 +09:00
Sukchan Lee
c0d4f25717 tracking area update request's active flag 2018-02-04 13:12:26 +09:00
Sukchan Lee
aacaa83eea rollback paging check routine 2018-02-03 23:44:04 +09:00
Sukchan Lee
de04e1de45 introduce ECM_IDLE and ECM_CONNECTED 2018-02-03 23:23:50 +09:00
Sukchan Lee
95551de5f9 tracking area update is handling based on UE ECM status 2018-02-03 22:55:05 +09:00
Sukchan Lee
bb4339de2a rename it 2018-02-03 18:29:32 +09:00
Sukchan Lee
831b3e8985 Error Indication is added 2018-02-03 11:48:15 +09:00
Sukchan Lee
f37b3cbfd3 rollback it 2018-02-03 09:18:22 +09:00
Sukchan Lee
23998862f2 update it 2018-02-03 08:49:46 +09:00
Sukchan Lee
e72d79a328 rollback it 2018-02-03 04:18:31 +09:00
Sukchan Lee
66d16ae1bb update it 2018-02-03 03:44:14 +09:00
Sukchan Lee
00178ff65e fix the bug in X2 handover TAI/E_CGI 2018-02-03 02:08:43 +09:00
Sukchan Lee
582c771605 fix the bug : TAU after S1 Handover 2018-02-03 02:00:38 +09:00
Sukchan Lee
52a1e05f41 change warn to trace level 5 2018-02-02 23:36:03 +09:00
Sukchan Lee
c293bef05a add IP address log if No TEID 2018-02-02 21:29:02 +09:00
Sukchan Lee
ebddb2ad9f rename it 2018-02-02 21:09:37 +09:00
Sukchan Lee
7c2dd5e462 add simulator for S1 holding timer 2018-02-02 20:32:13 +09:00
Sukchan Lee
f61233e627 update it 2018-02-02 19:59:26 +09:00
Sukchan Lee
b97597ae7c change S1 release scheme with holding timer(30sec) 2018-02-02 19:37:36 +09:00
Sukchan Lee
57f3baa273 UE-initiated detach_request is handled in every EMM-state 2018-02-02 15:59:21 +09:00
Sukchan Lee
d944bca038 context(tai, e_cgi) transfer during S1-handover 2018-02-02 15:30:25 +09:00
Sukchan Lee
857a250e4f add to trace for testing tracking area update 2018-02-02 13:46:49 +09:00
Sukchan Lee
34986be707 rollback implicit S1 release 2018-02-02 04:26:01 +09:00
Sukchan Lee
cb7132a2fa fix the bug 2018-02-02 04:20:02 +09:00
Sukchan Lee
5397cfd2d8 Send UE Context Release Command instead of Implicit S1 release 2018-02-02 02:48:55 +09:00
Sukchan Lee
0cd0221b29 rollback conflict between service request and downlink notification 2018-02-01 23:21:20 +09:00
Sukchan Lee
8bd186adad tracking area update accept with ue context release command 2018-02-01 23:06:35 +09:00
Sukchan Lee
4e5d156a6a ECM-IDLE/CONNECTED state is added in MME Context Library 2018-02-01 22:48:59 +09:00
Sukchan Lee
c9e44579d8 refine code 2018-02-01 21:38:59 +09:00
Sukchan Lee
4648dc05d5 log update 2018-02-01 16:54:52 +09:00
Sukchan Lee
ca79c05fe6 Update TAU Accept & Initial Context Setup Failure 2018-02-01 16:39:42 +09:00
Sukchan Lee
b040214364 add U-plane TEID trace log 2018-02-01 14:07:01 +09:00
Sukchan Lee
c3afd65ff3 fix the bug for FSM library 2018-02-01 11:56:01 +09:00
Sukchan Lee
f4baa62209 explicit S1 release for initial contexgt setup failure 2018-01-31 06:24:23 +00:00
Sukchan Lee
03cf945f95 fix the memroy leak in SGW Downlink Notification Ack 2018-01-31 15:01:13 +09:00
Sukchan Lee
01d7f157ff modify release access bearer regardless ue context release request's cause 2018-01-31 12:54:59 +09:00
Sukchan Lee
e49e1d2331 Use explict S1 release for initial context setup failure 2018-01-30 22:14:12 +09:00
Sukchan Lee
67393d0160 Implicit S1 Release immediately if Older S1 context is found. 2018-01-30 22:10:28 +09:00
Sukchan Lee
7ca9ead4b9 refine code 2018-01-30 21:57:19 +09:00
Sukchan Lee
3f7c3d3041 Prevent GUTI re-allocation for every attach_request 2018-01-30 07:25:42 +09:00
Sukchan Lee
cf6df20ad7 refine code 2018-01-29 13:44:25 +00:00
Sukchan Lee
b77c9b8ff6 refine code 2018-01-29 22:38:53 +09:00
Sukchan Lee
795ecc8cf8 Implicit S1 Release 2018-01-29 19:10:54 +09:00
Sukchan Lee
b704e94efa fix the memory leak t3413 paging timer in MME_UE Context 2018-01-29 16:47:07 +09:00
Sukchan Lee
ae6e747e52 ECM_IDLE/CONNECTED is introduced 2018-01-29 14:48:51 +09:00
Sukchan Lee
60cfbed747 Update state machine 2018-01-28 22:08:53 +09:00
Sukchan Lee
597fcfbad9 rollback implict S1 release 2018-01-28 16:13:48 +09:00
Sukchan Lee
762431cb6f GUTI is suppressed in Attach accept if GUTI is not changed. 2018-01-28 15:32:45 +09:00
Sukchan Lee
21a130bc16 Implicitly S1 release without sending UE context release command 2018-01-28 15:08:52 +09:00
Sukchan Lee
5774aeb62d Change Cause value in UE Context Release Command 2018-01-28 14:11:17 +09:00
Sukchan Lee
7b2355a40f MME_UE Context is not deleted even thought Detach Request(switch-off case) 2018-01-28 13:50:21 +09:00
Sukchan Lee
28237ea6af clean security context if KSI is INVALID(7) 2018-01-26 09:08:50 +09:00
Sukchan Lee
09969e859d update log 2018-01-26 07:10:41 +09:00
Sukchan Lee
9451928786 remove INVALID ASSERT in SGW 2018-01-26 06:52:30 +09:00
Sukchan Lee
c6bfed6628 Debian Release 0.3.2 2018-01-24 08:12:43 +00:00
Sukchan Lee
20efdd5639 update the GTP TLV trace 2018-01-24 14:17:24 +09:00
Sukchan Lee
dfb9755295 update data plane trace 2018-01-24 02:59:23 +00:00
Sukchan Lee
6272d170e0 Merge branch 'master' of https://github.com/acetcom/nextepc 2018-01-24 02:55:14 +00:00
Sukchan Lee
e31976e505 fix the linux compile error 2018-01-24 02:54:56 +00:00
Sukchan Lee
4c98dae79e fix the bug indirect tunnel 2018-01-24 11:54:04 +09:00
Sukchan Lee
94145fec62 fix the bug for finding indirect tunnel 2018-01-24 11:32:46 +09:00
Sukchan Lee
bba98cf066 s1ap_encoder/s1ap_decoder module use d_trace() instead of printf() 2018-01-24 10:17:50 +09:00
Sukchan Lee
9503c8efdc chage debug buffer size to HUGE_STRING_LEN(8192) for avoiding buffer overflow 2018-01-24 10:08:59 +09:00
Sukchan Lee
f5f4e42be9 update ATTACH_ACCEPT message for solving the problem of EMM_STATUS 2018-01-24 00:03:44 +09:00
Sukchan Lee
afafce6760 update gitignore 2018-01-23 20:20:19 +09:00
Sukchan Lee
49cfb51a65 fix the open-ims test configuration 2018-01-23 17:54:25 +09:00
Sukchan Lee
02a11b6c50 Oops! check the trace level 2018-01-23 08:52:10 +00:00
Sukchan Lee
859322cb22 fix the freediameter logger from d_trace() to printf() 2018-01-23 08:49:33 +00:00
Sukchan Lee
b1c61cfcbf state name changes detached/attached -> de_registered/registered 2018-01-23 17:18:18 +09:00
Sukchan Lee
ed92c30b26 adjust trace_level 2018-01-23 17:11:21 +09:00
Sukchan Lee
610292fb5c dp log added 2018-01-23 16:48:40 +09:00
Sukchan Lee
66d71924ce update trace level 2018-01-23 16:10:46 +09:00
Sukchan Lee
b37a74416a trace name gtp -> gtpv2, others -> app 2018-01-23 16:02:35 +09:00
Sukchan Lee
35a95fd4ac update trace level 2018-01-23 15:38:07 +09:00
Sukchan Lee
d66e25dda3 refine tun error log 2018-01-23 14:36:52 +09:00
Sukchan Lee
6850e3b2a3 update log 2018-01-22 15:12:36 +00:00
Sukchan Lee
225e1ba07f refine GTP/Diameter Log 2018-01-23 00:00:57 +09:00
Sukchan Lee
67870af84f update trace log for S1AP/NAS 2018-01-22 23:14:20 +09:00
Sukchan Lee
17cbd61552 add emm_state_exception if identity response cannot find IMSI 2018-01-22 17:08:53 +09:00
Sukchan Lee
ebd8d2f571 update state machin 2018-01-22 16:53:47 +09:00
Sukchan Lee
7d43bd870e refine attached/detached state handler 2018-01-22 16:35:12 +09:00
Sukchan Lee
f94553bc8a update state machine 2018-01-22 12:24:18 +09:00
Sukchan Lee
6e6eb7a355 refine code 2018-01-22 11:40:26 +09:00
Sukchan Lee
b678d9e9a2 change the log level for conflict M-TMSI 2018-01-21 22:46:48 +09:00
Sukchan Lee
4c8e2add2f fix the bug M-TMSI generator 2018-01-21 22:36:49 +09:00
Sukchan Lee
8557d50341 rename hss_kdf -> hss_auc 2018-01-21 20:46:02 +09:00
Sukchan Lee
e785d4ca4e refine S1ap_Cause related source code 2018-01-21 20:31:28 +09:00
Sukchan Lee
32d62805df changes trace level 2018-01-21 17:40:06 +09:00
Sukchan Lee
4eb314d781 In emm_state_attached state, if NAS MAC is failed, service reject is sent out 2018-01-21 17:36:59 +09:00
Sukchan Lee
1d947c5698 M-TMSI is generated by Random Number for protecting security attach 2018-01-21 16:53:39 +09:00
Sukchan Lee
05f631f0ac change service_request test packet 2018-01-21 15:44:30 +09:00
Sukchan Lee
9b9bfdc0b0 add head logger for indicating configuration file path 2018-01-21 11:21:56 +09:00
Sukchan Lee
f93d367eee update EMM state machine 2018-01-20 15:09:30 +09:00
Sukchan Lee
6bcd72cf45 update state machine 2018-01-20 12:42:58 +09:00
Sukchan Lee
2a6102d207 fix the bug 2018-01-20 12:16:08 +09:00
Sukchan Lee
734ac953a7 Oops! remove comment out 2018-01-20 09:57:24 +09:00
Sukchan Lee
56dd6b6a28 fix the memory leak when SGW cannot find tunnel 2018-01-20 09:35:03 +09:00
Sukchan Lee
3be652701e update EMM state machine 2018-01-20 08:52:59 +09:00
Sukchan Lee
862571c8ed rollback state machine 2018-01-20 04:29:58 +09:00
Sukchan Lee
907c3f2f3c rollback previous commit 2018-01-20 04:07:20 +09:00
Sukchan Lee
baf273c06e add simulator for verifying NAS MAC 2018-01-20 03:11:20 +09:00
Sukchan Lee
cb50821aa8 if TAU_REQUEST is received, update keNB. 2018-01-19 22:21:06 +09:00
Sukchan Lee
1830b0bc75 add authentication failure exception 2018-01-19 17:43:46 +09:00
Sukchan Lee
d02763dde5 security mode reject is added 2018-01-19 17:30:18 +09:00
Sukchan Lee
ee0d7fe7d8 add error handling if ue context release request is radio network 2018-01-19 17:00:37 +09:00
Sukchan Lee
e4c189fec2 if TAU_REJECT or SERVICE_REJECT, MME UE Context is removed. 2018-01-19 16:29:21 +09:00
Sukchan Lee
2701add779 if EMM_STATUS is received, EMM state will be recovered to an initial state 2018-01-19 15:37:25 +09:00
Sukchan Lee
9b8eef2545 rollback previous commit 2018-01-19 14:03:27 +09:00
Sukchan Lee
52c6504c65 for test..disable NAS MAC check 2018-01-19 04:49:41 +09:00
Sukchan Lee
f35aa2178f fix the abort-cause value 2018-01-19 01:32:01 +09:00
Sukchan Lee
46f85d9fc8 Volte QoS is basically derived by IMS instead of EPC.
If the QoS informaton is provided from IMS, we'll use WEBUI QoS value
2018-01-19 01:23:13 +09:00
Sukchan Lee
131babeddc Turn off IPv6 in default setting. But UE network can support both IPv4 and IPv6 2018-01-18 10:21:13 +09:00
Sukchan Lee
6acdff21bb fix the bug for initial context setup failiure 2018-01-18 10:04:55 +09:00
Sukchan Lee
e0504dcf12 check enb_ue context before paging message is sent out 2018-01-18 08:36:56 +09:00
Sukchan Lee
95708a6ce4 fix the memory leak 2018-01-18 08:03:37 +09:00
Sukchan Lee
c9b4a1023b add missing files 2018-01-17 14:13:19 +00:00
Sukchan Lee
8025f10586 diameter log level is fixed 2018-01-17 23:08:20 +09:00
Sukchan Lee
e2f1872ea7 loglevel is adjusted 2018-01-17 22:55:52 +09:00
Sukchan Lee
8ae6f82aee fix linux compile error 2018-01-17 13:37:11 +00:00
Sukchan Lee
2620a4bd44 missing files 2018-01-17 22:35:35 +09:00
Sukchan Lee
3334afe891 refine it 2018-01-17 22:26:48 +09:00
Sukchan Lee
ab4c8f3e9e test code name changes from testrx to testvolte 2018-01-17 22:16:47 +09:00
Sukchan Lee
c56f75299c if WEBUI activates state dedicated bearer, modify bearer will be initiated 2018-01-17 21:47:59 +09:00
Sukchan Lee
8537aaee1b ASR/ASA is done 2018-01-17 21:22:30 +09:00
Sukchan Lee
d13b735d26 rx_sess_data is changed to list structure 2018-01-17 20:31:49 +09:00
Sukchan Lee
3662ad423e add simulation code for testing LTE disconnect during Voice Call 2018-01-17 17:17:22 +09:00
Sukchan Lee
d8f23bed1a mme_ue_remove() if detach request is switch-off 2018-01-17 16:53:49 +09:00
Sukchan Lee
131fb3ac79 modify dedicated bearer is done 2018-01-17 16:01:11 +09:00
Sukchan Lee
fffd654391 NAS modify bearer request/accept is done 2018-01-17 15:41:45 +09:00
Sukchan Lee
c12e76e32d Update Bearer Request is added in PGW 2018-01-17 13:49:08 +09:00
Sukchan Lee
f1e41050c3 re-factoring Gx/Rx diameter to apply modification 2018-01-17 12:41:57 +09:00
Sukchan Lee
4acc21093b add time information to the d_trace() 2018-01-17 10:09:06 +09:00
James Park
543753d0d1 Merge branch 'master' of https://github.com/acetcom/cellwire 2018-01-16 16:33:46 -08:00
James Park
2bb9446fa2 Fix bug: Wrong assignment of teid 2018-01-16 16:33:06 -08:00
Sukchan Lee
73a352657d print raw packet if S1AP decoder is failed 2018-01-17 08:52:58 +09:00
Sukchan Lee
47407e4855 deactivate dedicated bearer is done 2018-01-16 22:14:59 +09:00
Sukchan Lee
60b59babe0 deactivate bearer context request is added 2018-01-16 20:49:39 +09:00
Sukchan Lee
733f598f24 PCC Rule Remove is added in RAR/RAA 2018-01-16 16:11:30 +09:00
Sukchan Lee
521b18ea2a STR/STA is added 2018-01-15 17:25:14 +09:00
Sukchan Lee
5457e4042e suppport P-CSCF session state maintained mode 2018-01-15 14:57:39 +09:00
Sukchan Lee
4b0565c2e9 refine code 2018-01-15 12:52:05 +09:00
Sukchan Lee
d1303a60e4 refine code 2018-01-15 11:54:22 +09:00
Sukchan Lee
257d58d999 Add Detach Request Log 2018-01-14 23:02:16 +09:00
Sukchan Lee
059a71822c P-CSCF simulator is done(Only Call Initiating). Later we will implement 'Call Terminating' 2018-01-14 22:49:29 +09:00
Sukchan Lee
d77be669a9 update it 2018-01-14 22:02:37 +09:00
Sukchan Lee
c1848e03a1 update it 2018-01-14 21:31:16 +09:00
Sukchan Lee
ee770398c2 RAR/RAA is mostly done 2018-01-14 19:54:50 +09:00
Sukchan Lee
11b4463ce4 continue to implement RAR 2018-01-14 18:15:38 +09:00
Sukchan Lee
4b1c4b598b Gx/Rx interface is changed 2018-01-14 13:51:35 +09:00
Sukchan Lee
2884430c57 remove Specific-Action/Abort-Cause in Gx message 2018-01-14 13:00:41 +09:00
Sukchan Lee
853913b31d fix the bug for initial context setup failure 2018-01-13 23:06:21 +09:00
Sukchan Lee
8c3d4ca0de core_free -> CORE_FREE. We need to know which function raise this
exception
2018-01-13 22:03:30 +09:00
Sukchan Lee
63562dd63a add log message 2018-01-13 21:19:43 +09:00
Sukchan Lee
4417578210 RS/RA bug is fixed.
RA dst IP address is dervied from RA's src IP address
RA prefix address is used subnet address instead of UE IPv6 address
2018-01-13 14:15:00 +09:00
Sukchan Lee
694c39c69e fix the bug related UE context release request(transport error) 2018-01-12 08:54:58 +09:00
Sukchan Lee
9675c3bf8c initiate GTP delete session request if EPC received initial context setup failure 2018-01-12 08:32:33 +09:00
Sukchan Lee
8753879a93 Oops! remove unneeded code 2018-01-12 08:29:25 +09:00
Sukchan Lee
f41559c55f fix the bug releated the handler for UE context release request(transport:1) 2018-01-12 08:25:30 +09:00
Sukchan Lee
7e2488035e update .gitignore 2018-01-11 23:25:36 +09:00
Sukchan Lee
b424213768 add ErrorIndication(Proceduer ID : 15, initiating message) decoder 2018-01-11 22:33:36 +09:00
Sukchan Lee
3503fda431 clarify attach/tau/service reject interface 2018-01-11 22:25:35 +09:00
Sukchan Lee
47dc5eec38 change UE context release command/complete interface.
- Before : Based on EMM state, we decided call mme_ue_remove() or not
- After : Explictly, user should set about calling the mme_ue_remove().
2018-01-11 22:12:48 +09:00
Sukchan Lee
1498f6c015 GTP ECHO-REQ/RSP log level chaged to 5 2018-01-11 14:39:12 +09:00
Sukchan Lee
7a771173bc refine log 2018-01-11 14:06:02 +09:00
Sukchan Lee
9ec0867941 log refine for GTP 2018-01-11 13:42:33 +09:00
Sukchan Lee
f360d20f01 PCRF(RAR) message is done 2018-01-10 23:41:56 +09:00
Sukchan Lee
2059341d4f Diameter Gx Code Refine 2018-01-10 22:09:08 +09:00
Sukchan Lee
58f501d397 For IMS, WebUI behavior is changed.
If Flow is not added in PCC_Rule, this PCC_Rule will not be installed in PGW.
In this case, AF function will give the Flow Description.
If Rx(Media-Type) is set to "AUDIO" type, PCC_Rule(QCI=1) will be associated,
And then, the PCC_Rule will be installed in PGW
2018-01-10 21:44:23 +09:00
Sukchan Lee
95aaf2f8f1 AAR is done 2018-01-10 19:56:10 +09:00
Sukchan Lee
e24856eb0e GX RAR/RAA(PGW-PCRF) is added 2018-01-10 16:06:19 +09:00
Sukchan Lee
e7c14242c7 Merge branch 'master' of https://github.com/acetcom/nextepc 2018-01-10 14:15:17 +09:00
Sukchan Lee
0a490cf819 MME/HSS diameter code refine 2018-01-10 14:15:00 +09:00
Sukchan Lee
b25082cb06 PGW/PCRF diameter code refine 2018-01-10 12:45:58 +09:00
James Park
81a957172b Merge branch 'master' of https://github.com/acetcom/cellwire 2018-01-09 18:09:08 -08:00
James Park
a5057c1488 Change the number of cluster 2018-01-09 18:08:33 -08:00
Sukchan Lee
60b82c75e6 fix linux compile error 2018-01-09 14:11:21 +00:00
Sukchan Lee
1f0452d37d add RAR handler in PGW 2018-01-09 23:06:48 +09:00
Sukchan Lee
e9da026495 PCRF RX/GX session association 2018-01-09 22:53:09 +09:00
Sukchan Lee
b99c266533 P-CSCF simulator adds Frame-IP-Address and Frame-IPv6-Prefix.
This is used to test PCRF Rx/Gx dimaeter session assoication
2018-01-09 21:25:52 +09:00
Sukchan Lee
b80b295af4 if eNB initiated UE Context Release Request with Transport Error, MME sends NAS UE Context Release Command with NAS detach cause 2018-01-09 18:02:56 +09:00
Sukchan Lee
a15b60024b ignore delete session in UEContextReleaseComplete
if MME re-started, there is no MME_UE context. In this case, we ignore
delete sessoin process in UEContextReleaseComplete
2018-01-09 17:38:06 +09:00
Sukchan Lee
1a9ba2680b change assert to warning when PGW cannot find subnet 2018-01-09 17:04:10 +09:00
Sukchan Lee
06a4a09d08 gtp code refine 2018-01-09 16:37:05 +09:00
Sukchan Lee
20f45a455e name changes for gtp_connect_to_node to gtp_add_node_with_teid 2018-01-09 15:25:49 +09:00
James Park
2406bf8d19 Fix bug : wrong assigment of gtp length in header 2018-01-08 20:14:59 -08:00
Sukchan Lee
13a06479a9 add hash for associating Gx/Rx interface by
Framed-IP-Address/Framed-IPv6-Address
2018-01-08 22:42:44 +09:00
Sukchan Lee
38e245d467 PCRF session state is added 2018-01-08 21:20:19 +09:00
Sukchan Lee
e4397176cf support pcrf gx session maintained mode 2018-01-08 20:09:13 +09:00
Sukchan Lee
779d5e88d0 PCRF freeDiameter module disunite to Gx module and Rx module 2018-01-08 18:34:51 +09:00
Sukchan Lee
e95dcf192d refine pgw freeDiameter code 2018-01-08 09:54:19 +09:00
Sukchan Lee
69a880b5fe support session state maintained mode in PGW freeDiameter 2018-01-07 21:56:44 +09:00
Sukchan Lee
64268232b1 Session-Id diameter encoder is added 2018-01-07 21:29:53 +09:00
Sukchan Lee
5ca708deab fix the bug for diameter session memory management 2018-01-07 15:26:17 +09:00
Sukchan Lee
7e63ab488d fix the gcc 7.2.0 compile warning 2018-01-06 22:50:56 +09:00
Sukchan Lee
229a56f85d for debugging subnet assert, add packet log in this situation 2018-01-06 14:25:05 +09:00
Sukchan Lee
d2e54482c1 Update S1P ASN for GUMMEIType in InitialUEMessage 2018-01-06 12:36:47 +09:00
Sukchan Lee
5a96013bf8 Merge branch 'master' of https://github.com/acetcom/nextepc 2018-01-06 01:00:15 +00:00
Sukchan Lee
8e8d0c2978 add assert log 2018-01-06 00:59:42 +00:00
Jihoon Brandon Lee
a13f21b115 bugfix on length check of GTP echo 2018-01-05 12:44:43 -07:00
Sukchan Lee
09eceddd97 fix compile error in linux 2018-01-05 15:30:59 +00:00
Sukchan Lee
a630830f0c P-CSCF simualtor is mostly done 2018-01-06 00:23:26 +09:00
Sukchan Lee
cd45d6d2c5 remove AA-Request/Answer in PGW. All P-CSCF stuff is moving to testrx 2018-01-05 23:59:14 +09:00
Sukchan Lee
f717eeb3ae P-CSCF diameter module is added 2018-01-05 23:49:55 +09:00
Sukchan Lee
9e8ced5835 Apply new freeDiameter configuration to all other daemon(HSS, PGW, PCRF) 2018-01-05 23:31:30 +09:00
Sukchan Lee
f945b483e8 MME freeDiameter configuration is done 2018-01-05 23:03:41 +09:00
Sukchan Lee
b166adf3bd fix the memory leak in the fd_config 2018-01-05 22:46:02 +09:00
Sukchan Lee
9cca50b7c7 missing files 2018-01-05 17:01:28 +09:00
Sukchan Lee
add2145851 freeDiameter Config Re-factoring!
For P-CSCF simulation, it is not good if freeDiameter configuartion is
needed. As such, we merged this configuration is in the nextepc
configuration.
2018-01-05 16:25:02 +09:00
Sukchan Lee
65e1a8dbac fix the linux compile warning 2018-01-04 13:10:06 +00:00
Sukchan Lee
b0b7e9f167 add missing files 2018-01-04 22:08:32 +09:00
Sukchan Lee
9d14f5e89d fix the bug the unlimited loop.
if the system is not supported SCTP, mme daemon is to be unlimited loop.
2018-01-04 22:03:59 +09:00
Sukchan Lee
9675c47a10 improve testrx code 2018-01-04 21:22:21 +09:00
Sukchan Lee
627077247c Diameter Rx Test Simualtor is initially implemented. 2018-01-04 20:52:19 +09:00
Sukchan Lee
b8ef9e9e2a Header Refactoring 2018-01-04 20:38:22 +09:00
Sukchan Lee
fe1c368577 move 3gpp_test to core library 2018-01-04 18:02:56 +09:00
Sukchan Lee
1a3f5cf86e add AA Request/Answer Sample code 2018-01-04 12:57:00 +09:00
Sukchan Lee
560204ab46 Router Advertisement Destination IP address changes
from ff::1 to UE IP Address(e.g. cafe::2)
2018-01-04 08:51:07 +09:00
Sukchan Lee
e4bec187fd add Diameter Rx Interface (PCRF - P-CSCF) 2018-01-03 21:45:14 +09:00
Sukchan Lee
9544a79c2c P-CSCF IP address configuration is added in PGW 2018-01-03 15:29:48 +09:00
Sukchan Lee
81be4cca66 PGW dimaeter IP address is changed from 127.0.0.1 to 127.0.0.2
127.0.0.1:3868 could be used by other software. So, we will change the
IP address.
2018-01-03 09:28:23 +09:00
Sukchan Lee
4501a76d96 UE Time Zone is added in Create Session Request(GTP) and CCR(Gx)
I'm not sure where this value should be configured.
At this point, MME estimate UE Time Zone from MME's system.
From this, MME generates UE TIme Zone for Create Session Request.
PGW is just forward this value to the PCRF using CCR(Gx) Message.
2018-01-02 22:14:28 +09:00
Sukchan Lee
408ce293de if initial context setup failure is received, MME_UE context is deleted. 2018-01-02 18:30:17 +09:00
Sukchan Lee
18859c1203 if TAI list is not properly configured, MME sends Attach Reject or TAU
Rejct message.

Attach/TAU Reject contents
 - S1ap_CauseNas_unspecified
 - EMM_CAUSE_TRACKING_AREA_NOT_ALLOWED
 - ESM_CAUSE_PROTOCOL_ERROR_UNSPECIFIED if session is created.
2018-01-02 18:18:45 +09:00
Sukchan Lee
f40159ea2a relase 0.3.1 2017-12-31 22:20:39 +00:00
Sukchan Lee
8081ea3044 fix the bug 2017-12-20 13:16:16 +09:00
Sukchan Lee
c81e2beee6 fix the error for SCTP Kernel Extension on Mac OS X 10.11(El Capital) 2017-12-19 20:19:50 +09:00
Sukchan Lee
a864b36f44 Default APN is added 2017-12-19 17:05:54 +09:00
Sukchan Lee
0557be8ffd Merge branch 'master' of https://github.com/acetcom/nextepc 2017-12-18 20:57:47 +09:00
Sukchan Lee
7d3ec80f5d YAML version check is set to 0.1.4 2017-12-18 11:54:57 +00:00
Sukchan Lee
7a293e8d3a update manual 2017-12-18 20:47:01 +09:00
Sukchan Lee
72c9ae5d56 Merge branch 'ipv6' 2017-12-18 11:16:27 +00:00
Sukchan Lee
f71b2502ad update changelog 2017-12-18 11:15:41 +00:00
Sukchan Lee
e7207e74d2 Merge branch 'ipv6' 2017-12-18 19:37:05 +09:00
Sukchan Lee
385d73e17a IND + 1 from Spec 33.102 C.3.4 2017-12-18 18:21:54 +09:00
Sukchan Lee
d85f546de2 use zero amf in re-synch 2017-12-18 17:28:22 +09:00
Sukchan Lee
fdebe90f7c test scenario is added for debug re-synch failure 2017-12-18 17:10:44 +09:00
Sukchan Lee
65088e690d fix the reboot bug in package scenario 2017-12-18 16:02:28 +09:00
Sukchan Lee
48c5574819 Merge branch 'ipv6' of https://github.com/acetcom/nextepc into ipv6 2017-12-18 05:55:53 +00:00
Sukchan Lee
b52d1faa64 remove testepc in package build 2017-12-18 05:55:43 +00:00
Sukchan Lee
92cebbce2d package manual update 2017-12-18 14:24:44 +09:00
Sukchan Lee
996a0df756 fix the configuration file 2017-12-18 14:01:16 +09:00
Sukchan Lee
a3fbbf70cb debian package is updated 2017-12-18 13:27:56 +09:00
Sukchan Lee
466b15f5ad Web UI version to v0.3.0 2017-12-18 13:23:20 +09:00
Sukchan Lee
a39764cf50 README update 2017-12-18 13:21:10 +09:00
Sukchan Lee
0fab5ee3da ubuntu network configuration for ipv6 is added 2017-12-18 13:17:35 +09:00
Sukchan Lee
573d509919 Change LICENSE to GNU AGPL v3.0 2017-12-18 10:35:54 +09:00
Sukchan Lee
03f681ca05 configuration comment is updated 2017-12-18 09:26:29 +09:00
Sukchan Lee
649fd75b14 Authentication failure(Resynch failure) is added 2017-12-18 00:01:07 +09:00
Sukchan Lee
8f1df48a95 refine error log 2017-12-17 20:29:07 +09:00
Sukchan Lee
de09353e5d Merge branch 'ipv6' of http://github.com/acetcom/nextepc into ipv6 2017-12-17 10:02:34 +00:00
Sukchan Lee
487a4eb155 remove lock in select_loop dispatcher 2017-12-17 10:02:08 +00:00
Sukchan Lee
1131166988 remove sctp warning 2017-12-17 09:40:29 +00:00
Sukchan Lee
88f34c42be configuration is updated 2017-12-17 17:04:44 +09:00
Sukchan Lee
cdaf1c0468 router advertisement use link-local-address in source ip 2017-12-17 07:25:36 +00:00
Sukchan Lee
a102864428 Oops! update it 2017-12-18 00:54:29 +09:00
Sukchan Lee
a5cc4f7a43 update it 2017-12-18 00:50:10 +09:00
Sukchan Lee
73fb7e1c30 Merge branch 'ipv6' of https://github.com/acetcom/nextepc into ipv6 2017-12-18 00:48:34 +09:00
Sukchan Lee
fa6bb86e3d Merge branch 'ipv6' of https://github.com/acetcom/nextepc into ipv6 2017-12-17 20:23:41 +09:00
Sukchan Lee
8d3330cb79 multiple device is added 2017-12-17 06:36:50 +00:00
Sukchan Lee
60804c79d6 subnet is tested 2017-12-17 05:50:24 +00:00
Sukchan Lee
0cf2319b9c pgw dev/subnet context is added 2017-12-17 04:33:12 +00:00
Sukchan Lee
f0f5a5ce31 refine code 2017-12-17 11:22:12 +09:00
Sukchan Lee
0c3054652d refine code 2017-12-17 02:07:04 +00:00
Sukchan Lee
7ea5f3d910 Merge branch 'ipv6' of https://github.com/acetcom/nextepc into ipv6 2017-12-16 23:22:56 +09:00
Sukchan Lee
16080d9aa7 fix the header 2017-12-16 18:19:31 +09:00
Sukchan Lee
d7696f4fa6 fix the header type 2017-12-16 09:15:28 +00:00
Sukchan Lee
f38587595f SLAAC is added 2017-12-16 09:06:34 +00:00
Sukchan Lee
9d4afbba97 update test code 2017-12-16 05:53:30 +00:00
Sukchan Lee
04d3753f1c fix the jumbo frame bug 2017-12-16 13:26:34 +09:00
Sukchan Lee
ba5687de1b fix the bug ipv6 header decoder 2017-12-16 13:25:09 +09:00
Sukchan Lee
52b2125538 IPv6 Header Length calculation 2017-12-16 12:44:19 +09:00
Sukchan Lee
70286b3fd0 parameter.multicast, parameter.no_slaac is added 2017-12-16 09:24:27 +09:00
Sukchan Lee
7de0753b2c webui update 2017-12-15 23:17:13 +09:00
Sukchan Lee
d5381019c9 add the radvd.conf example 2017-12-15 22:53:01 +09:00
Sukchan Lee
7898fb4ae3 IPv6 Multicast is added 2017-12-15 22:42:52 +09:00
Sukchan Lee
b63f92fc20 Fix the bug for TFT IPv6 2017-12-15 12:51:51 +00:00
Sukchan Lee
d0530877c2 TFT rule for IPv6 is added 2017-12-15 20:53:53 +09:00
Sukchan Lee
08b88eba73 IPv6 Classification is initially updated 2017-12-15 09:13:14 +00:00
Sukchan Lee
cc762f3c00 WebUI PGW IP setting is added 2017-12-15 13:47:57 +09:00
Sukchan Lee
634de8c788 IPv6 DNS is added 2017-12-15 10:46:58 +09:00
Sukchan Lee
94c2c6ca7d message format creation bug is fixed related prefixlen 2017-12-15 09:41:54 +09:00
Sukchan Lee
ae57423eab IPv6 Loopback TUN done 2017-12-14 13:47:13 +00:00
Sukchan Lee
46c699143a IPv6 Control Plane done 2017-12-14 21:42:19 +09:00
Sukchan Lee
a74c9be2e6 PGW IP Pool bug is fixed 2017-12-14 18:30:12 +09:00
Sukchan Lee
c4b4a6850d default APN profile is changed from IPv4 only to IPv4 and IPv6 2017-12-14 17:14:33 +09:00
Sukchan Lee
bd9f1a74a4 IPv6 loopback is tested 2017-12-14 06:23:23 +00:00
Sukchan Lee
c5abd526d6 remove icmpv6 data 2017-12-14 06:07:06 +00:00
Sukchan Lee
e4f100055c ICMPv6 send done 2017-12-14 05:31:00 +00:00
Sukchan Lee
1864509cbb ICMPv6 is implemented. But kernel didn't send ping6 reply. Sigh! 2017-12-14 04:01:56 +00:00
Sukchan Lee
05c95dbfef default address is changed.
o PGW
 - GTPC : 127.0.0.1, [::1]
 - GTPU : 127.0.0.1, [::1]

o SGW
 - GTPC : 127.0.0.2
 - GTPU : auto-configured

o MME
 - S1AP : auto-configured
 - GTPC : auto-configured
 - Diameter : 127.0.0.3

o HSS
 - Diameter : 127.0.0.4

o PCRF
 - Diameter : 127.0.0.5
2017-12-14 01:46:35 +00:00
Sukchan Lee
79ec7d8bc0 default configuration is changed for packaging.
Even though nextepc can support link-local address, User may not want to
setup link-local address automatically. So we remove link-link address
in default configuration
2017-12-14 10:33:03 +09:00
Sukchan Lee
7e84bd1aaf Merge branch 'ipv6' of https://github.com/acetcom/nextepc into ipv6 2017-12-14 08:58:04 +09:00
Sukchan Lee
cb59525ca4 FreeBSD IPv6 TUN is not working. IPv6 IP/Rount Setting is all rollbacked 2017-12-14 07:26:32 +09:00
Sukchan Lee
9f05e5e10f update ip setting 2017-12-13 22:42:33 +09:00
Sukchan Lee
fc9b182e55 delete reduant routing table 2017-12-13 21:43:13 +09:00
Sukchan Lee
bd94d695be IPv6 setting done.. but IPv6 routining table update is not working. 2017-12-13 20:22:52 +09:00
Sukchan Lee
b7fb6c6117 temporal update 2017-12-13 16:07:12 +09:00
Sukchan Lee
b7479df01b default configuration is added 2017-12-13 14:11:44 +09:00
Sukchan Lee
6cd9e965a1 Tun IPv4 is done 2017-12-13 12:20:02 +09:00
Sukchan Lee
3fc397c9f2 pool allocation is changed with new method 2017-12-13 12:02:51 +09:00
Sukchan Lee
2f407de0d4 new pool structure is implemented for supporting IPv6 and APN 2017-12-13 11:14:00 +09:00
Sukchan Lee
54636e1843 IPv4 Pool done 2017-12-12 23:50:38 +09:00
Sukchan Lee
989de209d0 configuration is updated 2017-12-12 17:00:32 +09:00
Sukchan Lee
85f6bd6826 fix the warning for freeDiameter 2017-12-11 21:44:27 +09:00
Sukchan Lee
0347f05f9b rollback 2017-12-11 21:30:32 +09:00
Sukchan Lee
8902169320 Merge branch 'ipv6' of https://github.com/acetcom/nextepc into ipv6 2017-12-11 21:01:55 +09:00
Sukchan Lee
31dd8b0f8c add -Wno-format-truncate CFLAGS in freeDiameter library 2017-12-11 21:01:01 +09:00
Sukchan Lee
4336e50d54 update it 2017-12-11 11:37:44 +00:00
Sukchan Lee
95b2f5a951 minor update 2017-12-11 09:00:44 +00:00
Sukchan Lee
cb4893c36b Multiple TAI List done 2017-12-11 16:55:11 +09:00
Sukchan Lee
5551ecf6cd TAI List encoding done in Attach Accept 2017-12-11 16:08:17 +09:00
Sukchan Lee
521d7877b4 Multiple TAI list
Configuration Parer, Message Build is added
2017-12-11 00:01:02 +09:00
Sukchan Lee
178678c216 tai update 2017-12-09 23:25:29 +09:00
Sukchan Lee
ce801ee218 dev is added in the configuration 2017-12-09 23:07:19 +09:00
Sukchan Lee
8e1506a454 remove reduant code 2017-12-09 09:51:42 +00:00
Sukchan Lee
b04c7393f2 fix the bug 2017-12-09 09:50:12 +00:00
Sukchan Lee
15c3827ca9 improve test code for no_ipv4 flags 2017-12-09 18:21:22 +09:00
Sukchan Lee
b04d930f77 fix the test program bug in no_ipv4: true 2017-12-09 04:42:42 +00:00
Sukchan Lee
fc4a89b678 fix the memory lean when auto-detect interface case 2017-12-09 04:02:00 +00:00
Sukchan Lee
587598c8a9 Merge branch 'ipv6' of http://github.com/acetcom/nextepc into ipv6 2017-12-09 12:31:12 +09:00
Sukchan Lee
d70701361f refine test program for testing dual ipv4/v6 stack 2017-12-09 12:30:46 +09:00
Sukchan Lee
1f71dd9e6e missing 2017-12-09 02:47:21 +00:00
Sukchan Lee
969dc789df fix the testcode bug 2017-12-09 01:02:34 +09:00
Sukchan Lee
7108d8cd7f eNB S1U IPv6 test done 2017-12-09 00:58:16 +09:00
Sukchan Lee
e8e6836ab8 add initial context setup response encoder for generating IPv6 packet 2017-12-08 23:58:50 +09:00
Sukchan Lee
9b5234bd5f change link local address 2017-12-08 20:25:34 +09:00
Sukchan Lee
23c5e1040a Merge branch 'ipv6' of http://github.com/acetcom/nextepc into ipv6 2017-12-08 07:17:08 +00:00
Sukchan Lee
26fc43f6cb add mutex 2017-12-08 07:16:43 +00:00
Sukchan Lee
f4c4dbe55d ignore unknown message 2017-12-08 15:48:25 +09:00
Sukchan Lee
f069f19185 rollback 2017-12-08 06:30:15 +00:00
Sukchan Lee
e424e554d7 ipv6 address is changed 2017-12-08 15:05:50 +09:00
Sukchan Lee
bd424f3a08 trace update 2017-12-08 14:48:48 +09:00
Sukchan Lee
681a488ade Merge branch 'ipv6-mac' into ipv6 2017-12-08 05:36:03 +00:00
Sukchan Lee
a0599f7c2d S1AP MAC is done 2017-12-08 14:29:35 +09:00
Sukchan Lee
793b06ce33 Mac OS X S1AP improved 2017-12-08 12:43:35 +09:00
Sukchan Lee
06f8870796 remove logo 2017-12-07 13:20:55 +00:00
Sukchan Lee
126c8b4e11 fix the bug 2017-12-07 11:45:54 +00:00
Sukchan Lee
e4fd5ad70f GTP-U is tested 2017-12-07 20:11:22 +09:00
Sukchan Lee
44fed77ac4 all address format is changed to support IPv4/IPv6 dual stack 2017-12-07 17:40:15 +09:00
Sukchan Lee
ceda682290 intermediate 2017-12-07 17:23:45 +09:00
Sukchan Lee
3e05717180 transport layer convertor is added 2017-12-07 16:51:21 +09:00
Sukchan Lee
590630b839 ip_t is introduced 2017-12-07 15:04:35 +09:00
Sukchan Lee
6d412139ef update gtp_f_teid_t 2017-12-07 14:48:25 +09:00
Sukchan Lee
48cdb1e390 merge 3gpp library to core library 2017-12-07 14:37:58 +09:00
Sukchan Lee
717439cafa remove old_addr 2017-12-07 13:47:07 +09:00
Sukchan Lee
03a6bb7902 SGW/PGW GTP-U is added 2017-12-07 13:27:17 +09:00
Sukchan Lee
f8f18eb6f5 change gtp_send to core_sendto for echo reponse 2017-12-06 23:48:54 +09:00
Sukchan Lee
d2dcf4a877 GTP-U reomte done 2017-12-06 23:42:37 +09:00
Sukchan Lee
397f37cbb7 refine it 2017-12-06 20:52:32 +09:00
Sukchan Lee
35f35458c7 refine it 2017-12-06 20:44:30 +09:00
Sukchan Lee
82b84d760c refine it 2017-12-06 17:58:38 +09:00
Sukchan Lee
10becbb998 remove reduant variable in the context 2017-12-06 12:28:24 +09:00
Sukchan Lee
1c587edff5 no_ipv4, no_ipv6, prefer_ipv4 is tested 2017-12-06 12:13:56 +09:00
Sukchan Lee
9d3049de00 remove POINTTOPOINT interface in probe ip address 2017-12-05 14:30:09 +00:00
Sukchan Lee
5ebc0c0b0d add script 2017-12-05 22:51:50 +09:00
Sukchan Lee
4591209759 PGW GTP-C server is added 2017-12-05 21:34:17 +09:00
Sukchan Lee
a747f91b39 SGW GTP-C server is added 2017-12-05 21:11:36 +09:00
Sukchan Lee
1ab90bcef4 name changes 2017-12-05 20:42:14 +09:00
Sukchan Lee
a7690e395b refine it 2017-12-05 20:39:15 +09:00
Sukchan Lee
1a592f4d51 PGW GTP client is added 2017-12-05 14:56:47 +09:00
Sukchan Lee
c4c03da77f refine 2017-12-05 14:27:24 +09:00
Sukchan Lee
5663cd87c1 SGW GTP-C Client is added 2017-12-05 13:28:34 +09:00
Sukchan Lee
fe921e0c2f refine ipv6 2017-12-05 10:50:31 +09:00
Sukchan Lee
63fb6625b3 multiple addresss is added 2017-12-05 00:16:34 +09:00
Sukchan Lee
410133bf68 core_copyaddrinfo is introduced 2017-12-04 19:45:02 +09:00
Sukchan Lee
609aa4558f name changes 2017-12-03 22:25:31 +09:00
Sukchan Lee
97c7ad63b6 fix the PGW peer configuration bug 2017-12-03 21:34:39 +09:00
Sukchan Lee
a6d23971cd All MME GTP configuration is done 2017-12-03 17:00:11 +09:00
Sukchan Lee
17b6a013b8 parameter.prefer_ipv4 is implemented 2017-12-03 16:31:53 +09:00
Sukchan Lee
f86839eb7b configuration is changed from the discussions 2017-12-03 12:02:56 +09:00
Sukchan Lee
2c00f28b50 MME GTP Client is done 2017-12-02 15:49:03 +09:00
Sukchan Lee
ce5b65b4df gtp node is added 2017-12-02 14:17:32 +09:00
Sukchan Lee
3ae058dc63 gtp_node_t memset is added 2017-12-02 12:01:43 +09:00
Sukchan Lee
4a2604b52c name changes 2017-12-02 10:50:24 +09:00
Sukchan Lee
8add407715 fix the bug 2017-12-02 00:49:58 +09:00
Sukchan Lee
c300d2b99a MME GTPC Server done 2017-12-02 00:44:07 +09:00
Sukchan Lee
8287db900c update it 2017-12-01 22:04:51 +09:00
Sukchan Lee
7e0ce073fb mme gtp config is added 2017-12-01 21:47:15 +09:00
Sukchan Lee
b6b39c9dad socknode_filter_family is added 2017-12-01 20:27:56 +09:00
Sukchan Lee
71b58e7724 tcp/udp interface is changed 2017-12-01 17:39:28 +09:00
Sukchan Lee
d874ec5b48 remove type 2017-12-01 16:30:14 +09:00
Sukchan Lee
5cebb48bc6 socknode_getifaddrs_to_list is added 2017-12-01 15:56:56 +09:00
Sukchan Lee
c6623a277a fix the bug 2017-12-01 20:59:57 +09:00
Sukchan Lee
fee05d3764 socknode is added 2017-12-01 11:34:34 +09:00
Sukchan Lee
5a818eb8cd gtp_node is added 2017-11-30 20:13:15 +09:00
Sukchan Lee
f25626ee84 add log 2017-11-30 10:00:47 +09:00
Sukchan Lee
4baf7ece46 core_getifaddrs is introduced.
IP address of all interfaces is automatically retrived.
But, some interface will be discarded.
 - unspcified IP address
 - loopback address
 - IPv6 multicast
 - IPv6 link-local
 - IPv6 site-local
2017-11-29 22:04:56 +09:00
Sukchan Lee
6a90caaf8f update configuration 2017-11-29 20:46:13 +09:00
Sukchan Lee
c58d3d64f3 remove old json configuration file 2017-11-29 20:40:02 +09:00
Sukchan Lee
bb343cb8e4 YAML is updated 2017-11-29 15:17:35 +09:00
Sukchan Lee
d07b8f1e01 fix compile error 2017-11-29 05:58:26 +00:00
Sukchan Lee
dd15dacb18 YAML project is done 2017-11-29 14:44:14 +09:00
Sukchan Lee
e7d3d2f4da pgw is done 2017-11-29 14:24:55 +09:00
Sukchan Lee
60ac1dbfe6 hss/pcrf/sgw yaml is done 2017-11-29 09:51:34 +09:00
Sukchan Lee
17b360bc18 mme yaml config is done 2017-11-29 09:41:29 +09:00
Sukchan Lee
f1ac8b853b continue to parsing YAML 2017-11-29 00:53:21 +09:00
Sukchan Lee
e1e907bad7 gummei is finished with YAML 2017-11-29 00:32:46 +09:00
Sukchan Lee
c4b86f5ee9 array is added 2017-11-28 13:44:44 +09:00
Sukchan Lee
1528568bb8 update it 2017-11-27 23:53:47 +09:00
Sukchan Lee
0b78387d7f sample code. 2017-11-27 20:23:16 +09:00
Sukchan Lee
aaa57d3008 name changes 2017-11-27 15:45:33 +09:00
Sukchan Lee
f9fe704ccb downgrade yaml library from 0.1.7 to 0.1.6 2017-11-27 06:21:28 +00:00
Sukchan Lee
8b5ae91547 context uses YAML config. 2017-11-27 14:58:53 +09:00
Sukchan Lee
8e40a0eb64 initial code for moving configuration file format to the YAML 2017-11-27 10:35:08 +09:00
Sukchan Lee
4f722f2807 update it 2017-11-26 08:54:47 +09:00
Sukchan Lee
73fd1a8d99 update it 2017-11-25 14:52:02 +00:00
Sukchan Lee
82112f5678 update it 2017-11-25 14:47:33 +00:00
Sukchan Lee
7eceefb0f2 update it 2017-11-25 14:46:31 +00:00
Sukchan Lee
40c99a8c13 name changes done 2017-11-25 23:41:00 +09:00
Sukchan Lee
1e68d47927 name changes 2017-11-25 23:30:47 +09:00
Sukchan Lee
92fc35861f name changes 2017-11-25 23:28:34 +09:00
Sukchan Lee
7d7e9f154b Mac OS X IPv6 bug is fixed 2017-11-25 09:58:04 +09:00
Sukchan Lee
b34d8b931e configuration is updated 2017-11-24 16:08:26 +00:00
Sukchan Lee
61432a3070 mme->s1ap_sock is removed 2017-11-25 00:52:07 +09:00
Sukchan Lee
23fa36bc23 name changes 2017-11-24 15:04:45 +00:00
Sukchan Lee
cb63c2b1ea remove mme->s1ap_addr and mme->s1ap_port 2017-11-24 13:02:40 +00:00
Sukchan Lee
b2620caf26 set the hostname is NULL 2017-11-24 11:48:24 +00:00
Sukchan Lee
5a8d169ba1 remove AI_PASSIVE if hostname is NULL 2017-11-24 20:45:51 +09:00
Sukchan Lee
d49404ad2d loopback address is changes from 127.76.0.1 to 127.0.0.1 2017-11-25 04:16:18 +09:00
Sukchan Lee
2dcb56a41d Merge branch 'ipv6-addr' of http://github.com/acetcom/nextepc into ipv6-addr 2017-11-24 10:03:57 +00:00
Sukchan Lee
7025491846 add sock type in enb context 2017-11-24 10:03:48 +00:00
Sukchan Lee
62afe724ed Oops! mistake 2017-11-24 19:02:19 +09:00
Sukchan Lee
8fb2e0ba3b change default IP : 127.76.0.x -> 127.0.0.x 2017-11-24 13:52:22 +09:00
Sukchan Lee
6412231f29 all remove core_net.h 2017-11-24 11:49:37 +09:00
Sukchan Lee
685272fce8 improve usrsctp 2017-11-23 23:01:49 +09:00
Sukchan Lee
859d6427fd enb->addr is changes to pointer 2017-11-23 21:05:55 +09:00
Sukchan Lee
65fb2d280f enodeb's s1ap_addr types changes from c_uint32_t to c_sockaddr_t 2017-11-23 19:44:49 +09:00
Sukchan Lee
5d0bc98f8d Oops! mistake 2017-11-23 14:19:38 +09:00
Sukchan Lee
227cae5762 S1AP changes from net_lib to new socket library 2017-11-23 02:53:33 +00:00
Sukchan Lee
65b7008378 fix the tun driver bugs 2017-11-23 00:42:28 +09:00
Sukchan Lee
2f49e6024d gtp's net_sock_t to sock_id. GTP-U is failed 2017-11-23 00:19:28 +09:00
Sukchan Lee
b1023fac1d port to linux 2017-11-22 14:11:47 +00:00
Sukchan Lee
cfc352ea0d remove c_sa_len 2017-11-22 22:55:28 +09:00
Sukchan Lee
a27f294f74 TUN driver is added 2017-11-22 22:32:57 +09:00
Sukchan Lee
e44e613ff2 s1ap structure changes from net_sock_t to sock_id 2017-11-22 21:50:08 +09:00
Sukchan Lee
38a5ad3c68 remove port from gtp_node_t 2017-11-22 20:35:45 +09:00
Sukchan Lee
ce827fe733 change address type from c_uint32_t to c_sockaddr_t 2017-11-22 19:51:06 +09:00
Sukchan Lee
1928da0557 c_sa_len, c_sa_family, c_sa_port is introduced 2017-11-22 06:21:26 +00:00
Sukchan Lee
9c593a2757 Oops! mistake.. Use sock library for connect/bind socket function 2017-11-22 15:09:21 +09:00
Sukchan Lee
0fb47c499f fix the freebsd segmenation fault error 2017-11-22 01:56:51 +09:00
Sukchan Lee
5bf84f3b62 local_addr/remote_addr is added 2017-11-21 15:28:23 +09:00
Sukchan Lee
7151a98f41 GTP Peer Node finding method is changed.
Before : received IP address from UDP socket
After : Based on TEID. Initially, finding from Sender F-TEID
2017-11-21 14:52:07 +09:00
Sukchan Lee
21d2ca34f6 mac porting for new socket library 2017-11-19 22:07:44 +09:00
Sukchan Lee
5778fb6cbc core_inet_pton is added 2017-11-19 12:56:48 +00:00
Sukchan Lee
1ad25fbc9c s1setup test is done 2017-11-19 10:41:50 +00:00
Sukchan Lee
8a6b602836 New SCTP library is initially applied in test program 2017-11-19 08:31:18 +00:00
Sukchan Lee
ef3bb2e368 sctp_connect is added 2017-11-19 07:21:29 +00:00
Sukchan Lee
376f7c1304 udp connect function is added for bind & connect behavior 2017-11-19 08:27:20 +09:00
Sukchan Lee
1238f31178 update getaddrinfo if hostname is NULL 2017-11-19 07:57:41 +09:00
Sukchan Lee
f186ec93dd previous archi is failed in FreeBSD OS
re-architecture socket library
2017-11-18 12:55:44 +00:00
Sukchan Lee
2ba078277f fix the link 2017-11-18 14:58:25 +09:00
Sukchan Lee
89439ce79e fix the link 2017-11-18 14:57:05 +09:00
Sukchan Lee
19e18b9efb README update 2017-11-18 14:44:51 +09:00
Sukchan Lee
113cbd0e9e minor fix 2017-11-16 13:45:49 +00:00
Sukchan Lee
6db21f54c1 c_sockaddr_t is created for supporting both IPv4 and IPv6 address. 2017-11-16 12:49:07 +00:00
Sukchan Lee
a4d1bae083 SCTP library is initially added 2017-11-16 10:46:25 +00:00
Sukchan Lee
7c505f917a minor update 2017-11-16 01:51:05 +00:00
Sukchan Lee
e521d75e7a tcp/udp bug is fixed 2017-11-15 15:17:55 +00:00
Sukchan Lee
221fd81bb2 fix the linux compile error 2017-11-15 14:38:51 +00:00
Sukchan Lee
068d049a9f IPv6 project is started.
1. Remove thread lock in select loop.
2. Nonblocking will be used in select loop for good performance.
3. Connection mode for UDP socket & SCTP(SEQPACKET)

More test is needed.
2017-11-15 22:59:30 +09:00
Sukchan Lee
90a50d999d sleep is needed in test code 2017-11-10 02:31:32 +00:00
Sukchan Lee
12ae140185 reduant code 2017-11-10 11:23:55 +09:00
Sukchan Lee
f839fd93b7 Control Plane and Data Plane Thread is merged to One thread in SGW/PGW
- for protecting context, SGW/PGW is implemented with only one thread.
- In PGW, processing control plane could be delayed +10ms when diameter
thread sends message queue to the PGW control plane.
- In other case, all performance may be same with previous architecture.
2017-11-10 00:38:05 +00:00
Sukchan Lee
cd59df5011 just minor update 2017-11-09 14:56:03 +09:00
Sukchan Lee
11df912058 remove jsmn library.
jsmn library is very simple, but it is difficult to handle configuration
josn.
I changed json to libbson library. I think it is more maintainable.
2017-11-09 00:05:18 +09:00
Sukchan Lee
4e0abf8775 remove static object in library 2017-11-08 00:00:57 +09:00
Sukchan Lee
a0e6cc3996 Oops! missing files 2017-11-07 14:28:46 +00:00
Sukchan Lee
5361934469 change the libbase to lib3gpp 2017-11-07 14:20:35 +00:00
Sukchan Lee
6e00fd349c seperate libbase to the libapp 2017-11-07 14:01:27 +00:00
Sukchan Lee
3778e47bdc add version-info in shared library
I'll just set all version to 1:0:0 at this point
2017-11-07 12:41:20 +00:00
Sukchan Lee
53a86f30cc remove base 2017-11-06 13:42:34 +00:00
Sukchan Lee
e63fa44fff all library is changed to shared library 2017-11-06 13:32:37 +00:00
Sukchan Lee
f4a47e30c7 support relative path of freeDiameter 2017-11-06 13:02:36 +00:00
Sukchan Lee
1941c8b729 freediameter extensions installation path is changed to
'${libdir}/nextepc/freeDiameter'
2017-11-06 11:36:07 +00:00
Sukchan Lee
8b916d15f4 move fd/extensions to freeDiameter-1.2.1/extensions 2017-11-06 10:14:14 +00:00
Sukchan Lee
4ef15728a0 merge libcore/libcoreunix to libcore
merge libfd/libfdx/libfds6a to libfd
2017-11-06 08:32:19 +00:00
Sukchan Lee
bfbb98fc1f fix the dependency error 2017-11-06 00:08:06 +09:00
Sukchan Lee
5cc56ab353 change shared library 2017-11-05 14:57:19 +00:00
Sukchan Lee
1b0536dca0 change all library from static to shared library 2017-11-05 17:13:50 +09:00
Sukchan Lee
0d13c26307 change the freeDiameter library from static to the shared library 2017-11-05 16:20:52 +09:00
Sukchan Lee
cd2df5d894 add dlopen library search 2017-11-04 11:03:18 +09:00
Sukchan Lee
d87383be69 Oops! remove dependpency lib 2017-11-04 10:34:02 +09:00
Sukchan Lee
d851d03925 Merge branch 'dep' of https://github.com/acetcom/nextepc into dep
fix the conflict
2017-11-04 10:24:24 +09:00
Sukchan Lee
d092c329da rollback..Mac OSX is not working if we link libfdore/proto to the shared
object.
2017-11-04 10:23:07 +09:00
Sukchan Lee
4345398ca2 fix the warning of dh_shdeplibs 2017-11-03 15:36:24 +00:00
Sukchan Lee
d2cf6821b8 fix the library dependency 2017-11-03 21:55:20 +09:00
Sukchan Lee
3db70a3ad0 update changelog for launchpad ppa package 2017-11-03 02:31:48 +00:00
Sukchan Lee
362db04ff6 Merge branch 'master' of https://github.com/acetcom/nextepc 2017-11-03 11:27:28 +09:00
Sukchan Lee
ea7cca3d40 postrm script improved 2017-11-03 02:27:05 +00:00
Sukchan Lee
f35eea1634 add favicon in Web User Interface 2017-11-03 10:48:38 +09:00
Sukchan Lee
2c5f9e6c0c Fix errata 2017-11-02 21:38:12 +09:00
Sukchan Lee
066339d8cb update README 2017-11-02 17:21:21 +09:00
Sukchan Lee
d9ab53bbf0 update changelog for launchpad ppa 2017-11-02 07:52:37 +00:00
Sukchan Lee
561c041010 remove README 2017-11-02 16:08:34 +09:00
Sukchan Lee
fbe3e3685f debug log change to trace 2017-11-02 16:07:40 +09:00
Sukchan Lee
2f43079fc6 update pgw.postinstall
introduce systemctl.sh
2017-11-01 01:11:55 +00:00
Sukchan Lee
0bdbee24cf fix the bug for pgw post install script 2017-10-31 14:42:02 +00:00
Sukchan Lee
081f8c8808 MongoDB re-connect using systemd 2017-10-31 12:29:39 +00:00
Sukchan Lee
a9dd6be8e8 Ubuntu artful update 2017-10-31 05:54:13 +00:00
Sukchan Lee
a25de7b287 fix the PGW installation 2017-10-31 04:44:11 +00:00
Sukchan Lee
46b403c43d all running error is fixed 2017-10-31 09:32:18 +09:00
James Park
b060ea1714 Add sleep so that server is ready to accept connection. 2017-10-30 15:26:30 -07:00
Sukchan Lee
f627565696 Upload Launchpad PPA for Ubuntu 17.10 i386 2017-10-30 13:34:17 +00:00
Sukchan Lee
badc1f2da3 fix compile error 2017-10-30 10:39:05 +00:00
Sukchan Lee
10cda2cfd7 exclude TCP test in testnetlib because sometimes this test is failed as
follows.

 OpenSUSE OBS
 - Ubuntu 17.04 i586 failed

[  542s] testnetlib          :  Line 262: expected <0>, but saw <-1>
[  542s] [10/30 07:48:38.730] ERRR: connect error(111:Connection refused)(proto:6 remote:127.0.0.1 dport:5121 lport:0) (net_lib.c:353)
[  542s] [10/30 07:48:38.730] ERRR: connect error(111:Connection refused)(proto:6 remote:127.0.0.1 dport:5121 lport:0) (net_lib.c:353)
[  542s] [10/30 07:48:38.730] ERRR: connect error(111:Connection refused)(proto:6 remote:127.0.0.1 dport:5121 lport:0) (net_lib.c:353)
[  542s] [10/30 07:48:38.730] ERRR: connect error(111:Connection refused)(proto:6 remote:127.0.0.1 dport:5121 lport:0) (net_lib.c:353)
[  542s] [10/30 07:48:38.730] ASSERT: !(net_sock && buffer). Invalid params
[  542s]  (net_lib.c:590)
[  542s] [10/30 07:48:38.730] ASSERT: !(net_sock). net_sock is NULL
[  542s]  (net_lib.c:408)
[  542s] [10/30 07:48:38.730] ASSERT: !(net_sock). net_sock is NULL
2017-10-30 10:37:33 +00:00
Sukchan Lee
abdcbe7b7a change names of ubuntu package version 2017-10-30 07:10:43 +00:00
Sukchan Lee
377f725f26 update debian changelog
add Ubuntu Zesty(Ubuntu 17.04-amd64, i586)
add Ubuntu Artful(Ubuntu 17.10-amd64)
2017-10-30 05:46:42 +00:00
Sukchan Lee
ff31858a81 update debian changelog 2017-10-30 04:50:11 +00:00
Sukchan Lee
9e27685cd0 disable test code. will be fixed later. 2017-10-30 02:14:33 +00:00
Sukchan Lee
c09483b540 at this point, I'm not sure how to handle this file.
I'll just rollback it.
2017-10-29 13:03:39 +00:00
Sukchan Lee
44f0155f5a add metapackage 2017-10-29 12:54:03 +00:00
Sukchan Lee
a0eb08a2fa PID command line option(-p) is added 2017-10-29 20:48:17 +09:00
Sukchan Lee
8c289c6d6e update logrotate and newsyslog following previous modification 2017-10-29 20:16:18 +09:00
Sukchan Lee
baf6af79d6 LOG configuration is changed.
We'll juse file log as a default log.
Older logger name is changed socket logger and default configuration is
disabled
2017-10-29 10:22:22 +00:00
Sukchan Lee
2d1983cfb0 /var/run bug is fixed
For systemd environment, we define runtime directory like the follwings
MME : /var/run/nextepc-mmed
SGW : /var/run/nextepc-sgwd
PGW : /var/run/nextepc-pgwd
HSS : /var/run/nextepc-hssd
PCRF : /var/run/nextepc-pcrfd

In each directory, PID File is created as follows.
MME : /var/run/nextepc-mmed/pid
SGW : /var/run/nextepc-sgwd/pid
PGW : /var/run/nextepc-pgwd/pid
HSS : /var/run/nextepc-hssd/pid
PCRF : /var/run/nextepc-pcrfd/pid
2017-10-29 10:57:15 +09:00
Sukchan Lee
5c4c4498d2 logging disunite to each individual 2017-10-29 00:44:09 +09:00
Sukchan Lee
f72aa7a468 systemd update 2017-10-28 19:50:50 +09:00
Sukchan Lee
c8ec3702d0 update debian rule for override_dh_auto_test
VM(like OBS) may not support SCTP
At this point, I disabled SCTP-needed test code.
2017-10-28 10:09:44 +00:00
Sukchan Lee
4e33365bf4 debian packaging is initially done.
network script is added
move testscript in debian/rules
2017-10-27 16:15:14 +00:00
Sukchan Lee
fdae399c74 debian packaging (stage 2)
make check re-enabled, but data plane is disabled at this point
user(nextepc/nextec) created
pgwtun interface is created when PGW-preinstall script
2017-10-27 06:01:59 +00:00
Sukchan Lee
e367b00d2c do debian packaging (stage-1) 2017-10-27 03:15:14 +00:00
Sukchan Lee
b08c91190a remove to install systemd, logrotate, newsyslog
I'm not sure where is good things for this system file.
We need to decide when these stuffs are installed in Debian package or `make install`

At this point, I'll remove to install them for other developer.
Later, I'll fix it!
2017-10-26 13:26:10 +09:00
Sukchan Lee
52080092b6 GTP-U is re-enabled in test program.
I'll use src : 45.45.0.2 dst ip : 45.45.0.1 for data plane loopback test
2017-10-25 19:49:28 +09:00
Sukchan Lee
88b5560a2a change test packet to loopback address 2017-10-25 19:33:18 +09:00
Sukchan Lee
6d99061b17 permit even though SGW fails to send gtp end marker 2017-10-25 19:04:35 +09:00
Sukchan Lee
f624adf540 change default configuration using loopback addresses
mme : 127.76.0.1
sgw : 127.76.0.2
pgw : 127.76.0.3
hss : 127.76.0.4
pcrf : 127.76.0.5

If you would like to connect internet, you need to change MME.S1AP_IPV4
and SGW.GTPU_IPV4 with external IP address
2017-10-25 16:30:19 +09:00
Sukchan Lee
67827d5ea4 change assert to d_error for log file permission problem 2017-10-25 14:43:54 +09:00
Sukchan Lee
20800c611b HSS update for supporting OPc 2017-10-25 14:37:12 +09:00
Sukchan Lee
6c8d4328fb fix the bug when profile is changes 2017-10-25 12:45:08 +09:00
Sukchan Lee
588a6ba012 add OPc field to Subscriber and Profile Document 2017-10-25 12:17:52 +09:00
Sukchan Lee
d4dd8bb72d missing files for newsyslog 2017-10-24 22:48:29 +09:00
Sukchan Lee
6d25211f3b add newsyslog for Mac OS X 2017-10-24 22:46:09 +09:00
Sukchan Lee
4ae9673935 Merge branch 'r0.2' of https://github.com/acetcom/nextepc into r0.2
Conflicts:
	test/checkepc.sh
2017-10-24 21:00:10 +09:00
Sukchan Lee
cd36e9a334 update .gitignore 2017-10-24 20:58:22 +09:00
Sukchan Lee
0897c36947 logrotate is now working. 2017-10-24 20:52:58 +09:00
Sukchan Lee
6989a8ae91 to permit 'make install' in user privilege for developer. 2017-10-24 19:40:47 +09:00
Sukchan Lee
df1f35e92b Logrotate is added. But more test is needed 2017-10-24 19:14:09 +09:00
Sukchan Lee
6f5ec19388 PID file is created for logrotate 2017-10-24 15:55:28 +09:00
Sukchan Lee
6eb05495aa change test configuration directory to /tmp 2017-10-24 11:00:58 +09:00
Sukchan Lee
81a8b00d78 Merge branch 'master' into r0.2 2017-10-24 09:54:47 +09:00
Sukchan Lee
382c909ffc Merge pull request #10 from laf0rge/laforge/pending
Allow loopback/link-local/site-local addresses
2017-10-24 09:53:59 +09:00
Sukchan Lee
92ba86f1fd update script for Non-GNU sed 2017-10-24 01:40:01 +09:00
Sukchan Lee
adcc473d6e 'make check` before 'make install'
checkepc.sh script is created.
this script generates necessary configuration file before `make
install`. And then, execute `./testepc -f ./etc/nextepc.conf`
2017-10-24 01:03:25 +09:00
Sukchan Lee
5314bcb687 change @localstatedir@/@sysconfdir@ to the LOCALESTATE_DIR and SYSCONF_DIR in nextepc.conf.in 2017-10-23 15:00:07 +09:00
Sukchan Lee
30e7beb84c Merge branch 'laforge/debian-packaging' of https://github.com/laf0rge/nextepc into debian-packaging 2017-10-23 14:22:07 +09:00
Harald Welte
e8071fa544 freeDiameter: Allow bind to loopback, link-local and site-lcoal addrs
Why would it be illegal to configure/operate freeDiameter to bind to
loopback, link-local or site-local addresses?  Loopback is used a lot
in testing.  link-local and site-local adresses can very well be used
in non-public applications/use cases that don't involve public IPv6
networks.
2017-10-22 18:42:20 +02:00
Sukchan Lee
32b7183483 thread delete location is changed.
See [the issue discussion](https://github.com/sctplab/usrsctp/issues/179)
2017-10-21 07:34:12 +09:00
Sukchan Lee
f6f1720fee update netconfig.sh 2017-10-20 23:51:54 +09:00
Sukchan Lee
6b8cdafbbd Now, we'll use loopback interface for internal socket 2017-10-20 19:15:58 +09:00
Sukchan Lee
074b7b41e8 fix the bug GTP-U testing code 2017-10-20 18:01:47 +09:00
Sukchan Lee
2223dfef0e remove hard-corded code 2017-10-20 17:19:27 +09:00
Sukchan Lee
7b046c75b2 add usrsctp_finish 2017-10-20 16:32:57 +09:00
Sukchan Lee
3bf6326763 create testsctp.c and testusrsctp.c 2017-10-20 16:15:32 +09:00
Sukchan Lee
c2d962d4d1 rollback privous commit 2017-10-20 15:52:30 +09:00
Sukchan Lee
34270825a7 fix the bug usrsctp_finish() 2017-10-20 15:46:06 +09:00
Sukchan Lee
d971a9c9ae testepc is passed in Userland SCTP 2017-10-20 15:14:14 +09:00
Sukchan Lee
d40ba2a67c Oops! re-add net_read() in testcode 2017-10-20 13:47:43 +09:00
Sukchan Lee
7b1949da6c Merge branch 'r0.2' of https://github.com/acetcom/nextepc into r0.2 2017-10-20 13:19:20 +09:00
Sukchan Lee
2a3fe018e8 S1Setup Test is passed in Userland SCTP 2017-10-20 13:18:58 +09:00
Sukchan Lee
36985520f9 send/recv function is tested for only 1 eNB. 2017-10-19 13:42:07 +09:00
Sukchan Lee
cca9f6d521 recv function is tested for Userland SCTP library 2017-10-19 12:50:39 +09:00
Sukchan Lee
da1a50e9d3 Merge branch 'master' into r0.2 2017-10-19 10:15:13 +09:00
Sukchan Lee
c460386d39 Merge pull request #6 from laf0rge/laforge/s1ap-ppid-fix
net_accept(): Inherit PPID from listening socket
2017-10-19 09:50:42 +09:00
Harald Welte
1c64000431 net_accept(): Inherit PPID from listening socket
When we call accept() on a listening socket, we need to inherit
the sctp PPID from the master socket to the new socket of the
just-accepted connection.  Otherwise any sent packets (such as S1AP)
will be sent to PPID=0 rather than the configured PPID (e.g. 18 for
S1AP).
2017-10-18 23:18:53 +02:00
Sukchan Lee
1df4fc9a41 continue to porting Userland SCTP
connection is done.
will implement send/recv function
2017-10-19 01:09:06 +09:00
Harald Welte
ae6f1001f8 Add systemd service files for nextepc daemons 2017-10-18 12:27:53 +02:00
Harald Welte
4bce6df238 Add 'debian' subdirectory for building dpkg packages
Adding this 'debian' subdirectory will allow users to build
binary packages using 'dpkg-buildpackage' and related tools.

Tested so far on Debian unstable and 9 as well as Ubuntu 17.04
and 17.10 on OpenSuSE Build Service.
2017-10-18 12:27:49 +02:00
Sukchan Lee
bb806e492e Finally, I've remove net_sock_t->app_index in core_net.h
Now, we are done to porting SCTP using Userland SCTP
2017-10-18 14:36:12 +09:00
Sukchan Lee
c3ffd52771 mme_enb_t context structure is changed using hash table.
I'll remove net_sock_t->app_index if poosible.
2017-10-18 14:05:22 +09:00
Harald Welte
ec91b9e8da Fix directory mix-up. @prefix@ vs. @sysconfdir@ vs @libdir@ vs @localstatedir@
Installing to @prefix@/etc is wrong, this will end up in /usr/etc
on most linux distributions, where /etc (@sysconfdir@) would be correct.

The same is true for /var (@localstatedir@), we don't want log files
suddenly to be in /usr/var/log rather than /var/log

However, this is further complicated by the fact that @libdir@ is not
recursively resolved but could expand to "${prefix}/lib" which
of course makes no sense inside a config file.  So instead, let's
introduce adl_RECURSIVE_EVAL and define @LIB_DIR@ and @SYSCONF_DIR@
with recursively-expanded versions of those variables.
2017-10-17 23:43:51 +02:00
Harald Welte
cd8f29aa59 Makefile.am: install_data_hook was missing $(DESTDIR)
When creating the /var/log directory, we must create it relative
to the $(DESTDIR) of the installation, and not at it's system-wide
default path without any DESTDIR.
2017-10-17 21:49:29 +02:00
Harald Welte
bb74b173ca Add 'nextepc-' prefix to executables
'mmed' and the like all are a bit of a generic name. Let's prefix the
project name to ensure there will be no clashes with other programs that
also implement a 'MME daemon' or the like.
2017-10-17 21:28:29 +02:00
Sukchan Lee
10b23bb64e fix compile error for usrsctp 2017-10-17 22:18:48 +09:00
Sukchan Lee
ea253016fc autoconf update for supporting Userland SCTP(libusrsctp) 2017-10-17 20:44:05 +09:00
Sukchan Lee
a020b587c1 Merge branch 'master' into r0.2 2017-10-17 16:19:20 +09:00
Sukchan Lee
0eb9ae4792 fix the compile error 2017-10-17 23:04:24 +09:00
Sukchan Lee
f275617225 Merge pull request #1 from laf0rge/master
Add .gitingore file to have clean 'git status' output
2017-10-17 16:16:14 +09:00
Harald Welte
92ecad5118 Add .gitingore file to have clean 'git status' output 2017-10-17 08:12:58 +02:00
Sukchan Lee
d486e84816 improve netconfig
modify GTP packet sending function interface
2017-10-17 13:53:55 +09:00
Sukchan Lee
b287a3b022 fix the bug multiple tun driver 2017-10-17 13:14:10 +09:00
Sukchan Lee
83a21c5840 configuration is changed 2017-10-17 13:04:45 +09:00
Sukchan Lee
b9f4dcf4ea MAC OSX is needed to enable IP fowwarding 2017-10-17 07:44:48 +09:00
Sukchan Lee
a20c96bc21 fix the Makefile errata 2017-10-17 01:25:28 +09:00
Sukchan Lee
291a5ce514 merge MacOSX and FreeBSD code related tun ip config 2017-10-17 01:03:34 +09:00
Sukchan Lee
cdbc8d1ab0 MAC OSX ping loopback test done 2017-10-17 00:56:00 +09:00
Sukchan Lee
689c3b95e7 routing table is automatically added in FreeBSD 2017-10-17 08:24:30 +09:00
Sukchan Lee
b8a37b0ea1 net_tun library is updated for supporting FreeBSD and MacOSX
In FreeBSD and MacOSX, tun driver is automatically configured.
2017-10-17 07:03:37 +09:00
Sukchan Lee
86908cdbe9 ping src:45.45.0.2 dst:45.45.0.1 is only enabled in Linux platform
Linux Kernel reply the icmp message.
FreeBSD/MacOSX is not working.
More study is needed about TUN
2017-10-15 20:43:05 +09:00
Sukchan Lee
0f08c2a624 Ping loopback is added in Linux platform 2017-10-15 20:33:51 +09:00
Sukchan Lee
47bad3794e PGW IP assign rule is updated 2017-10-15 20:33:20 +09:00
Sukchan Lee
fb566fd94c fix the compile error for high GCC version 2017-10-15 01:18:45 +09:00
Sukchan Lee
3bbbd1b5b1 fix the bug for One SGW IP assign 2017-10-15 01:07:27 +09:00
Sukchan Lee
172266b0c5 GTP Loopback Test Module is Added.
1. ping(src:45.45.0.1, dst:45.45.0.1)
2. MME emulates GTP-U instead of eNB, and send GTP-U to the SGW
3. SGW relay to PGW using GTP-U
4. PGW TUN reponse ping reply
5. PGW sends GTP-U to the SGW
6. SGW sends GTP-U to the MME
7. GTP-U decapsulates and sends ping packet to the kernel
2017-10-15 00:45:49 +09:00
Sukchan Lee
1f14b132c2 Merge branch 'r0.2' of https://github.com/acetcom/nextepc into r0.2 2017-10-13 21:51:50 +09:00
Sukchan Lee
3613b27ca7 MME/PGW Configuration is also changed to support One SGW IP assign
Control Plane Test Done.
Data Plan Test is Needed.
2017-10-13 21:31:49 +09:00
Sukchan Lee
4672ee559f One IP assign for SGW
Configuration is changed
Remove S11_XXXX, S1U_XXXX, S5C_XXXX, S5U_XXXX

Introduce GTPC_IPV4, GTPU_IPV4
2017-10-13 21:13:39 +09:00
Sukchan Lee
02773eff40 FreeBSD Porting done. 2017-10-13 18:12:15 +09:00
Sukchan Lee
5d6e63c20e Reduce SGW IP assign to One.
Initially, I've started to update Control Plane related to this issue.
Context Accessing is re-arraged based Thread for finding GTP Node Context.

[MME]
mme_sgw_t : SM thread(Control-Plane)

[SGW]
sgw_mme_t : Net thread(Data-Plane)
sgw_pgw_t : SM thread(Control-Plane)

[PGW]
pgw_sgw_t : Net thread(Data-Plane)
2017-10-13 14:41:55 +09:00
Sukchan Lee
ee4dd7732e Porting to FreeBSD (Stage-1)
I'd just fix the compile error at this point.
2017-10-12 23:01:51 +09:00
Sukchan Lee
8d343221d2 update VERSION to 0.2.0 2017-10-11 15:50:00 +09:00
Sukchan Lee
7c20ac5c64 update VERSION to 0.1.1 2017-10-11 15:46:45 +09:00
Sukchan Lee
dac66d0b80 BUILT_SOURCE is missing.
fdd.tab.h is a file generated from lex & yacc. If we do not tell it to
automake, the dependency issue occurs in `make -j 8`.
2017-10-11 06:25:21 +00:00
Sukchan Lee
4245502ae2 Fix the bug under mongo c driver v1.5
I misunderstand the interface when querying with projection
when the version of Mongo C Driver is lower than 1.5.

For reference, in case of Ubuntu 16.04, Mongo C Driver v1.3.1
will be installed, so when using 'Dedicated Bearer', v0.1.1
should be used because it does not work normally.
2017-10-11 06:08:19 +00:00
3416 changed files with 308585 additions and 385176 deletions

3
.gitignore vendored Normal file
View File

@@ -0,0 +1,3 @@
# This directory is fetched during first build and is present in this directory
subprojects/freeDiameter
subprojects/usrsctp

145
LICENSE
View File

@@ -1,5 +1,5 @@
GNU GENERAL PUBLIC LICENSE
Version 3, 29 June 2007
GNU AFFERO GENERAL PUBLIC LICENSE
Version 3, 19 November 2007
Copyright (C) 2007 Free Software Foundation, Inc. <http://fsf.org/>
Everyone is permitted to copy and distribute verbatim copies
@@ -7,17 +7,15 @@
Preamble
The GNU General Public License is a free, copyleft license for
software and other kinds of works.
The GNU Affero General Public License is a free, copyleft license for
software and other kinds of works, specifically designed to ensure
cooperation with the community in the case of network server software.
The licenses for most software and other practical works are designed
to take away your freedom to share and change the works. By contrast,
the GNU General Public License is intended to guarantee your freedom to
our General Public Licenses are intended to guarantee your freedom to
share and change all versions of a program--to make sure it remains free
software for all its users. We, the Free Software Foundation, use the
GNU General Public License for most of our software; it applies also to
any other work released this way by its authors. You can apply it to
your programs, too.
software for all its users.
When we speak of free software, we are referring to freedom, not
price. Our General Public Licenses are designed to make sure that you
@@ -26,44 +24,34 @@ them if you wish), that you receive source code or can get it if you
want it, that you can change the software or use pieces of it in new
free programs, and that you know you can do these things.
To protect your rights, we need to prevent others from denying you
these rights or asking you to surrender the rights. Therefore, you have
certain responsibilities if you distribute copies of the software, or if
you modify it: responsibilities to respect the freedom of others.
Developers that use our General Public Licenses protect your rights
with two steps: (1) assert copyright on the software, and (2) offer
you this License which gives you legal permission to copy, distribute
and/or modify the software.
For example, if you distribute copies of such a program, whether
gratis or for a fee, you must pass on to the recipients the same
freedoms that you received. You must make sure that they, too, receive
or can get the source code. And you must show them these terms so they
know their rights.
A secondary benefit of defending all users' freedom is that
improvements made in alternate versions of the program, if they
receive widespread use, become available for other developers to
incorporate. Many developers of free software are heartened and
encouraged by the resulting cooperation. However, in the case of
software used on network servers, this result may fail to come about.
The GNU General Public License permits making a modified version and
letting the public access it on a server without ever releasing its
source code to the public.
Developers that use the GNU GPL protect your rights with two steps:
(1) assert copyright on the software, and (2) offer you this License
giving you legal permission to copy, distribute and/or modify it.
The GNU Affero General Public License is designed specifically to
ensure that, in such cases, the modified source code becomes available
to the community. It requires the operator of a network server to
provide the source code of the modified version running there to the
users of that server. Therefore, public use of a modified version, on
a publicly accessible server, gives the public access to the source
code of the modified version.
For the developers' and authors' protection, the GPL clearly explains
that there is no warranty for this free software. For both users' and
authors' sake, the GPL requires that modified versions be marked as
changed, so that their problems will not be attributed erroneously to
authors of previous versions.
Some devices are designed to deny users access to install or run
modified versions of the software inside them, although the manufacturer
can do so. This is fundamentally incompatible with the aim of
protecting users' freedom to change the software. The systematic
pattern of such abuse occurs in the area of products for individuals to
use, which is precisely where it is most unacceptable. Therefore, we
have designed this version of the GPL to prohibit the practice for those
products. If such problems arise substantially in other domains, we
stand ready to extend this provision to those domains in future versions
of the GPL, as needed to protect the freedom of users.
Finally, every program is threatened constantly by software patents.
States should not allow patents to restrict development and use of
software on general-purpose computers, but in those that do, we wish to
avoid the special danger that patents applied to a free program could
make it effectively proprietary. To prevent this, the GPL assures that
patents cannot be used to render the program non-free.
An older license, called the Affero General Public License and
published by Affero, was designed to accomplish similar goals. This is
a different license, not a version of the Affero GPL, but Affero has
released a new version of the Affero GPL which permits relicensing under
this license.
The precise terms and conditions for copying, distribution and
modification follow.
@@ -72,7 +60,7 @@ modification follow.
0. Definitions.
"This License" refers to version 3 of the GNU General Public License.
"This License" refers to version 3 of the GNU Affero General Public License.
"Copyright" also means copyright-like laws that apply to other kinds of
works, such as semiconductor masks.
@@ -549,35 +537,45 @@ to collect a royalty for further conveying from those to whom you convey
the Program, the only way you could satisfy both those terms and this
License would be to refrain entirely from conveying the Program.
13. Use with the GNU Affero General Public License.
13. Remote Network Interaction; Use with the GNU General Public License.
Notwithstanding any other provision of this License, if you modify the
Program, your modified version must prominently offer all users
interacting with it remotely through a computer network (if your version
supports such interaction) an opportunity to receive the Corresponding
Source of your version by providing access to the Corresponding Source
from a network server at no charge, through some standard or customary
means of facilitating copying of software. This Corresponding Source
shall include the Corresponding Source for any work covered by version 3
of the GNU General Public License that is incorporated pursuant to the
following paragraph.
Notwithstanding any other provision of this License, you have
permission to link or combine any covered work with a work licensed
under version 3 of the GNU Affero General Public License into a single
under version 3 of the GNU General Public License into a single
combined work, and to convey the resulting work. The terms of this
License will continue to apply to the part which is the covered work,
but the special requirements of the GNU Affero General Public License,
section 13, concerning interaction through a network will apply to the
combination as such.
but the work with which it is combined will remain governed by version
3 of the GNU General Public License.
14. Revised Versions of this License.
The Free Software Foundation may publish revised and/or new versions of
the GNU General Public License from time to time. Such new versions will
be similar in spirit to the present version, but may differ in detail to
the GNU Affero General Public License from time to time. Such new versions
will be similar in spirit to the present version, but may differ in detail to
address new problems or concerns.
Each version is given a distinguishing version number. If the
Program specifies that a certain numbered version of the GNU General
Program specifies that a certain numbered version of the GNU Affero General
Public License "or any later version" applies to it, you have the
option of following the terms and conditions either of that numbered
version or of any later version published by the Free Software
Foundation. If the Program does not specify a version number of the
GNU General Public License, you may choose any version ever published
GNU Affero General Public License, you may choose any version ever published
by the Free Software Foundation.
If the Program specifies that a proxy can decide which future
versions of the GNU General Public License can be used, that proxy's
versions of the GNU Affero General Public License can be used, that proxy's
public statement of acceptance of a version permanently authorizes you
to choose that version for the Program.
@@ -631,44 +629,33 @@ to attach them to the start of each source file to most effectively
state the exclusion of warranty; and each file should have at least
the "copyright" line and a pointer to where the full notice is found.
{one line to give the program's name and a brief idea of what it does.}
Copyright (C) {year} {name of author}
<one line to give the program's name and a brief idea of what it does.>
Copyright (C) <year> <name of author>
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
it under the terms of the GNU Affero General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
GNU Affero General Public License for more details.
You should have received a copy of the GNU General Public License
You should have received a copy of the GNU Affero General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
Also add information on how to contact you by electronic and paper mail.
If the program does terminal interaction, make it output a short
notice like this when it starts in an interactive mode:
{project} Copyright (C) {year} {fullname}
This program comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
This is free software, and you are welcome to redistribute it
under certain conditions; type `show c' for details.
The hypothetical commands `show w' and `show c' should show the appropriate
parts of the General Public License. Of course, your program's commands
might be different; for a GUI interface, you would use an "about box".
If your software can interact with users remotely through a computer
network, you should also make sure that it provides a way for users to
get its source. For example, if your program is a web application, its
interface could display a "Source" link that leads users to an archive
of the code. There are many ways you could offer source, and different
solutions will be better for different programs; see section 13 for the
specific requirements.
You should also get your employer (if you work as a programmer) or school,
if any, to sign a "copyright disclaimer" for the program, if necessary.
For more information on this, and how to apply and follow the GNU GPL, see
For more information on this, and how to apply and follow the GNU AGPL, see
<http://www.gnu.org/licenses/>.
The GNU General Public License does not permit incorporating your program
into proprietary programs. If your program is a subroutine library, you
may consider it more useful to permit linking proprietary applications with
the library. If this is what you want to do, use the GNU Lesser General
Public License instead of this License. But first, please read
<http://www.gnu.org/philosophy/why-not-lgpl.html>.

View File

@@ -1,71 +0,0 @@
## Process this file with automake to produce Makefile.in
ACLOCAL_AMFLAGS = -I m4
SUBDIRS = lib src test
bin_PROGRAMS = mmed hssd sgwd pgwd pcrfd epcd
dist_mmed_SOURCES = main.c
mmed_LDADD = $(top_srcdir)/src/libmme.la
mmed_LDFLAGS = -export-dynamic
dist_hssd_SOURCES = main.c
hssd_LDADD = $(top_srcdir)/src/libhss.la
hssd_LDFLAGS = -export-dynamic
dist_sgwd_SOURCES = main.c
sgwd_LDADD = $(top_srcdir)/src/libsgw.la
sgwd_LDFLAGS = -export-dynamic
dist_pgwd_SOURCES = main.c
pgwd_LDADD = $(top_srcdir)/src/libpgw.la
pgwd_LDFLAGS = -export-dynamic
dist_pcrfd_SOURCES = main.c
pcrfd_LDADD = $(top_srcdir)/src/libpcrf.la
pcrfd_LDFLAGS = -export-dynamic
dist_epcd_SOURCES = main.c
epcd_LDADD = $(top_srcdir)/src/libepc.la
epcd_LDFLAGS = -export-dynamic
AM_CPPFLAGS = \
-I$(top_srcdir)/lib/core/include \
-I$(top_srcdir)/src
sysconf_DATA = \
support/nextepc.conf
freeDiameterdir = ${prefix}/etc/freeDiameter
freeDiameter_DATA = \
support/freeDiameter/mme.conf \
support/freeDiameter/hss.conf \
support/freeDiameter/pgw.conf \
support/freeDiameter/pcrf.conf
dist_freeDiameter_DATA = \
support/freeDiameter/cacert.pem \
support/freeDiameter/mme.key.pem \
support/freeDiameter/mme.cert.pem \
support/freeDiameter/hss.key.pem \
support/freeDiameter/hss.cert.pem \
support/freeDiameter/pgw.key.pem \
support/freeDiameter/pgw.cert.pem \
support/freeDiameter/pcrf.key.pem \
support/freeDiameter/pcrf.cert.pem
install-data-hook:
$(MKDIR_P) $(prefix)/var/log
CLEANFILES = symtbl.c
DISTCLEANFILES = $(DIST_ARCHIVES)
MAINTAINERCLEANFILES = \
configure config.in \
aclocal.m4 m4/ltsugar.m4 m4/libtool.m4 m4/ltversion.m4 \
m4/lt~obsolete.m4 m4/ltoptions.m4 \
build-aux/ar-lib build-aux/config.guess build-aux/depcomp \
build-aux/ltmain.sh build-aux/test-driver build-aux/compile \
build-aux/config.sub build-aux/missing build-aux/install-sh \
.cscope.out .cscope.out.in .cscope.files .cscope.out.po \
Makefile.in
MOSTLYCLEANFILES = core *.stackdump

267
README.md
View File

@@ -1,267 +1,26 @@
Building NextEPC
================
## Documentation
This post will guide you on how to get installed with **NextEPC**. To date, **NextEPC** has been compiled and tested on GNU/Linux distributions(Debian, Ubuntu, Fedora, OpenSUSE) and FreeBSD.
If you don't understand something about Open5GS, the [https://open5gs.org/open5gs/docs/](https://open5gs.org/open5gs/docs/) is a great place to look for answers.
We will describe this guide using **Ubuntu 16.04 LTS (Xenial)**. You'll need to install **Ubuntu** if you don't have it installed already. To get the latest Ubuntu version, please visit the official Ubuntu website: [https://www.ubuntu.com/download/](https://www.ubuntu.com/download/).
## Support
## Install the dependencies for building the source
Problem with Open5GS can be filed as [issues](https://github.com/open5gs/open5gs/issues) in this repository.
The first step is to use **apt-get** to install all depedencies.
Discussions related to this project are happening on the [nextepc@lists.osmocom.org](mailto:nextepc@lists.osmocom.org) mailing list, please see <https://lists.osmocom.org/mailman/listinfo/nextepc> for subscription options and the list archive.
```bash
sudo apt-get -y install git gcc flex bison make autoconf libtool pkg-config libsctp-dev libssl-dev libgnutls-dev libgcrypt-dev libmongoc-dev libbson-dev mongodb
```
Voice and text chat available in Open5GS's [Discord](https://discordapp.com/) workspace. Use [this link](https://discord.gg/GreNkuc) to get started.
## Retrieve the latest version of the source package
## Contributing
```bash
git clone https://github.com/acetcom/nextepc
```
Open5GS is a pure/classic FOSS project, open to contributions from anyone.
## Configure the build
[Pull requests](https://github.com/open5gs/open5gs/pulls) are always welcome, and I appreciates any help the community can give to help make Open5GS better.
```bash
cd nextepc
test -f configure || autoreconf -iv
CFLAGS='-O2' ./configure --prefix=`pwd`/install
```
Do you want to be a committer? Please [send me an email](mailto:acetcom@gmail.com). You will be added as a committer to this project. However, if someone consistently causes difficulties with these source repositories due to poor behavior or other serious problems then commit access may be revoked.
## Compiling
## License
Hopefully, once you have completed the autotools configuration, you only need to run:
Open5GS source files are made available under the terms of the GNU Affero General Public License (GNU AGPLv3).
```bash
make -j `nproc`
```
When you contribute code for Open5GS, the same license applies.
## Installing
Once the compilation is complete, you can install in the configured paths with:
```bash
make install
```
(this might require sudo depending on the configured target directories)
Web Setup
=========
NextEPC is configured with **Mongo DB**, which manages _Subscriber Information_ mainly, and **Configuration File** made in _JSON_ format.
The configuration file can be modified using a general editor such as vi or emacs, but _Subscriber Information_ can be managed properly using _Mongo DB Client_.
NextEPC provides **Web User Interface** solely designed to manage _Subscriber Information_ in an easy way without using _Mongo DB Client_. Let's how to install it from now on.
## Install Node.js and NPM
To get the latest **Node.js** and **NPM** version, you can visit the official **Node.js** website:
[https://nodesjs.org/en/download/](https://nodesjs.org/en/download/).
Or, you can install _Node.js_ and _NPM_ on **Ubuntu** as follows:
```bash
sudo apt-get -y install curl
curl -sL https://deb.nodesource.com/setup_8.x | sudo -E bash -
sudo apt-get -y install nodejs
```
## Install the dependencies for building the source
The first step is to use **npm** to install all depedencies.
```bash
cd nextepc/webui
npm install
```
## Build Web User Interface
```bash
npm run build
```
## Running Web Server
```bash
npm run start
```
## Login with default account
Use **Web Browser** to connect it. _http://localhost:3000_
* Username : admin
* Password : 1423
Then, you can change your password in _Account_ Menu.
Network Configuration
=====================
NextEPC consists of five nodes such as _MME, SGW, PGW, HSS and PCRF_. Basically, each node can be installed in a physically separate host or in the same host.
We will run these five nodes that make up NextEPC in a **Single Host**. The reason is why it is the easiest way to understand how to configure NextEPC network.
## IP Configuration
In order to run _MME, HSS, SGW, PGW, and PCRF_ on a **Single Host**, IP address is set by using **IP aliasing**.
```bash
sudo ifconfig eth1:hss 10.1.35.214/24 up
sudo ifconfig eth1:mme 10.1.35.215/24 up
sudo ifconfig eth1:sgw_s5 10.1.35.216/24 up
sudo ifconfig eth1:sgw_s11 10.1.35.217/24 up
sudo ifconfig eth1:pcrf 10.1.35.218/24 up
sudo ifconfig eth1:pgw 10.1.35.219/24 up
```
## Setup for Data Path
Use the **TUN Driver** to make _Data Path_ to be used by the **PGW**.
```bash
sudo ip tuntap add name pgwtun mode tun
sudo ifconfig pgwtun 45.45.0.1/16 up
```
## Check Configuration File
A configuration file is located `etc/nextepc.conf` from the installed paths. If you need to change the IP address for a particular problem, you should modify `XXXX_IPV4` field in the configuration file.
For example, if you want the IP aliasing address of *PGW* to be _10.1.35.254_, `PGW.NETWORK.S5C_IPV4` and `PGW_NETWORK.S5U_IPV4` field should be updated like the followings.
<pre>
PGW :
{
FD_CONF_PATH : "/etc/freeDiameter
NETWORK :
{
S5C_IPV4: "10.1.35.254",
S5U_IPV4: "10.1.35.254"
}
TUNNEL:
{
DEV_NAME: "pgwtun"
}
IP_POOL :
{
CIDR: 45.45.45.0/24
}
DNS :
{
PRIMARY_IPV4: "8.8.8.8",
SECONDARY_IPV4: "4.4.4.4"
}
}
</pre>
## Testing Network Configuration
Once you are done, run the testing script.
```bash
./test/testepc
```
You can see the simulated packet through **Wireshark**. _(FILTER : s1ap || gtpv2 || diameter)_
Running NextEPC
===============
## Update GUMMEI and TAI
The followings are the **GUMMEI** and **TAI** of the *MME* currently set to Default. Your *eNodeB* will also have a **PLMN ID** and **TAC** set. Refer to these parameters to change the setting of MME or eNodeB.
<pre>
GUMMEI:
{
PLMN_ID :
{
MCC : "001",
MNC : "01"
}
MME_GID : 2,
MME_CODE : 1
},
TAI:
{
PLMN_ID :
{
MCC: "001",
MNC: "01",
}
TAC: 12345
}
</pre>
For reference, MME can set several GUMMEI and TAI as **JSON array notation** as follows.
<pre>
GUMMEI:
[
{
PLMN_ID :
{
MCC : "001",
MNC : "01"
}
MME_GID : 2,
MME_CODE : 1
},
{
PLMN_ID :
{
MCC : "005",
MNC : "05"
}
MME_GID : 5,
MME_CODE : 6
},
]
TAI:
[
{
PLMN_ID :
{
MCC: "001",
MNC: "01",
}
TAC: 12345
},
{
PLMN_ID :
{
MCC: "005",
MNC: "05",
}
TAC: 6789
}
]
</pre>
## Register Subscriber Information
There is only one setting for this guide. The _Subscriber Information_ required for **HSS** should be registered in _Mongo DB_. Let's run the **Web User Interface** with `npm run start` as mentioned eariler.
Connect http://localhost:3000 using Web Browser.
* Go to Subscriber Menu
* Click + Button to add Subscriber Information
* Fill IMSI, Security(K, OP, AMF), APN in the Form
* Click the `SAVE` Button
## Running NextEPC
Generally, to use NextEPC in several hosts, you must use an independent daemon called _mmed, sgwd, pgwd, hssd, and pcrfd_.
However, we are preparing a more convenient daemon named **epcd**. It enables to service all five nodes of NextEPC.
```bash
./epcd
```
Turn on your **eNodeB** and **Mobile**. Check Wireshark!
Hopefully, you can see the real packet for TAU/Service Request, Dedicated Bearer, Multiple APN, and S1/X2-Handover.

View File

@@ -1,90 +0,0 @@
dnl
dnl CORE_SUBST(varname)
dnl
dnl Adds variable with it's value into Makefile, e.g.:
dnl CC = gcc
dnl
AC_DEFUN([CORE_SUBST],[
CORE_VAR_SUBST="$CORE_VAR_SUBST $1"
])
dnl
dnl CORE_SUBST_OLD(varname)
dnl
dnl Same as CORE_SUBST() but also substitutes all @VARNAME@
dnl instances in every file passed to AC_OUTPUT()
dnl
AC_DEFUN([CORE_SUBST_OLD],[
CORE_SUBST($1)
AC_SUBST($1)
])
dnl
dnl CORE_CONFIG_NICE(filename)
dnl
dnl Generates the config.nice file
dnl
AC_DEFUN([CORE_CONFIG_NICE],[
AC_REQUIRE([AC_PROG_EGREP])
AC_REQUIRE([LT_AC_PROG_SED])
CORE_SUBST_OLD(EGREP)
CORE_SUBST_OLD(SED)
test -f $1 && mv $1 $1.old
rm -f $1.old
cat >$1<<EOF
#! /bin/sh
#
# Created by configure
EOF
for var in CFLAGS CXXFLAGS CPPFLAGS LDFLAGS EXTRA_LDFLAGS_PROGRAM LIBS CC CXX; do
eval val=\$$var
if test -n "$val"; then
echo "$var='$val' \\" >> $1
fi
done
echo "'[$]0' \\" >> $1
if test `expr -- [$]0 : "'.*"` = 0; then
CONFIGURE_COMMAND="$CONFIGURE_COMMAND '[$]0'"
else
CONFIGURE_COMMAND="$CONFIGURE_COMMAND [$]0"
fi
for arg in $ac_configure_args; do
if test `expr -- $arg : "'.*"` = 0; then
if test `expr -- $arg : "--.*"` = 0; then
break;
fi
echo "'[$]arg' \\" >> $1
CONFIGURE_OPTIONS="$CONFIGURE_OPTIONS '[$]arg'"
else
if test `expr -- $arg : "'--.*"` = 0; then
break;
fi
echo "[$]arg \\" >> $1
CONFIGURE_OPTIONS="$CONFIGURE_OPTIONS [$]arg"
fi
done
echo '"[$]@"' >> $1
chmod +x $1
CONFIGURE_COMMAND="$CONFIGURE_COMMAND $CONFIGURE_OPTIONS"
CORE_SUBST_OLD(CONFIGURE_COMMAND)
CORE_SUBST_OLD(CONFIGURE_OPTIONS)
])
AC_DEFUN([AX_CHECK_COMPILE_FLAG],
[AC_PREREQ(2.59)dnl for _AC_LANG_PREFIX
AS_VAR_PUSHDEF([CACHEVAR],[ax_cv_check_[]_AC_LANG_ABBREV[]flags_$4_$1])dnl
AC_CACHE_CHECK([whether _AC_LANG compiler accepts $1], CACHEVAR, [
ax_check_save_flags=$[]_AC_LANG_PREFIX[]FLAGS
_AC_LANG_PREFIX[]FLAGS="$[]_AC_LANG_PREFIX[]FLAGS $4 $1"
AC_COMPILE_IFELSE([m4_default([$5],[AC_LANG_PROGRAM()])],
[AS_VAR_SET(CACHEVAR,[yes])],
[AS_VAR_SET(CACHEVAR,[no])])
_AC_LANG_PREFIX[]FLAGS=$ax_check_save_flags])
AS_IF([test x"AS_VAR_GET(CACHEVAR)" = xyes],
[m4_default([$2], :)],
[m4_default([$3], :)])
AS_VAR_POPDEF([CACHEVAR])dnl
])dnl AX_CHECK_COMPILE_FLAGS

157
configs/csfb.yaml.in Normal file
View File

@@ -0,0 +1,157 @@
db_uri: mongodb://localhost/open5gs
logger:
parameter:
no_ipv6: true
mme:
freeDiameter:
identity: mme.localdomain
realm: localdomain
listen_on: 127.0.0.2
load_extension:
- module: @freediameter_extensions_builddir@/dbg_msg_dumps.fdx
conf: 0x8888
- module: @freediameter_extensions_builddir@/dict_rfc5777.fdx
- module: @freediameter_extensions_builddir@/dict_mip6i.fdx
- module: @freediameter_extensions_builddir@/dict_nasreq.fdx
- module: @freediameter_extensions_builddir@/dict_nas_mipv6.fdx
- module: @freediameter_extensions_builddir@/dict_dcca.fdx
- module: @freediameter_extensions_builddir@/dict_dcca_3gpp.fdx
connect:
- identity: hss.localdomain
addr: 127.0.0.4
s1ap:
addr: 127.0.0.1
gtpc:
addr: 127.0.0.1
sgsap:
- addr: 127.0.0.2
map:
tai:
plmn_id:
mcc: 901
mnc: 70
tac: 7
lai:
plmn_id:
mcc: 901
mnc: 70
lac: 2342
map:
tai:
plmn_id:
mcc: 724
mnc: 21
tac: 12345
lai:
plmn_id:
mcc: 724
mnc: 21
lac: 51544
gummei:
- plmn_id:
mcc: 901
mnc: 70
mme_gid: 2
mme_code: 1
- plmn_id:
mcc: 724
mnc: 21
mme_gid: 2
mme_code: 1
tai:
plmn_id:
mcc: 901
mnc: 70
tac: 7
tai:
plmn_id:
mcc: 724
mnc: 21
tac: 12345
security:
integrity_order : [ EIA1, EIA2, EIA0 ]
ciphering_order : [ EEA0, EEA1, EEA2 ]
network_name:
full: Open5GS
hss:
freeDiameter:
identity: hss.localdomain
realm: localdomain
listen_on: 127.0.0.4
load_extension:
- module: @freediameter_extensions_builddir@/dbg_msg_dumps.fdx
conf: 0x8888
- module: @freediameter_extensions_builddir@/dict_rfc5777.fdx
- module: @freediameter_extensions_builddir@/dict_mip6i.fdx
- module: @freediameter_extensions_builddir@/dict_nasreq.fdx
- module: @freediameter_extensions_builddir@/dict_nas_mipv6.fdx
- module: @freediameter_extensions_builddir@/dict_dcca.fdx
- module: @freediameter_extensions_builddir@/dict_dcca_3gpp.fdx
connect:
- identity: mme.localdomain
addr: 127.0.0.2
sgw:
gtpc:
addr: 127.0.0.2
gtpu:
addr: 127.0.0.2
pgw:
freeDiameter:
identity: pgw.localdomain
realm: localdomain
listen_on: 127.0.0.3
load_extension:
- module: @freediameter_extensions_builddir@/dbg_msg_dumps.fdx
conf: 0x8888
- module: @freediameter_extensions_builddir@/dict_rfc5777.fdx
- module: @freediameter_extensions_builddir@/dict_mip6i.fdx
- module: @freediameter_extensions_builddir@/dict_nasreq.fdx
- module: @freediameter_extensions_builddir@/dict_nas_mipv6.fdx
- module: @freediameter_extensions_builddir@/dict_dcca.fdx
- module: @freediameter_extensions_builddir@/dict_dcca_3gpp.fdx
connect:
- identity: pcrf.localdomain
addr: 127.0.0.5
gtpc:
- addr:
- 127.0.0.3
- ::1
gtpu:
- addr: 127.0.0.3
- addr: ::1
ue_pool:
- addr: 10.45.0.1/16
- addr: cafe::1/64
dns:
- 8.8.8.8
- 8.8.4.4
- 2001:4860:4860::8888
- 2001:4860:4860::8844
mtu: 1400
pcrf:
freeDiameter:
identity: pcrf.localdomain
realm: localdomain
listen_on: 127.0.0.5
load_extension:
- module: @freediameter_extensions_builddir@/dbg_msg_dumps.fdx
conf: 0x8888
- module: @freediameter_extensions_builddir@/dict_rfc5777.fdx
- module: @freediameter_extensions_builddir@/dict_mip6i.fdx
- module: @freediameter_extensions_builddir@/dict_nasreq.fdx
- module: @freediameter_extensions_builddir@/dict_nas_mipv6.fdx
- module: @freediameter_extensions_builddir@/dict_dcca.fdx
- module: @freediameter_extensions_builddir@/dict_dcca_3gpp.fdx
connect:
- identity: pgw.localdomain
addr: 127.0.0.3

View File

@@ -0,0 +1,17 @@
-----BEGIN CERTIFICATE-----
MIICrDCCAhWgAwIBAgIUPoUbKXRTWQbrJYUIvyHdacCzw9cwDQYJKoZIhvcNAQEL
BQAwaDEXMBUGA1UEAwwOY2EubG9jYWxkb21haW4xCzAJBgNVBAYTAktPMQ4wDAYD
VQQIDAVTZW91bDEOMAwGA1UEBwwFTm93b24xEDAOBgNVBAoMB09wZW41R1MxDjAM
BgNVBAsMBVRlc3RzMB4XDTE5MTAyMDA2NDM1OFoXDTI5MTAxNzA2NDM1OFowaDEX
MBUGA1UEAwwOY2EubG9jYWxkb21haW4xCzAJBgNVBAYTAktPMQ4wDAYDVQQIDAVT
ZW91bDEOMAwGA1UEBwwFTm93b24xEDAOBgNVBAoMB09wZW41R1MxDjAMBgNVBAsM
BVRlc3RzMIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQC2sDnWMj9oXpIw+vcm
9k/WidMyhSbImINLe9YgibFfozoxZt51Hvi/aAxlqyq7akGtvpL8yVZD6j7o74z7
6dlnUFDGC4M0WGEkcxqf5NIWe0QplCsXkEOMYHrXLQisAuUk81DNcsXlZr74bmDI
B0dUM0xJ2JrA5mx1LzTFHSesIwIDAQABo1MwUTAdBgNVHQ4EFgQUxTjcug/DKW49
mQeW0IcS/bhIzDcwHwYDVR0jBBgwFoAUxTjcug/DKW49mQeW0IcS/bhIzDcwDwYD
VR0TAQH/BAUwAwEB/zANBgkqhkiG9w0BAQsFAAOBgQB533IwIPOEE1w2RLBF9EKX
UxaDnUYW05t9eZFLsUtOLFiR84xhCawGEWNtaLvoJE42E17qEjnX4+KGOc6/sa6q
bLskf7BK7496dQrVY5DO9vdSpN1ep3j+1QKae23wYpjqt2UEU3QtIZpsDjUreYri
YLVacMQydGgizNQrY3iCvQ==
-----END CERTIFICATE-----

View File

@@ -0,0 +1,60 @@
Certificate:
Data:
Version: 3 (0x2)
Serial Number: 2 (0x2)
Signature Algorithm: sha256WithRSAEncryption
Issuer: CN=ca.localdomain, C=KO, ST=Seoul, L=Nowon, O=Open5GS, OU=Tests
Validity
Not Before: Oct 20 06:43:58 2019 GMT
Not After : Oct 17 06:43:58 2029 GMT
Subject: C=KO, ST=Seoul, O=Open5GS, OU=Tests, CN=hss.localdomain
Subject Public Key Info:
Public Key Algorithm: rsaEncryption
RSA Public-Key: (1024 bit)
Modulus:
00:d3:e7:ba:6d:14:65:af:df:90:e5:4a:53:56:a1:
f6:89:2e:cb:ee:ce:d6:73:9f:48:b6:96:78:67:a7:
87:18:b8:ab:c3:0b:31:b3:02:92:48:ed:49:ac:40:
c1:13:3b:13:58:50:cc:2e:59:44:e9:7e:31:02:14:
f0:18:82:95:10:e4:37:b2:5d:14:19:1d:4b:8f:e9:
1f:45:75:cf:0a:e0:8f:7b:e1:70:7b:ab:e4:af:2b:
7c:4d:7f:00:d8:eb:cf:f3:96:ab:fc:04:4f:21:ad:
d8:c4:94:05:02:ff:f3:12:48:88:9e:ce:cf:37:29:
e0:28:39:37:62:05:ed:6d:5d
Exponent: 65537 (0x10001)
X509v3 extensions:
X509v3 Basic Constraints:
CA:FALSE
Netscape Comment:
OpenSSL Generated Certificate
X509v3 Subject Key Identifier:
AB:0F:C4:B8:B7:6B:56:12:F5:D4:A3:29:B7:D9:5E:3C:DD:8B:79:DD
X509v3 Authority Key Identifier:
keyid:C5:38:DC:BA:0F:C3:29:6E:3D:99:07:96:D0:87:12:FD:B8:48:CC:37
Signature Algorithm: sha256WithRSAEncryption
43:95:ee:57:3f:4d:ad:bf:42:6c:48:ae:f8:2f:db:f6:cf:2e:
53:a2:3d:48:0a:48:a4:2c:2a:7c:fa:ec:b1:bd:06:a1:21:a5:
38:d8:00:05:81:25:91:51:e2:e6:a8:67:a8:c2:f6:5d:2a:f0:
40:fe:20:d3:82:2d:d9:8c:4c:61:b7:43:87:7f:fe:e4:a1:b6:
fd:54:35:13:4f:63:a5:6b:4a:01:aa:25:e9:80:27:eb:2e:a2:
18:e0:36:37:a5:57:09:67:ed:8f:1e:13:fd:b8:b2:d7:4e:cf:
93:d4:bf:75:02:38:4e:d4:4a:9c:35:fb:a8:0b:3a:ba:03:1a:
e6:9e
-----BEGIN CERTIFICATE-----
MIICsjCCAhugAwIBAgIBAjANBgkqhkiG9w0BAQsFADBoMRcwFQYDVQQDDA5jYS5s
b2NhbGRvbWFpbjELMAkGA1UEBhMCS08xDjAMBgNVBAgMBVNlb3VsMQ4wDAYDVQQH
DAVOb3dvbjEQMA4GA1UECgwHT3BlbjVHUzEOMAwGA1UECwwFVGVzdHMwHhcNMTkx
MDIwMDY0MzU4WhcNMjkxMDE3MDY0MzU4WjBZMQswCQYDVQQGEwJLTzEOMAwGA1UE
CAwFU2VvdWwxEDAOBgNVBAoMB09wZW41R1MxDjAMBgNVBAsMBVRlc3RzMRgwFgYD
VQQDDA9oc3MubG9jYWxkb21haW4wgZ8wDQYJKoZIhvcNAQEBBQADgY0AMIGJAoGB
ANPnum0UZa/fkOVKU1ah9okuy+7O1nOfSLaWeGenhxi4q8MLMbMCkkjtSaxAwRM7
E1hQzC5ZROl+MQIU8BiClRDkN7JdFBkdS4/pH0V1zwrgj3vhcHur5K8rfE1/ANjr
z/OWq/wETyGt2MSUBQL/8xJIiJ7Ozzcp4Cg5N2IF7W1dAgMBAAGjezB5MAkGA1Ud
EwQCMAAwLAYJYIZIAYb4QgENBB8WHU9wZW5TU0wgR2VuZXJhdGVkIENlcnRpZmlj
YXRlMB0GA1UdDgQWBBSrD8S4t2tWEvXUoym32V483Yt53TAfBgNVHSMEGDAWgBTF
ONy6D8Mpbj2ZB5bQhxL9uEjMNzANBgkqhkiG9w0BAQsFAAOBgQBDle5XP02tv0Js
SK74L9v2zy5Toj1ICkikLCp8+uyxvQahIaU42AAFgSWRUeLmqGeowvZdKvBA/iDT
gi3ZjExht0OHf/7kobb9VDUTT2Ola0oBqiXpgCfrLqIY4DY3pVcJZ+2PHhP9uLLX
Ts+T1L91AjhO1EqcNfuoCzq6Axrmng==
-----END CERTIFICATE-----

View File

@@ -51,7 +51,6 @@ Realm = "localdomain";
# Disable use of SCTP protocol (only listen and connect over TCP)
# Default : SCTP enabled
#No_SCTP;
No_SCTP;
# This option is ignored if freeDiameter is compiled with DISABLE_SCTP option.
# Prefer TCP instead of SCTP for establishing new connections.
@@ -80,7 +79,7 @@ No_SCTP;
#ListenOn = "202.249.37.5";
#ListenOn = "2001:200:903:2::202:1";
#ListenOn = "fe80::21c:5ff:fe98:7d62%eth0";
ListenOn = "10.1.35.214";
ListenOn = "127.0.0.4";
##############################################################
@@ -107,8 +106,7 @@ ListenOn = "10.1.35.214";
# Default : NO DEFAULT
#TLS_Cred = "<x509 certif file.PEM>" , "<x509 private key file.PEM>";
#TLS_Cred = "/etc/ssl/certs/freeDiameter.pem", "/etc/ssl/private/freeDiameter.key";
TLS_Cred = "@prefix@/etc/freeDiameter/hss.cert.pem",
"@prefix@/etc/freeDiameter/hss.key.pem";
TLS_Cred = "@sysconfdir@/freeDiameter/hss.cert.pem", "@sysconfdir@/freeDiameter/hss.key.pem";
# Certificate authority / trust anchors
# The file containing the list of trusted Certificate Authorities (PEM list)
@@ -116,7 +114,7 @@ TLS_Cred = "@prefix@/etc/freeDiameter/hss.cert.pem",
# The directive can appear several times to specify several files.
# Default : GNUTLS default behavior
#TLS_CA = "<file.PEM>";
TLS_CA = "@prefix@/etc/freeDiameter/cacert.pem";
TLS_CA = "@sysconfdir@/freeDiameter/cacert.pem";
# Certificate Revocation List file
# The information about revoked certificates.
@@ -224,14 +222,13 @@ TLS_CA = "@prefix@/etc/freeDiameter/cacert.pem";
# 4 - full - display the complete information on a single long line
# 8 - tree - display the complete information in an easier to read format spanning several lines.
LoadExtension = "@prefix@/lib/nextepc/dbg_msg_dumps.so" : "0x8888";
LoadExtension = "@prefix@/lib/nextepc/dict_rfc5777.so";
LoadExtension = "@prefix@/lib/nextepc/dict_mip6i.so";
LoadExtension = "@prefix@/lib/nextepc/dict_nasreq.so";
LoadExtension = "@prefix@/lib/nextepc/dict_nas_mipv6.so";
LoadExtension = "@prefix@/lib/nextepc/dict_dcca.so";
LoadExtension = "@prefix@/lib/nextepc/dict_dcca_3gpp.so";
LoadExtension = "@prefix@/lib/nextepc/dict_s6a.so";
LoadExtension = "@libdir@/freeDiameter/dbg_msg_dumps.fdx" : "0x8888";
LoadExtension = "@libdir@/freeDiameter/dict_rfc5777.fdx";
LoadExtension = "@libdir@/freeDiameter/dict_mip6i.fdx";
LoadExtension = "@libdir@/freeDiameter/dict_nasreq.fdx";
LoadExtension = "@libdir@/freeDiameter/dict_nas_mipv6.fdx";
LoadExtension = "@libdir@/freeDiameter/dict_dcca.fdx";
LoadExtension = "@libdir@/freeDiameter/dict_dcca_3gpp.fdx";
##############################################################
@@ -263,6 +260,6 @@ LoadExtension = "@prefix@/lib/nextepc/dict_s6a.so";
# Examples:
#ConnectPeer = "aaa.wide.ad.jp";
#ConnectPeer = "old.diameter.serv" { TcTimer = 60; TLS_old_method; No_SCTP; Port=3868; } ;
ConnectPeer = "mme.localdomain" { ConnectTo = "10.1.35.215"; No_TLS; };
ConnectPeer = "mme.localdomain" { ConnectTo = "127.0.0.2"; No_TLS; };
##############################################################

View File

@@ -0,0 +1,15 @@
-----BEGIN RSA PRIVATE KEY-----
MIICXQIBAAKBgQDT57ptFGWv35DlSlNWofaJLsvuztZzn0i2lnhnp4cYuKvDCzGz
ApJI7UmsQMETOxNYUMwuWUTpfjECFPAYgpUQ5DeyXRQZHUuP6R9Fdc8K4I974XB7
q+SvK3xNfwDY68/zlqv8BE8hrdjElAUC//MSSIiezs83KeAoOTdiBe1tXQIDAQAB
AoGBAM7ShI2Ec/9lSInSsmaC7BpW12p87KirFZBIarpYs634SIS0v0xFvTt6hgae
qRO4/BedvLucG3t91B2BDBoQEaZELCjJ9kCUtzphW+u8/SUvPUCfb5xiLLeDQCVR
oU45JuqlF+ro9XM0x7f1REuTza1Xr20O5n5TzaCzQkdTlMdtAkEA+Yk9aS589D2c
TAj7H5nQMFai/z0JKM7kuBmXaqbsPtnYjdNvVYsCRPcjbhyfIjN88o/QGuUuInpb
PyzUZh3x2wJBANlk8d5ZVco+UE1NX0KzpEXHMY+z8kE4f8IMy0KN1V+An0ZbdxJE
X0aUMz9/K0+V6n0rlpY4QdOnTnbIEg2hTycCQDXBUM9lylk7JH5kuORX2Ddxkm91
kJGP8EmQicPZ7a6kczgqQiOlbHm625EO7WEKwnHmdSg2Ergur5VubNsKvF0CQQCc
sbv8rpu9qOisr2ZIZ7+yY/9/Ow8Un6rGrf4cPKtdqRIk3myXCB08fDnsPLd1J/Pa
wP5LzMT10BQoXdFVbb3lAkBpNXUkts8O1YxSG5zTruvygjU2n4Lova31icJ8HFaG
pfKHJpqDGPooupFxeCsPVPBZIRtxW70CZcr77eW/XKXv
-----END RSA PRIVATE KEY-----

View File

@@ -0,0 +1,57 @@
# Copyright (C) 2019 by Sukchan Lee <acetcom@gmail.com>
# This file is part of Open5GS.
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <https://www.gnu.org/licenses/>.
freediameter_sysconfdir = join_paths(sysconfdir, 'freeDiameter')
meson.add_install_script(python3_exe, '-c',
mkdir_p.format(freediameter_sysconfdir))
freediameter_conf = '''
mme.conf
hss.conf
pgw.conf
pcrf.conf
'''.split()
foreach file : freediameter_conf
gen = configure_file(
input : file + '.in',
output : file,
configuration : conf_data)
meson.add_install_script(python3_exe, '-c',
install_conf.format(gen, freediameter_sysconfdir))
endforeach
freediameter_pem = '''
cacert.pem
mme.cert.pem
mme.key.pem
hss.cert.pem
hss.key.pem
pgw.cert.pem
pgw.key.pem
pcrf.cert.pem
pcrf.key.pem
'''.split()
foreach file : freediameter_pem
gen = configure_file(
input : file,
output : file,
configuration : conf_data)
meson.add_install_script(python3_exe, '-c',
install_conf.format(gen, freediameter_sysconfdir))
endforeach

View File

@@ -0,0 +1,60 @@
Certificate:
Data:
Version: 3 (0x2)
Serial Number: 1 (0x1)
Signature Algorithm: sha256WithRSAEncryption
Issuer: CN=ca.localdomain, C=KO, ST=Seoul, L=Nowon, O=Open5GS, OU=Tests
Validity
Not Before: Oct 20 06:43:58 2019 GMT
Not After : Oct 17 06:43:58 2029 GMT
Subject: C=KO, ST=Seoul, O=Open5GS, OU=Tests, CN=mme.localdomain
Subject Public Key Info:
Public Key Algorithm: rsaEncryption
RSA Public-Key: (1024 bit)
Modulus:
00:b5:3a:31:ed:bf:fe:cd:e7:50:cc:94:ba:3d:fd:
2f:e6:cb:83:25:3d:82:93:26:57:b4:2f:6b:29:d9:
fd:80:c8:c5:82:9c:09:17:14:38:91:57:ac:72:b0:
86:d4:6f:bd:6b:fa:b9:60:51:9b:ab:6b:68:37:15:
c7:de:8b:bd:e8:da:5a:49:75:03:33:09:8e:49:e4:
d9:5b:3c:2f:ca:47:9b:95:d5:6f:16:e4:8d:39:b4:
39:dd:51:1a:55:27:68:b9:a0:24:ad:1c:18:48:bb:
49:54:ae:03:a3:0b:b8:e5:da:b4:c2:7f:09:a4:12:
8e:97:08:58:24:6a:4b:f4:87
Exponent: 65537 (0x10001)
X509v3 extensions:
X509v3 Basic Constraints:
CA:FALSE
Netscape Comment:
OpenSSL Generated Certificate
X509v3 Subject Key Identifier:
20:74:06:F0:AF:F6:2D:90:D1:CB:8C:5C:AB:73:D7:45:99:31:DD:AA
X509v3 Authority Key Identifier:
keyid:C5:38:DC:BA:0F:C3:29:6E:3D:99:07:96:D0:87:12:FD:B8:48:CC:37
Signature Algorithm: sha256WithRSAEncryption
0a:f5:fd:1f:19:52:9a:99:ec:34:67:e8:57:dc:61:73:c0:05:
b0:53:e3:8f:66:86:c9:99:af:28:5a:2a:06:a8:53:b1:80:ea:
5c:c9:ad:93:ec:b8:b4:b0:e4:04:8b:85:1b:08:93:f2:71:b1:
21:ab:80:40:e4:27:c6:c5:7a:56:f2:d2:33:6c:f0:1d:f4:99:
85:55:60:9c:eb:d3:b8:e3:4b:e5:be:1e:d2:39:d5:55:6f:4c:
20:07:c8:24:1c:21:70:e4:54:17:0b:a5:66:17:be:8b:5c:73:
ca:5e:42:6e:27:15:18:69:dc:c6:49:97:d7:66:e0:a8:ad:9c:
f1:b7
-----BEGIN CERTIFICATE-----
MIICsjCCAhugAwIBAgIBATANBgkqhkiG9w0BAQsFADBoMRcwFQYDVQQDDA5jYS5s
b2NhbGRvbWFpbjELMAkGA1UEBhMCS08xDjAMBgNVBAgMBVNlb3VsMQ4wDAYDVQQH
DAVOb3dvbjEQMA4GA1UECgwHT3BlbjVHUzEOMAwGA1UECwwFVGVzdHMwHhcNMTkx
MDIwMDY0MzU4WhcNMjkxMDE3MDY0MzU4WjBZMQswCQYDVQQGEwJLTzEOMAwGA1UE
CAwFU2VvdWwxEDAOBgNVBAoMB09wZW41R1MxDjAMBgNVBAsMBVRlc3RzMRgwFgYD
VQQDDA9tbWUubG9jYWxkb21haW4wgZ8wDQYJKoZIhvcNAQEBBQADgY0AMIGJAoGB
ALU6Me2//s3nUMyUuj39L+bLgyU9gpMmV7QvaynZ/YDIxYKcCRcUOJFXrHKwhtRv
vWv6uWBRm6traDcVx96LvejaWkl1AzMJjknk2Vs8L8pHm5XVbxbkjTm0Od1RGlUn
aLmgJK0cGEi7SVSuA6MLuOXatMJ/CaQSjpcIWCRqS/SHAgMBAAGjezB5MAkGA1Ud
EwQCMAAwLAYJYIZIAYb4QgENBB8WHU9wZW5TU0wgR2VuZXJhdGVkIENlcnRpZmlj
YXRlMB0GA1UdDgQWBBQgdAbwr/YtkNHLjFyrc9dFmTHdqjAfBgNVHSMEGDAWgBTF
ONy6D8Mpbj2ZB5bQhxL9uEjMNzANBgkqhkiG9w0BAQsFAAOBgQAK9f0fGVKamew0
Z+hX3GFzwAWwU+OPZobJma8oWioGqFOxgOpcya2T7Li0sOQEi4UbCJPycbEhq4BA
5CfGxXpW8tIzbPAd9JmFVWCc69O440vlvh7SOdVVb0wgB8gkHCFw5FQXC6VmF76L
XHPKXkJuJxUYadzGSZfXZuCorZzxtw==
-----END CERTIFICATE-----

View File

@@ -51,7 +51,6 @@ Realm = "localdomain";
# Disable use of SCTP protocol (only listen and connect over TCP)
# Default : SCTP enabled
#No_SCTP;
No_SCTP;
# This option is ignored if freeDiameter is compiled with DISABLE_SCTP option.
# Prefer TCP instead of SCTP for establishing new connections.
@@ -80,7 +79,7 @@ No_SCTP;
#ListenOn = "202.249.37.5";
#ListenOn = "2001:200:903:2::202:1";
#ListenOn = "fe80::21c:5ff:fe98:7d62%eth0";
ListenOn = "10.1.35.215";
ListenOn = "127.0.0.2";
##############################################################
@@ -107,8 +106,7 @@ ListenOn = "10.1.35.215";
# Default : NO DEFAULT
#TLS_Cred = "<x509 certif file.PEM>" , "<x509 private key file.PEM>";
#TLS_Cred = "/etc/ssl/certs/freeDiameter.pem", "/etc/ssl/private/freeDiameter.key";
TLS_Cred = "@prefix@/etc/freeDiameter/mme.cert.pem",
"@prefix@/etc/freeDiameter/mme.key.pem";
TLS_Cred = "@sysconfdir@/freeDiameter/mme.cert.pem", "@sysconfdir@/freeDiameter/mme.key.pem";
# Certificate authority / trust anchors
# The file containing the list of trusted Certificate Authorities (PEM list)
@@ -116,7 +114,7 @@ TLS_Cred = "@prefix@/etc/freeDiameter/mme.cert.pem",
# The directive can appear several times to specify several files.
# Default : GNUTLS default behavior
#TLS_CA = "<file.PEM>";
TLS_CA = "@prefix@/etc/freeDiameter/cacert.pem";
TLS_CA = "@sysconfdir@/freeDiameter/cacert.pem";
# Certificate Revocation List file
# The information about revoked certificates.
@@ -224,14 +222,13 @@ TLS_CA = "@prefix@/etc/freeDiameter/cacert.pem";
# 4 - full - display the complete information on a single long line
# 8 - tree - display the complete information in an easier to read format spanning several lines.
LoadExtension = "@prefix@/lib/nextepc/dbg_msg_dumps.so" : "0x8888";
LoadExtension = "@prefix@/lib/nextepc/dict_rfc5777.so";
LoadExtension = "@prefix@/lib/nextepc/dict_mip6i.so";
LoadExtension = "@prefix@/lib/nextepc/dict_nasreq.so";
LoadExtension = "@prefix@/lib/nextepc/dict_nas_mipv6.so";
LoadExtension = "@prefix@/lib/nextepc/dict_dcca.so";
LoadExtension = "@prefix@/lib/nextepc/dict_dcca_3gpp.so";
LoadExtension = "@prefix@/lib/nextepc/dict_s6a.so";
LoadExtension = "@libdir@/freeDiameter/dbg_msg_dumps.fdx" : "0x8888";
LoadExtension = "@libdir@/freeDiameter/dict_rfc5777.fdx";
LoadExtension = "@libdir@/freeDiameter/dict_mip6i.fdx";
LoadExtension = "@libdir@/freeDiameter/dict_nasreq.fdx";
LoadExtension = "@libdir@/freeDiameter/dict_nas_mipv6.fdx";
LoadExtension = "@libdir@/freeDiameter/dict_dcca.fdx";
LoadExtension = "@libdir@/freeDiameter/dict_dcca_3gpp.fdx";
##############################################################
@@ -263,7 +260,7 @@ LoadExtension = "@prefix@/lib/nextepc/dict_s6a.so";
# Examples:
#ConnectPeer = "aaa.wide.ad.jp";
#ConnectPeer = "old.diameter.serv" { TcTimer = 60; TLS_old_method; No_SCTP; Port=3868; } ;
ConnectPeer = "hss.localdomain" { ConnectTo = "10.1.35.214"; No_TLS; };
ConnectPeer = "hss.localdomain" { ConnectTo = "127.0.0.4"; No_TLS; };
##############################################################

View File

@@ -0,0 +1,15 @@
-----BEGIN RSA PRIVATE KEY-----
MIICXQIBAAKBgQC1OjHtv/7N51DMlLo9/S/my4MlPYKTJle0L2sp2f2AyMWCnAkX
FDiRV6xysIbUb71r+rlgUZura2g3Fcfei73o2lpJdQMzCY5J5NlbPC/KR5uV1W8W
5I05tDndURpVJ2i5oCStHBhIu0lUrgOjC7jl2rTCfwmkEo6XCFgkakv0hwIDAQAB
AoGBALL3ID1H/8m4Z9tP+EelEzvYt8772kmUcMHYnfw7cJNQMXQUwQlQh7hIG107
JDr/idDrTUtn69GxhL35PWJxH3z7b9nPQCcPZQ3PZWW8lDXNqNCjV5j+2zDAXqkc
IyxLQuPnTyn9kcB/OIjNGrr86/6JKS1ipbT9AIllV+br5OMhAkEA7KMLbiAI03JH
wBhtnHdtj7NETXDnZd0Plj3ATpa7SOtxmBtqVVOH/1ghAqJ0YScrqa9+eEqcn6mv
sHoJ10wVVwJBAMQOdR6b6H3Swy5dZNYzSKDsWRf4cNK5Kz8HJ8UOLbHTjzcDHNsD
n09McdcnWgNAxV6J0YJzu4LWQjT4b1e77FECQAd+8rG+Wgk4qYUwQOif79yJdTRu
yyWy5vd/ZUQYCj65FpQW6jthtgEkrYcD1mPtdbieUodE9cko+uPAOeeUBWkCQQCt
lL9NImxtOjVkz3t/ylf7YkZfWq9JYnhPjV5AsZTzZIPgCPl7T3G1G9GO1GB1kNsu
IIdGIIFcDacAjxTFcLSBAkA1Bl7gARE2XZR9iVVJ/On2hWFZhtG9RId+k0pVUxKs
KXYnYSiD/WIeVZ6IBswqL2AnEV+kBBuZ7D9aEiDYbXQ/
-----END RSA PRIVATE KEY-----

View File

@@ -0,0 +1,60 @@
Certificate:
Data:
Version: 3 (0x2)
Serial Number: 4 (0x4)
Signature Algorithm: sha256WithRSAEncryption
Issuer: CN=ca.localdomain, C=KO, ST=Seoul, L=Nowon, O=Open5GS, OU=Tests
Validity
Not Before: Oct 20 06:43:58 2019 GMT
Not After : Oct 17 06:43:58 2029 GMT
Subject: C=KO, ST=Seoul, O=Open5GS, OU=Tests, CN=pcrf.localdomain
Subject Public Key Info:
Public Key Algorithm: rsaEncryption
RSA Public-Key: (1024 bit)
Modulus:
00:c4:63:95:b8:b2:99:ca:4d:dd:ac:b8:e2:78:29:
43:03:8a:de:6b:05:99:97:b7:90:39:f8:f6:b8:20:
77:44:4b:1b:95:6c:ad:e1:5f:2c:48:a2:8a:d2:95:
72:0e:f9:e1:cf:70:4e:45:6e:71:7e:2a:41:29:93:
7a:12:01:73:0b:10:20:7a:38:66:9f:75:76:21:d6:
7d:0c:ea:35:47:16:d6:c3:9f:41:ec:e9:98:36:16:
84:9f:43:38:2b:b2:c8:d9:f3:6c:07:82:e4:ce:c8:
a3:f3:c3:60:13:f3:46:44:fa:f0:ee:a9:48:40:8f:
80:3e:60:73:ff:6d:59:03:2f
Exponent: 65537 (0x10001)
X509v3 extensions:
X509v3 Basic Constraints:
CA:FALSE
Netscape Comment:
OpenSSL Generated Certificate
X509v3 Subject Key Identifier:
53:A8:0E:78:45:FB:38:A6:CF:30:E5:FF:BB:CA:E6:CF:A3:4A:DC:53
X509v3 Authority Key Identifier:
keyid:C5:38:DC:BA:0F:C3:29:6E:3D:99:07:96:D0:87:12:FD:B8:48:CC:37
Signature Algorithm: sha256WithRSAEncryption
47:6b:2b:f9:03:8d:c1:fd:84:21:fe:3c:5b:8c:9d:c1:48:bc:
ae:90:67:c5:ad:1a:80:e9:97:9c:c2:d4:31:1b:7d:4e:1a:72:
09:fb:92:32:b3:82:79:59:cd:92:21:27:c7:34:c3:76:27:a8:
11:33:cd:4a:ec:10:cb:44:89:da:47:1a:a4:6a:06:10:fb:f1:
6a:de:d5:1a:15:de:4a:54:6f:29:b8:de:ec:20:f2:d1:c3:0c:
9a:8e:97:46:8c:21:c3:63:7f:41:52:41:7e:73:47:43:0a:d1:
86:0b:f0:fb:9a:1f:6d:b5:93:88:95:88:84:6d:28:8e:29:2e:
66:9d
-----BEGIN CERTIFICATE-----
MIICszCCAhygAwIBAgIBBDANBgkqhkiG9w0BAQsFADBoMRcwFQYDVQQDDA5jYS5s
b2NhbGRvbWFpbjELMAkGA1UEBhMCS08xDjAMBgNVBAgMBVNlb3VsMQ4wDAYDVQQH
DAVOb3dvbjEQMA4GA1UECgwHT3BlbjVHUzEOMAwGA1UECwwFVGVzdHMwHhcNMTkx
MDIwMDY0MzU4WhcNMjkxMDE3MDY0MzU4WjBaMQswCQYDVQQGEwJLTzEOMAwGA1UE
CAwFU2VvdWwxEDAOBgNVBAoMB09wZW41R1MxDjAMBgNVBAsMBVRlc3RzMRkwFwYD
VQQDDBBwY3JmLmxvY2FsZG9tYWluMIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKB
gQDEY5W4spnKTd2suOJ4KUMDit5rBZmXt5A5+Pa4IHdESxuVbK3hXyxIoorSlXIO
+eHPcE5FbnF+KkEpk3oSAXMLECB6OGafdXYh1n0M6jVHFtbDn0Hs6Zg2FoSfQzgr
ssjZ82wHguTOyKPzw2AT80ZE+vDuqUhAj4A+YHP/bVkDLwIDAQABo3sweTAJBgNV
HRMEAjAAMCwGCWCGSAGG+EIBDQQfFh1PcGVuU1NMIEdlbmVyYXRlZCBDZXJ0aWZp
Y2F0ZTAdBgNVHQ4EFgQUU6gOeEX7OKbPMOX/u8rmz6NK3FMwHwYDVR0jBBgwFoAU
xTjcug/DKW49mQeW0IcS/bhIzDcwDQYJKoZIhvcNAQELBQADgYEAR2sr+QONwf2E
If48W4ydwUi8rpBnxa0agOmXnMLUMRt9ThpyCfuSMrOCeVnNkiEnxzTDdieoETPN
SuwQy0SJ2kcapGoGEPvxat7VGhXeSlRvKbje7CDy0cMMmo6XRowhw2N/QVJBfnNH
QwrRhgvw+5ofbbWTiJWIhG0ojikuZp0=
-----END CERTIFICATE-----

View File

@@ -51,7 +51,6 @@ Realm = "localdomain";
# Disable use of SCTP protocol (only listen and connect over TCP)
# Default : SCTP enabled
#No_SCTP;
No_SCTP;
# This option is ignored if freeDiameter is compiled with DISABLE_SCTP option.
# Prefer TCP instead of SCTP for establishing new connections.
@@ -80,7 +79,7 @@ No_SCTP;
#ListenOn = "202.249.37.5";
#ListenOn = "2001:200:903:2::202:1";
#ListenOn = "fe80::21c:5ff:fe98:7d62%eth0";
ListenOn = "10.1.35.218";
ListenOn = "127.0.0.5";
##############################################################
@@ -107,7 +106,7 @@ ListenOn = "10.1.35.218";
# Default : NO DEFAULT
#TLS_Cred = "<x509 certif file.PEM>" , "<x509 private key file.PEM>";
#TLS_Cred = "/etc/ssl/certs/freeDiameter.pem", "/etc/ssl/private/freeDiameter.key";
TLS_Cred = "@prefix@/etc/freeDiameter/pcrf.cert.pem", "@prefix@/etc/freeDiameter/pcrf.key.pem";
TLS_Cred = "@sysconfdir@/freeDiameter/pcrf.cert.pem", "@sysconfdir@/freeDiameter/pcrf.key.pem";
# Certificate authority / trust anchors
# The file containing the list of trusted Certificate Authorities (PEM list)
@@ -115,7 +114,7 @@ TLS_Cred = "@prefix@/etc/freeDiameter/pcrf.cert.pem", "@prefix@/etc/freeDiameter
# The directive can appear several times to specify several files.
# Default : GNUTLS default behavior
#TLS_CA = "<file.PEM>";
TLS_CA = "@prefix@/etc/freeDiameter/cacert.pem";
TLS_CA = "@sysconfdir@/freeDiameter/cacert.pem";
# Certificate Revocation List file
# The information about revoked certificates.
@@ -223,14 +222,13 @@ TLS_CA = "@prefix@/etc/freeDiameter/cacert.pem";
# 4 - full - display the complete information on a single long line
# 8 - tree - display the complete information in an easier to read format spanning several lines.
LoadExtension = "@prefix@/lib/nextepc/dbg_msg_dumps.so" : "0x8888";
LoadExtension = "@prefix@/lib/nextepc/dict_rfc5777.so";
LoadExtension = "@prefix@/lib/nextepc/dict_mip6i.so";
LoadExtension = "@prefix@/lib/nextepc/dict_nasreq.so";
LoadExtension = "@prefix@/lib/nextepc/dict_nas_mipv6.so";
LoadExtension = "@prefix@/lib/nextepc/dict_dcca.so";
LoadExtension = "@prefix@/lib/nextepc/dict_dcca_3gpp.so";
#LoadExtension = "@prefix@/lib/nextepc/dict_legacy_xml.so" : "@prefix@/etc/freeDiameter/dict_legacy_xml.conf";
LoadExtension = "@libdir@/freeDiameter/dbg_msg_dumps.fdx" : "0x8888";
LoadExtension = "@libdir@/freeDiameter/dict_rfc5777.fdx";
LoadExtension = "@libdir@/freeDiameter/dict_mip6i.fdx";
LoadExtension = "@libdir@/freeDiameter/dict_nasreq.fdx";
LoadExtension = "@libdir@/freeDiameter/dict_nas_mipv6.fdx";
LoadExtension = "@libdir@/freeDiameter/dict_dcca.fdx";
LoadExtension = "@libdir@/freeDiameter/dict_dcca_3gpp.fdx";
##############################################################
@@ -262,6 +260,6 @@ LoadExtension = "@prefix@/lib/nextepc/dict_dcca_3gpp.so";
# Examples:
#ConnectPeer = "aaa.wide.ad.jp";
#ConnectPeer = "old.diameter.serv" { TcTimer = 60; TLS_old_method; No_SCTP; Port=3868; } ;
ConnectPeer = "pgw.localdomain" { ConnectTo = "10.1.35.219"; No_TLS; };
ConnectPeer = "pgw.localdomain" { ConnectTo = "127.0.0.3"; No_TLS; };
##############################################################

View File

@@ -0,0 +1,15 @@
-----BEGIN RSA PRIVATE KEY-----
MIICXQIBAAKBgQDEY5W4spnKTd2suOJ4KUMDit5rBZmXt5A5+Pa4IHdESxuVbK3h
XyxIoorSlXIO+eHPcE5FbnF+KkEpk3oSAXMLECB6OGafdXYh1n0M6jVHFtbDn0Hs
6Zg2FoSfQzgrssjZ82wHguTOyKPzw2AT80ZE+vDuqUhAj4A+YHP/bVkDLwIDAQAB
AoGBAJG6b+RhK3uSMjcz7mFKBP9A8fCqdCG/xdcu5i0VcksMDMjhn1mIXPz9GFRR
LxTr2eMrK/mbjb4YLshiNgfcaXdzpZGauK15PNEHemygI4et9b0iE3ZfGM3dGEGi
UmWzXgO347S8CNmm6JX/gtAaCafeapmyms6E4teYFp1UMRIBAkEA7zrq9HZT1CZu
fWN9DraOUVrgMdV8Q/qdKzAqMsTf95r43aRxxe8ZkXpQuf1X0kBDH8cIeOAVu96/
hmfxCcVZAQJBANIn3YU7xCnUbdK29tYuxAzEw7j4pdfjHEPgkvjV1xsGVwM+DQkF
/yrSgAujxR70uGfBcUF/M9XRniBWg+FRrC8CQBXJ5vZnBJGRAoU3F3/Mjr/IKB1B
1XSXkdMKKv2+wqtZmQsO3DHr6gc+/bVC5snGgpaVWScxOamHyyfhtalvKQECQG+w
PCyo3NIWUd+g2YJvDEZ09EgD7a/UxZrVaYbRryZvsiLJAYiAJWKOyPpmqUaQbMjH
p/dVMSk75Dvvfttq2oUCQQDuEO0xY0gHxzFYH1K82Yw5aDdRsryEQYpb5e+jduH1
EHACfc2H4Oc3/a39q7On+HnZgxK7gFMpGW+D0MdDDoL6
-----END RSA PRIVATE KEY-----

View File

@@ -0,0 +1,60 @@
Certificate:
Data:
Version: 3 (0x2)
Serial Number: 3 (0x3)
Signature Algorithm: sha256WithRSAEncryption
Issuer: CN=ca.localdomain, C=KO, ST=Seoul, L=Nowon, O=Open5GS, OU=Tests
Validity
Not Before: Oct 20 06:43:58 2019 GMT
Not After : Oct 17 06:43:58 2029 GMT
Subject: C=KO, ST=Seoul, O=Open5GS, OU=Tests, CN=pgw.localdomain
Subject Public Key Info:
Public Key Algorithm: rsaEncryption
RSA Public-Key: (1024 bit)
Modulus:
00:bf:bc:94:38:f4:03:a5:23:8c:21:ba:4e:5e:51:
f7:76:f5:e1:1e:43:fc:04:a0:f9:b9:9f:47:dd:d3:
b5:aa:83:e8:cb:d0:3c:56:0e:4d:fd:de:b6:93:fa:
eb:a3:94:4a:79:68:1d:84:61:cf:b7:d0:ac:d0:41:
ef:66:e0:8a:40:ec:b4:d2:5b:ce:cc:2c:cd:7d:7e:
87:73:b0:4b:4d:79:54:3b:a4:48:bb:19:4f:9f:7e:
30:e7:af:17:32:a3:95:af:c4:a5:19:8f:53:3c:16:
cd:54:9d:38:98:2b:0f:b7:cd:33:91:f0:ef:b8:d2:
9f:0e:fe:8e:77:9d:e8:ba:f3
Exponent: 65537 (0x10001)
X509v3 extensions:
X509v3 Basic Constraints:
CA:FALSE
Netscape Comment:
OpenSSL Generated Certificate
X509v3 Subject Key Identifier:
EB:F6:EA:D3:F2:F2:C6:C6:83:EF:13:CD:AF:49:A8:ED:03:DF:7F:ED
X509v3 Authority Key Identifier:
keyid:C5:38:DC:BA:0F:C3:29:6E:3D:99:07:96:D0:87:12:FD:B8:48:CC:37
Signature Algorithm: sha256WithRSAEncryption
3b:00:ef:c4:9f:69:c3:22:06:76:6f:70:88:50:1c:f3:a2:9a:
68:00:34:fa:3a:68:b2:94:fe:7c:31:7d:4e:95:bd:47:4d:69:
1f:76:32:64:83:1b:5b:11:71:bb:0a:7a:af:72:54:7a:dc:30:
51:e5:93:27:8c:8a:51:e6:e5:15:53:70:14:85:3b:77:1a:87:
ce:d0:6f:31:07:5d:14:30:d7:de:a0:b5:a7:a1:96:18:1a:fd:
ea:9f:c2:ea:bb:72:52:84:b6:57:6d:70:93:35:64:d3:8b:82:
1b:7b:ea:85:8a:fb:c6:b3:e0:66:ad:db:11:dd:5e:6e:22:dd:
b4:23
-----BEGIN CERTIFICATE-----
MIICsjCCAhugAwIBAgIBAzANBgkqhkiG9w0BAQsFADBoMRcwFQYDVQQDDA5jYS5s
b2NhbGRvbWFpbjELMAkGA1UEBhMCS08xDjAMBgNVBAgMBVNlb3VsMQ4wDAYDVQQH
DAVOb3dvbjEQMA4GA1UECgwHT3BlbjVHUzEOMAwGA1UECwwFVGVzdHMwHhcNMTkx
MDIwMDY0MzU4WhcNMjkxMDE3MDY0MzU4WjBZMQswCQYDVQQGEwJLTzEOMAwGA1UE
CAwFU2VvdWwxEDAOBgNVBAoMB09wZW41R1MxDjAMBgNVBAsMBVRlc3RzMRgwFgYD
VQQDDA9wZ3cubG9jYWxkb21haW4wgZ8wDQYJKoZIhvcNAQEBBQADgY0AMIGJAoGB
AL+8lDj0A6UjjCG6Tl5R93b14R5D/ASg+bmfR93TtaqD6MvQPFYOTf3etpP666OU
SnloHYRhz7fQrNBB72bgikDstNJbzswszX1+h3OwS015VDukSLsZT59+MOevFzKj
la/EpRmPUzwWzVSdOJgrD7fNM5Hw77jSnw7+jned6LrzAgMBAAGjezB5MAkGA1Ud
EwQCMAAwLAYJYIZIAYb4QgENBB8WHU9wZW5TU0wgR2VuZXJhdGVkIENlcnRpZmlj
YXRlMB0GA1UdDgQWBBTr9urT8vLGxoPvE82vSajtA99/7TAfBgNVHSMEGDAWgBTF
ONy6D8Mpbj2ZB5bQhxL9uEjMNzANBgkqhkiG9w0BAQsFAAOBgQA7AO/En2nDIgZ2
b3CIUBzzoppoADT6OmiylP58MX1Olb1HTWkfdjJkgxtbEXG7CnqvclR63DBR5ZMn
jIpR5uUVU3AUhTt3GofO0G8xB10UMNfeoLWnoZYYGv3qn8Lqu3JShLZXbXCTNWTT
i4Ibe+qFivvGs+BmrdsR3V5uIt20Iw==
-----END CERTIFICATE-----

View File

@@ -51,7 +51,6 @@ Realm = "localdomain";
# Disable use of SCTP protocol (only listen and connect over TCP)
# Default : SCTP enabled
#No_SCTP;
No_SCTP;
# This option is ignored if freeDiameter is compiled with DISABLE_SCTP option.
# Prefer TCP instead of SCTP for establishing new connections.
@@ -80,7 +79,7 @@ No_SCTP;
#ListenOn = "202.249.37.5";
#ListenOn = "2001:200:903:2::202:1";
#ListenOn = "fe80::21c:5ff:fe98:7d62%eth0";
ListenOn = "10.1.35.219";
ListenOn = "127.0.0.3";
##############################################################
@@ -107,7 +106,7 @@ ListenOn = "10.1.35.219";
# Default : NO DEFAULT
#TLS_Cred = "<x509 certif file.PEM>" , "<x509 private key file.PEM>";
#TLS_Cred = "/etc/ssl/certs/freeDiameter.pem", "/etc/ssl/private/freeDiameter.key";
TLS_Cred = "@prefix@/etc/freeDiameter/pgw.cert.pem", "@prefix@/etc/freeDiameter/pgw.key.pem";
TLS_Cred = "@sysconfdir@/freeDiameter/pgw.cert.pem", "@sysconfdir@/freeDiameter/pgw.key.pem";
# Certificate authority / trust anchors
# The file containing the list of trusted Certificate Authorities (PEM list)
@@ -115,7 +114,7 @@ TLS_Cred = "@prefix@/etc/freeDiameter/pgw.cert.pem", "@prefix@/etc/freeDiameter/
# The directive can appear several times to specify several files.
# Default : GNUTLS default behavior
#TLS_CA = "<file.PEM>";
TLS_CA = "@prefix@/etc/freeDiameter/cacert.pem";
TLS_CA = "@sysconfdir@/freeDiameter/cacert.pem";
# Certificate Revocation List file
# The information about revoked certificates.
@@ -223,14 +222,13 @@ TLS_CA = "@prefix@/etc/freeDiameter/cacert.pem";
# 4 - full - display the complete information on a single long line
# 8 - tree - display the complete information in an easier to read format spanning several lines.
LoadExtension = "@prefix@/lib/nextepc/dbg_msg_dumps.so" : "0x8888";
LoadExtension = "@prefix@/lib/nextepc/dict_rfc5777.so";
LoadExtension = "@prefix@/lib/nextepc/dict_mip6i.so";
LoadExtension = "@prefix@/lib/nextepc/dict_nasreq.so";
LoadExtension = "@prefix@/lib/nextepc/dict_nas_mipv6.so";
LoadExtension = "@prefix@/lib/nextepc/dict_dcca.so";
LoadExtension = "@prefix@/lib/nextepc/dict_dcca_3gpp.so";
#LoadExtension = "@prefix@/lib/nextepc/dict_legacy_xml.so" : "@prefix@/etc/freeDiameter/dict_legacy_xml.conf";
LoadExtension = "@libdir@/freeDiameter/dbg_msg_dumps.fdx" : "0x8888";
LoadExtension = "@libdir@/freeDiameter/dict_rfc5777.fdx";
LoadExtension = "@libdir@/freeDiameter/dict_mip6i.fdx";
LoadExtension = "@libdir@/freeDiameter/dict_nasreq.fdx";
LoadExtension = "@libdir@/freeDiameter/dict_nas_mipv6.fdx";
LoadExtension = "@libdir@/freeDiameter/dict_dcca.fdx";
LoadExtension = "@libdir@/freeDiameter/dict_dcca_3gpp.fdx";
##############################################################
@@ -262,7 +260,7 @@ LoadExtension = "@prefix@/lib/nextepc/dict_dcca_3gpp.so";
# Examples:
#ConnectPeer = "aaa.wide.ad.jp";
#ConnectPeer = "old.diameter.serv" { TcTimer = 60; TLS_old_method; No_SCTP; Port=3868; } ;
ConnectPeer = "pcrf.localdomain" { ConnectTo = "10.1.35.218"; No_TLS; };
ConnectPeer = "pcrf.localdomain" { ConnectTo = "127.0.0.5"; No_TLS; };
##############################################################

View File

@@ -0,0 +1,15 @@
-----BEGIN RSA PRIVATE KEY-----
MIICXAIBAAKBgQC/vJQ49AOlI4whuk5eUfd29eEeQ/wEoPm5n0fd07Wqg+jL0DxW
Dk393raT+uujlEp5aB2EYc+30KzQQe9m4IpA7LTSW87MLM19fodzsEtNeVQ7pEi7
GU+ffjDnrxcyo5WvxKUZj1M8Fs1UnTiYKw+3zTOR8O+40p8O/o53nei68wIDAQAB
AoGAarZPHH+aw79MD718PnyKKVhhqZGW4xCgzFG9EtXwpu1xlHXaDt85QxFANo4R
teIjrPxoaTRzAlAOzn3T+0L/TnhU67WUOvSQEhGzS1liNNw024NekOy3rrqAvB3D
esmOtR5+LtadCb2CuJdL0XALUp+F/g25CoryXsKMIg4Eg9ECQQD9fbT7n3GurBlF
s1E+Ah1+fpD2qOvyFrK4Yzs/CYn5s1yEO0AMwLavO71Y+SIGzFnuIASbyEX4Adl/
hxSvDp5ZAkEAwaJmOzgLsLvSf5RkYzaX+/IO/DBYowDknalMobDplaOlK5LLFNiM
naEH6A6UV981OnIr6ScU8knC0HyDmmTyKwJAfu3jIdvE4OHsBaq0k4gbnKtjix8q
hh43f3ywve/Y1t+pA81nVPtqfnQ7a8HT9/N7VHFT3W17G6RRdDn/cWiwgQJAOuD+
5RLtuxfhshmVTPXU0S+Rju3EhgxHeAl628/Ht1DDcLR6PCR83ZGRreaBBRdCQDtn
TsYrgGEdc/forJH1cQJBAMzBcACt51/OuHtPF+kxeRqgLINji82EQOGmZBvtWySI
cRFndLh6N8OOkDnP2MwGY7j0jWveKE8mVA12ymMWZuU=
-----END RSA PRIVATE KEY-----

589
configs/installed.yaml.in Normal file
View File

@@ -0,0 +1,589 @@
db_uri: mongodb://localhost/open5gs
logger:
file: @localstatedir@/log/open5gs/open5gs.log
#
# o Set OGS_LOG_INFO to all domain level
# - If `level` is omitted, the default level is OGS_LOG_INFO)
# - If `domain` is omitted, the all domain level is set from 'level'
# (Nothing is needed)
#
# o Set OGS_LOG_ERROR to all domain level
# - `level` can be set with none, fatal, error, warn, info, debug, trace
# level: error
#
# o Set OGS_LOG_DEBUG to mme/emm domain level
# level: debug
# domain: mme,emm
#
# o Set OGS_LOG_TRACE to all domain level
# level: trace
# domain: core,s1ap,nas,fd,gtp,mme,emm,esm,sgw,pgw,hss,pcrf,event,tlv,mem,sock
#
#
# parameter:
#
# o Number of output streams per SCTP associations.
# sctp_streams: 30
#
# o Disable use of IPv4 addresses (only IPv6)
# no_ipv4: true
#
# o Disable use of IPv6 addresses (only IPv4)
# no_ipv6: true
#
# o Prefer IPv4 instead of IPv6 for estabishing new GTP connections.
# prefer_ipv4: true
#
# o Enable Multicast traffic to the UE
# multicast: true
#
# o Disable Stateless Address Autoconfiguration for IPv6
# no_slaac: true
#
#
parameter:
no_ipv6: true
#
# sctp:
#
# o heartbit_interval : 5000 (5secs)
# o rto_initial : 3000 (3secs)
# o rto_min : 1000 (1sec)
# o rto_max : 5000 (5secs)
# o max_num_of_ostreams : 30
# o max_num_of_istreams : 65535
# o max_attempts : 4
# o max_initial_timeout : 8000(8secs)
# o usrsctp_udp_port : 9899
sctp:
#
# max:
#
# o Maximum Number of SGW per MME
# sgw: 32
# o Maximum Number of PGW per MME
# pgw: 32
# o Maximum Number of VLR per MME
# vlr: 32
# o Maximum Number of eNodeB per MME
# enb: 32
# o Maximum Number of UE per eNodeB
# ue: 128
#
max:
#
# pool:
#
# o The Number of Default Memory Pool Size
#
# - Pool-size 128 => 8192 Number
# - Pool-size 256 => 4096 Number
# - Pool-size 512 => 2048 Number
# - Pool-size 1024 => 1024 Number
# - Pool-size 2048 => 512 Number
# - Pool-size 8192 => 128 Number
# - Pool-size 1024*1024 => 8 Number
#
# 128: 8192
# 256: 4096
# 512: 2048
# 1024: 1024
# 2048: 512
# 8192: 128
# big: 8
#
# o Memory of Packet Buffering in SGW
# - Maximum Number of packet(SDU size = 8Kbytes) pool in SGW
# - SGW Memory Usage : 65536 * 8Kbytes = 512Mbytes
#
# packet: 65536
pool:
mme:
freeDiameter: @sysconfdir@/freeDiameter/mme.conf
#
# <S1AP Server>>
#
# o S1AP Server(all address avaiable)
# s1ap:
#
# o S1AP Server(0.0.0.0:36412)
# s1ap:
# addr: 0.0.0.0
#
# o S1AP Server(127.0.0.1:36412, [::1]:36412)
# s1ap:
# - addr: 127.0.0.1
# - addr: ::1
# o S1AP Server(different port)
# s1ap:
# - addr: 127.0.0.1
# port: 36413
#
# o S1AP Server(address avaiable in `eth0` interface)
# s1ap:
# dev: eth0
#
s1ap:
#
# <GTP-C Server>>
#
# o GTP-C Server(all address avaiable)
# gtpc:
#
# o GTP-C Server(127.0.0.1:2123, [::1]:2123)
# gtpc:
# - addr: 127.0.0.1
# - addr: ::1
#
gtpc:
#
# <sgsap>
#
# o Single MSC/VLR(127.0.0.2)
# sgsap:
# addr: 127.0.0.2
# map:
# tai:
# plmn_id:
# mcc: 001
# mnc: 01
# tac: 4130
# lai:
# plmn_id:
# mcc: 001
# mnc: 01
# lac: 43690
# map:
# tai:
# plmn_id:
# mcc: 002
# mnc: 02
# tac: 4132
# lai:
# plmn_id:
# mcc: 002
# mnc: 02
# lac: 43692
#
# o Multiple MSC/VLR
# sgsap:
# - addr: 127.0.0.2
# port: 29119
# map:
# tai:
# plmn_id:
# mcc: 001
# mnc: 01
# tac: 4131
# lai:
# plmn_id:
# mcc: 001
# mnc: 01
# lac: 43691
# map:
# tai:
# plmn_id:
# mcc: 002
# mnc: 02
# tac: 4132
# lai:
# plmn_id:
# mcc: 002
# mnc: 02
# lac: 43692
# - addr
# - 127.0.0.3
# - fe80::2%@loopback_devname@
# map:
# tai:
# plmn_id:
# mcc: 001
# mnc: 01
# tac: 4132
# lai:
# plmn_id:
# mcc: 002
# mnc: 02
# lac: 43692
# - name: msc.open5gs.org
# map:
# tai:
# plmn_id:
# mcc: 001
# mnc: 01
# tac: 4133
# lai:
# plmn_id:
# mcc: 002
# mnc: 02
# lac: 43693
#
sgsap:
#
# <GUMMEI>
#
# o Multiple GUMMEI
# gummei:
# - plmn_id:
# mcc: 001
# mnc: 01
# mme_gid: 2
# mme_code: 1
# - plmn_id:
# - mcc: 002
# mnc: 02
# - mcc: 003
# mnc: 03
# mme_gid: [3, 4]
# mme_code:
# - 2
# - 3
#
gummei:
plmn_id:
mcc: 001
mnc: 01
mme_gid: 2
mme_code: 1
#
# <TAI>
#
# o Multiple TAI
# tai:
# - plmn_id:
# mcc: 001
# mnc: 01
# tac: [1, 2, 3]
# tai:
# - plmn_id:
# mcc: 002
# mnc: 02
# tac: 4
# - plmn_id:
# mcc: 003
# mnc: 03
# tac: 5
# tai:
# - plmn_id:
# mcc: 004
# mnc: 04
# tac: [6, 7]
# - plmn_id:
# mcc: 005
# mnc: 05
# tac: 8
# - plmn_id:
# mcc: 006
# mnc: 06
# tac: [9, 10]
#
tai:
plmn_id:
mcc: 001
mnc: 01
tac: 12345
security:
integrity_order : [ EIA1, EIA2, EIA0 ]
ciphering_order : [ EEA0, EEA1, EEA2 ]
#
# <Network Name>
# network_name:
# full: Open5GS
# short: Next
#
network_name:
full: Open5GS
hss:
freeDiameter: @sysconfdir@/freeDiameter/hss.conf
sgw:
#
# ------------------------ MME --------------------------
#
# o Specify SGW addresses the GTP-C must connect to
#
# o One SGW is defined. If prefer_ipv4 is not true, [fe80::2%@loopback_devname@] is selected.
# gtpc:
# addr:
# - 127.0.0.2
# - fe80::2%@loopback_devname@
#
# o Two SGW are defined. MME selects SGW with round-robin manner per UE
# gtpc:
# - addr: 127.0.0.2
# - addr: fe80::2%@loopback_devname@
#
# o Three SGW are defined. MME selects SGW with round-robin manner per UE
# gtpc:
# - addr
# - 127.0.0.2
# - fe80::2%@loopback_devname@
# - addr
# - 127.0.0.12
# - fe80::12%@loopback_devname@
# - name: sgw3.open5gs.org
#
# ------------------------ SGW --------------------------
#
# o GTP-C Server(127.0.0.2:2123, [fe80::2%@loopback_devname@]:2123)
# gtpc:
# addr:
# - 127.0.0.2
# - fe80::2%@loopback_devname@
#
# o On SGW, Same Configuration(127.0.0.2:2123, [fe80::2%@loopback_devname@]:2123) as below.
# gtpc:
# - addr: 127.0.0.2
# - addr: fe80::2%@loopback_devname@
#
gtpc:
addr: 127.0.0.2
#
# <SGW Selection Mode>
#
# o Round-Robin
# (If `selection_mode` is omitted, the default mode is Round-Robin)
#
# selection_mode: rr
# gtpc:
# addr: 127.0.0.2
# addr: 127.0.2.2
# addr: 127.0.4.2
#
# o SGW selection by eNodeB TAC
#
# selection_mode: tac
# gtpc:
# - addr: 127.0.0.2
# tac: 26000
# - addr: 127.0.2.2
# tac: [25000, 27000, 28000]
#
#
# <GTP-U Server>
#
# o GTP-U Server(all address avaiable)
# gtpu:
#
# o Provide custom SGW GTP-U address to be advertised inside S1AP messages
# gtpu:
# addr: 10.4.128.21
# advertise_addr: 172.24.15.30
#
# gtpu:
# addr: 10.4.128.21
# advertise_name: sgw1.epc.mnc001.mcc001.3gppnetwork.org
#
# gtpu:
# dev: ens3
# advertise_name: sgw1.epc.mnc001.mcc001.3gppnetwork.org
#
gtpu:
pgw:
freeDiameter: @sysconfdir@/freeDiameter/pgw.conf
#
# ------------------------ MME --------------------------
#
# o By default, the PGW uses the first PGW node.
# - To use a different APN for each PGW, specify gtpc.apn as the APN name.
# - If the HSS uses WebUI to set the PGW IP for eacho UE,
# you can use a specific PGW node for each UE.
#
# o Two PGW are defined. 127.0.0.3:2123 is used.
# [fe80::3%@loopback_devname@]:2123 is ignored.
# gtpc:
# - addr: 127.0.0.3
# - addr: fe80::3%@loopback_devname@
#
# o One PGW is defined. if prefer_ipv4 is not true,
# [fe80::3%@loopback_devname@] is selected.
# gtpc:
# - addr:
# - 127.0.0.3
# - fe80::3%@loopback_devname@
#
# o Two PGW are defined with a different APN.
# - Note that if PGW IP for UE is configured in HSS,
# the following configurion for this UE is ignored.
# gtpc:
# - addr: 127.0.0.3
# apn: internet
# - addr: 127.0.0.5
# apn: volte
#
# o If APN is omitted, the default APN uses the first PGW node.
# gtpc:
# - addr: 127.0.0.3
# - addr: 127.0.0.5
# apn: volte
# ------------------------ PGW --------------------------
#
# o GTP-C Server(127.0.0.3:2123, [fe80::3%@loopback_devname@]:2123)
# gtpc:
# addr:
# - 127.0.0.3
# - fe80::3%@loopback_devname@
#
# o On PGW, Same configuration(127.0.0.3:2123, [fe80::3%@loopback_devname@]:2123).
# gtpc:
# - addr: 127.0.0.3
# - addr: fe80::3%@loopback_devname@
#
gtpc:
addr:
- 127.0.0.3
- ::1
#
# <GTP-U Server>>
#
# o GTP-U Server(127.0.0.3:2152, [::1]:2152)
# gtpu:
# - addr: 127.0.0.3
# - addr: ::1
#
# o Same configuration(127.0.0.3:2152, [::1]:2152) as below.
# gtpu:
# name: localhost
#
gtpu:
- addr: 127.0.0.3
- addr: ::1
#
# <UE Pool>
#
# o IPv4 Pool
# $ sudo ip addr add 10.45.0.1/16 dev ogstun
#
# ue_pool:
# addr: 10.45.0.1/16
#
# o IPv4/IPv6 Pool
# $ sudo ip addr add 10.45.0.1/16 dev ogstun
# $ sudo ip addr add cafe:1::1/64 dev ogstun
#
# ue_pool:
# - addr: 10.45.0.1/16
# - addr: cafe:1::1/64
#
#
# o Specific APN(e.g 'volte') uses 10.46.0.1/16, cafe:2::1/64
# All other APNs use 10.45.0.1/16, cafe:1::1/64
# $ sudo ip addr add 10.45.0.1/16 dev ogstun
# $ sudo ip addr add 10.46.0.1/16 dev ogstun
# $ sudo ip addr add cafe:1::1/64 dev ogstun
# $ sudo ip addr add cafe:2::1/64 dev ogstun
#
# ue_pool:
# - addr: 10.45.0.1/16
# - addr: cafe:1::1/64
# - addr: 10.46.0.1/16
# apn: volte
# - addr: cafe:2::1/64
# apn: volte
#
# o Multiple Devices (default: ogstun)
# $ sudo ip addr add 10.45.0.1/16 dev ogstun
# $ sudo ip addr add cafe:1::1/64 dev ogstun2
# $ sudo ip addr add 10.46.0.1/16 dev ogstun3
# $ sudo ip addr add cafe:2::1/64 dev ogstun3
#
# ue_pool:
# - addr: 10.45.0.1/16
# - addr: cafe:1::1/64
# dev: ogstun2
# - addr: 10.46.0.1/16
# apn: volte
# dev: ogstun3
# - addr: cafe:2::1/64
# apn: volte
# dev: ogstun3
#
# o Pool Range Sample
# ue_pool:
# - addr: 10.45.0.1/24
# range: 10.45.0.100-10.45.0.200
#
# ue_pool:
# - addr: 10.45.0.1/24
# range:
# - 10.45.0.5-10.45.0.50
# - 10.45.0.100-
#
# ue_pool:
# - addr: 10.45.0.1/24
# range:
# - -10.45.0.200
# - 10.45.0.210-10.45.0.220
#
# ue_pool:
# - addr: 10.45.0.1/16
# range:
# - 10.45.0.100-10.45.0.200
# - 10.45.1.100-10.45.1.200
# - addr: cafe::1/64
# range:
# - cafe::a0-cafe:b0
# - cafe::c0-cafe:d0
#
#
ue_pool:
- addr: 10.45.0.1/16
- addr: cafe::1/64
#
# <Domain Name Server>
#
# o Primary/Secondary can be configured. Others are ignored.
#
dns:
- 8.8.8.8
- 8.8.4.4
- 2001:4860:4860::8888
- 2001:4860:4860::8844
#
# <MTU Size>
#
# o Provisioning a limit on the size of the packets sent by the MS
# to avoid packet fragmentation in the backbone network
# between the MS and the GGSN/PGW and/or across the (S)Gi reference point)
# when some of the backbone links does not support
# packets larger then 1500 octets
#
mtu: 1400
#
# <P-CSCF>
#
# o Proxy Call Session Control Function
#
# p-cscf:
# - 127.0.0.1
# - ::1
#
pcrf:
freeDiameter: @sysconfdir@/freeDiameter/pcrf.conf

View File

@@ -0,0 +1,19 @@
# Copyright (C) 2019 by Sukchan Lee <acetcom@gmail.com>
# This file is part of Open5GS.
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <https://www.gnu.org/licenses/>.
file = 'open5gs'
configure_file(input : file + '.in', output : file, configuration : conf_data)

View File

@@ -0,0 +1,14 @@
@localstatedir@/log/open5gs/*.log {
daily
sharedscripts
missingok
compress
rotate 14
create 640 open5gs open5gs
postrotate
for i in pcrfd pgwd sgwd hssd mmed; do
systemctl reload open5gs-$i
done
endscript
}

57
configs/meson.build Normal file
View File

@@ -0,0 +1,57 @@
# Copyright (C) 2019 by Sukchan Lee <acetcom@gmail.com>
# This file is part of Open5GS.
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <https://www.gnu.org/licenses/>.
conf_data = configuration_data()
conf_data.set('bindir', bindir)
conf_data.set('sysconfdir', sysconfdir)
conf_data.set('libdir', libdir)
conf_data.set('localstatedir', localstatedir)
freediameter_extensions_builddir = join_paths(
meson.build_root(), 'subprojects', 'freeDiameter', 'extensions')
conf_data.set('freediameter_extensions_builddir',
freediameter_extensions_builddir)
if host_system == 'linux'
conf_data.set('loopback_devname', 'lo')
else
conf_data.set('loopback_devname', 'lo0')
endif
example_conf = '''
simple.yaml
installed.yaml
split.yaml
mnc3.yaml
csfb.yaml
volte.yaml
srslte.yaml
'''.split()
foreach file : example_conf
gen = configure_file(
input : file + '.in',
output : file,
configuration : conf_data)
endforeach
subdir('open5gs')
subdir('freeDiameter')
subdir('systemd')
subdir('logrotate')
subdir('newsyslog')

127
configs/mnc3.yaml.in Normal file
View File

@@ -0,0 +1,127 @@
db_uri: mongodb://localhost/open5gs
logger:
parameter:
no_ipv6: true
mme:
freeDiameter:
identity: mme.localdomain
realm: localdomain
listen_on: 127.0.0.2
load_extension:
- module: @freediameter_extensions_builddir@/dbg_msg_dumps.fdx
conf: 0x8888
- module: @freediameter_extensions_builddir@/dict_rfc5777.fdx
- module: @freediameter_extensions_builddir@/dict_mip6i.fdx
- module: @freediameter_extensions_builddir@/dict_nasreq.fdx
- module: @freediameter_extensions_builddir@/dict_nas_mipv6.fdx
- module: @freediameter_extensions_builddir@/dict_dcca.fdx
- module: @freediameter_extensions_builddir@/dict_dcca_3gpp.fdx
connect:
- identity: hss.localdomain
addr: 127.0.0.4
s1ap:
addr: 127.0.0.1
gtpc:
addr: 127.0.0.1
gummei:
plmn_id:
mcc: 310
mnc: 014
mme_gid: 32798
mme_code: 100
tai:
plmn_id:
mcc: 310
mnc: 014
tac: [50, 51, 52, 53]
security:
integrity_order : [ EIA1, EIA2, EIA0 ]
ciphering_order : [ EEA0, EEA1, EEA2 ]
network_name:
full: Open5GS
hss:
freeDiameter:
identity: hss.localdomain
realm: localdomain
listen_on: 127.0.0.4
load_extension:
- module: @freediameter_extensions_builddir@/dbg_msg_dumps.fdx
conf: 0x8888
- module: @freediameter_extensions_builddir@/dict_rfc5777.fdx
- module: @freediameter_extensions_builddir@/dict_mip6i.fdx
- module: @freediameter_extensions_builddir@/dict_nasreq.fdx
- module: @freediameter_extensions_builddir@/dict_nas_mipv6.fdx
- module: @freediameter_extensions_builddir@/dict_dcca.fdx
- module: @freediameter_extensions_builddir@/dict_dcca_3gpp.fdx
connect:
- identity: mme.localdomain
addr: 127.0.0.2
sgw:
gtpc:
addr: 127.0.0.2
gtpu:
addr: 127.0.0.2
pgw:
freeDiameter:
identity: pgw.localdomain
realm: localdomain
listen_on: 127.0.0.3
load_extension:
- module: @freediameter_extensions_builddir@/dbg_msg_dumps.fdx
conf: 0x8888
- module: @freediameter_extensions_builddir@/dict_rfc5777.fdx
- module: @freediameter_extensions_builddir@/dict_mip6i.fdx
- module: @freediameter_extensions_builddir@/dict_nasreq.fdx
- module: @freediameter_extensions_builddir@/dict_nas_mipv6.fdx
- module: @freediameter_extensions_builddir@/dict_dcca.fdx
- module: @freediameter_extensions_builddir@/dict_dcca_3gpp.fdx
connect:
connect:
- identity: pcrf.localdomain
addr: 127.0.0.5
gtpc:
- addr:
- 127.0.0.3
- ::1
- addr:
- 127.0.0.4
apn: starent.com
gtpu:
- addr: 127.0.0.3
- addr: ::1
ue_pool:
- addr: 10.45.0.1/16
- addr: cafe::1/64
dns:
- 8.8.8.8
- 8.8.4.4
- 2001:4860:4860::8888
- 2001:4860:4860::8844
mtu: 1400
pcrf:
freeDiameter:
identity: pcrf.localdomain
realm: localdomain
listen_on: 127.0.0.5
load_extension:
- module: @freediameter_extensions_builddir@/dbg_msg_dumps.fdx
conf: 0x8888
- module: @freediameter_extensions_builddir@/dict_rfc5777.fdx
- module: @freediameter_extensions_builddir@/dict_mip6i.fdx
- module: @freediameter_extensions_builddir@/dict_nasreq.fdx
- module: @freediameter_extensions_builddir@/dict_nas_mipv6.fdx
- module: @freediameter_extensions_builddir@/dict_dcca.fdx
- module: @freediameter_extensions_builddir@/dict_dcca_3gpp.fdx
connect:
- identity: pgw.localdomain
addr: 127.0.0.3

View File

@@ -0,0 +1,19 @@
# Copyright (C) 2019 by Sukchan Lee <acetcom@gmail.com>
# This file is part of Open5GS.
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <https://www.gnu.org/licenses/>.
file = 'open5gs.conf'
configure_file(input : file + '.in', output : file, configuration : conf_data)

View File

@@ -0,0 +1,8 @@
# truncate rails logs every day at midnight, keep 14 previous logs, compress previous logs
#
# logfilename [owner:group] mode count size when flags [/pid_file] [sig_num]
@localstatedir@/log/open5gs/pcrf.log 644 14 * $D0 GZ @localstatedir@/run/open5gs-pcrfd/pid`
@localstatedir@/log/open5gs/pgw.log 644 14 * $D0 GZ @localstatedir@/run/open5gs-pgwd/pid`
@localstatedir@/log/open5gs/sgw.log 644 14 * $D0 GZ @localstatedir@/run/open5gs-sgwd/pid`
@localstatedir@/log/open5gs/hss.log 644 14 * $D0 GZ @localstatedir@/run/open5gs-hssd/pid`
@localstatedir@/log/open5gs/mme.log 644 14 * $D0 GZ @localstatedir@/run/open5gs-mmed/pid`

View File

@@ -0,0 +1,9 @@
db_uri: mongodb://localhost/open5gs
logger:
file: @localstatedir@/log/open5gs/hss.log
parameter:
hss:
freeDiameter: @sysconfdir@/freeDiameter/hss.conf

View File

@@ -0,0 +1,37 @@
# Copyright (C) 2019 by Sukchan Lee <acetcom@gmail.com>
# This file is part of Open5GS.
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <https://www.gnu.org/licenses/>.
open5gs_sysconfdir = join_paths(sysconfdir, 'open5gs')
meson.add_install_script(python3_exe, '-c',
mkdir_p.format(open5gs_sysconfdir))
open5gs_conf = '''
mme.yaml
hss.yaml
sgw.yaml
pgw.yaml
pcrf.yaml
'''.split()
foreach file : open5gs_conf
gen = configure_file(
input : file + '.in',
output : file,
configuration : conf_data)
meson.add_install_script(python3_exe, '-c',
install_conf.format(gen, open5gs_sysconfdir))
endforeach

View File

@@ -0,0 +1,35 @@
logger:
file: @localstatedir@/log/open5gs/mme.log
parameter:
mme:
freeDiameter: @sysconfdir@/freeDiameter/mme.conf
s1ap:
gtpc:
gummei:
plmn_id:
mcc: 001
mnc: 01
mme_gid: 2
mme_code: 1
tai:
plmn_id:
mcc: 001
mnc: 01
tac: 12345
security:
integrity_order : [ EIA1, EIA2, EIA0 ]
ciphering_order : [ EEA0, EEA1, EEA2 ]
network_name:
full: Open5GS
sgw:
gtpc:
addr: 127.0.0.2
pgw:
gtpc:
addr:
- 127.0.0.3
- ::1

View File

@@ -0,0 +1,9 @@
db_uri: mongodb://localhost/open5gs
logger:
file: @localstatedir@/log/open5gs/pcrf.log
parameter:
pcrf:
freeDiameter: @sysconfdir@/freeDiameter/pcrf.conf

View File

@@ -0,0 +1,22 @@
logger:
file: @localstatedir@/log/open5gs/pgw.log
parameter:
pgw:
freeDiameter: @sysconfdir@/freeDiameter/pgw.conf
gtpc:
- addr: 127.0.0.3
- addr: ::1
gtpu:
- addr: 127.0.0.3
- addr: ::1
ue_pool:
- addr: 10.45.0.1/16
- addr: cafe::1/64
dns:
- 8.8.8.8
- 8.8.4.4
- 2001:4860:4860::8888
- 2001:4860:4860::8844
mtu: 1400

View File

@@ -0,0 +1,10 @@
logger:
file: @localstatedir@/log/open5gs/sgw.log
parameter:
no_ipv6: true
sgw:
gtpc:
addr: 127.0.0.2
gtpu:

123
configs/simple.yaml.in Normal file
View File

@@ -0,0 +1,123 @@
db_uri: mongodb://localhost/open5gs
logger:
parameter:
no_ipv6: true
mme:
freeDiameter:
identity: mme.localdomain
realm: localdomain
listen_on: 127.0.0.2
load_extension:
- module: @freediameter_extensions_builddir@/dbg_msg_dumps.fdx
conf: 0x8888
- module: @freediameter_extensions_builddir@/dict_rfc5777.fdx
- module: @freediameter_extensions_builddir@/dict_mip6i.fdx
- module: @freediameter_extensions_builddir@/dict_nasreq.fdx
- module: @freediameter_extensions_builddir@/dict_nas_mipv6.fdx
- module: @freediameter_extensions_builddir@/dict_dcca.fdx
- module: @freediameter_extensions_builddir@/dict_dcca_3gpp.fdx
connect:
- identity: hss.localdomain
addr: 127.0.0.4
s1ap:
addr: 127.0.0.1
gtpc:
addr: 127.0.0.1
gummei:
plmn_id:
mcc: 001
mnc: 01
mme_gid: 2
mme_code: 1
tai:
plmn_id:
mcc: 001
mnc: 01
tac: 12345
security:
integrity_order : [ EIA1, EIA2, EIA0 ]
ciphering_order : [ EEA0, EEA1, EEA2 ]
network_name:
full: Open5GS
hss:
freeDiameter:
identity: hss.localdomain
realm: localdomain
listen_on: 127.0.0.4
load_extension:
- module: @freediameter_extensions_builddir@/dbg_msg_dumps.fdx
conf: 0x8888
- module: @freediameter_extensions_builddir@/dict_rfc5777.fdx
- module: @freediameter_extensions_builddir@/dict_mip6i.fdx
- module: @freediameter_extensions_builddir@/dict_nasreq.fdx
- module: @freediameter_extensions_builddir@/dict_nas_mipv6.fdx
- module: @freediameter_extensions_builddir@/dict_dcca.fdx
- module: @freediameter_extensions_builddir@/dict_dcca_3gpp.fdx
connect:
- identity: mme.localdomain
addr: 127.0.0.2
sgw:
gtpc:
addr: 127.0.0.2
gtpu:
addr: 127.0.0.2
pgw:
freeDiameter:
identity: pgw.localdomain
realm: localdomain
listen_on: 127.0.0.3
load_extension:
- module: @freediameter_extensions_builddir@/dbg_msg_dumps.fdx
conf: 0x8888
- module: @freediameter_extensions_builddir@/dict_rfc5777.fdx
- module: @freediameter_extensions_builddir@/dict_mip6i.fdx
- module: @freediameter_extensions_builddir@/dict_nasreq.fdx
- module: @freediameter_extensions_builddir@/dict_nas_mipv6.fdx
- module: @freediameter_extensions_builddir@/dict_dcca.fdx
- module: @freediameter_extensions_builddir@/dict_dcca_3gpp.fdx
connect:
- identity: pcrf.localdomain
addr: 127.0.0.5
gtpc:
addr:
- 127.0.0.3
- ::1
gtpu:
- addr: 127.0.0.3
- addr: ::1
ue_pool:
- addr: 10.45.0.1/16
- addr: cafe::1/64
dns:
- 8.8.8.8
- 8.8.4.4
- 2001:4860:4860::8888
- 2001:4860:4860::8844
mtu: 1400
pcrf:
freeDiameter:
identity: pcrf.localdomain
realm: localdomain
listen_on: 127.0.0.5
load_extension:
- module: @freediameter_extensions_builddir@/dbg_msg_dumps.fdx
conf: 0x8888
- module: @freediameter_extensions_builddir@/dict_rfc5777.fdx
- module: @freediameter_extensions_builddir@/dict_mip6i.fdx
- module: @freediameter_extensions_builddir@/dict_nasreq.fdx
- module: @freediameter_extensions_builddir@/dict_nas_mipv6.fdx
- module: @freediameter_extensions_builddir@/dict_dcca.fdx
- module: @freediameter_extensions_builddir@/dict_dcca_3gpp.fdx
connect:
- identity: pgw.localdomain
addr: 127.0.0.3

121
configs/split.yaml.in Normal file
View File

@@ -0,0 +1,121 @@
db_uri: mongodb://localhost/open5gs
logger:
parameter:
no_ipv6: true
mme:
freeDiameter:
identity: mme.localdomain
realm: localdomain
listen_on: 127.0.0.2
load_extension:
- module: @freediameter_extensions_builddir@/dbg_msg_dumps.fdx
conf: 0x8888
- module: @freediameter_extensions_builddir@/dict_rfc5777.fdx
- module: @freediameter_extensions_builddir@/dict_mip6i.fdx
- module: @freediameter_extensions_builddir@/dict_nasreq.fdx
- module: @freediameter_extensions_builddir@/dict_nas_mipv6.fdx
- module: @freediameter_extensions_builddir@/dict_dcca.fdx
- module: @freediameter_extensions_builddir@/dict_dcca_3gpp.fdx
connect:
- identity: hss.localdomain
addr: 127.0.0.4
s1ap:
gtpc:
addr: 127.0.0.1
gummei:
plmn_id:
mcc: 901
mnc: 70
mme_gid: 2
mme_code: 1
tai:
plmn_id:
mcc: 901
mnc: 70
tac: 7
security:
integrity_order : [ EIA1, EIA2, EIA0 ]
ciphering_order : [ EEA0, EEA1, EEA2 ]
network_name:
full: Open5GS
hss:
freeDiameter:
identity: hss.localdomain
realm: localdomain
listen_on: 127.0.0.4
load_extension:
- module: @freediameter_extensions_builddir@/dbg_msg_dumps.fdx
conf: 0x8888
- module: @freediameter_extensions_builddir@/dict_rfc5777.fdx
- module: @freediameter_extensions_builddir@/dict_mip6i.fdx
- module: @freediameter_extensions_builddir@/dict_nasreq.fdx
- module: @freediameter_extensions_builddir@/dict_nas_mipv6.fdx
- module: @freediameter_extensions_builddir@/dict_dcca.fdx
- module: @freediameter_extensions_builddir@/dict_dcca_3gpp.fdx
connect:
- identity: mme.localdomain
addr: 127.0.0.2
sgw:
gtpc:
addr: 127.0.0.2
gtpu:
pgw:
freeDiameter:
identity: pgw.localdomain
realm: localdomain
listen_on: 127.0.0.3
load_extension:
- module: @freediameter_extensions_builddir@/dbg_msg_dumps.fdx
conf: 0x8888
- module: @freediameter_extensions_builddir@/dict_rfc5777.fdx
- module: @freediameter_extensions_builddir@/dict_mip6i.fdx
- module: @freediameter_extensions_builddir@/dict_nasreq.fdx
- module: @freediameter_extensions_builddir@/dict_nas_mipv6.fdx
- module: @freediameter_extensions_builddir@/dict_dcca.fdx
- module: @freediameter_extensions_builddir@/dict_dcca_3gpp.fdx
connect:
- identity: pcrf.localdomain
addr: 127.0.0.5
gtpc:
addr:
- 127.0.0.3
- ::1
gtpu:
- addr: 127.0.0.3
- addr: ::1
ue_pool:
- addr: 10.45.0.1/16
- addr: cafe::1/64
dns:
- 8.8.8.8
- 8.8.4.4
- 2001:4860:4860::8888
- 2001:4860:4860::8844
mtu: 1400
pcrf:
freeDiameter:
identity: pcrf.localdomain
realm: localdomain
listen_on: 127.0.0.5
load_extension:
- module: @freediameter_extensions_builddir@/dbg_msg_dumps.fdx
conf: 0x8888
- module: @freediameter_extensions_builddir@/dict_rfc5777.fdx
- module: @freediameter_extensions_builddir@/dict_mip6i.fdx
- module: @freediameter_extensions_builddir@/dict_nasreq.fdx
- module: @freediameter_extensions_builddir@/dict_nas_mipv6.fdx
- module: @freediameter_extensions_builddir@/dict_dcca.fdx
- module: @freediameter_extensions_builddir@/dict_dcca_3gpp.fdx
connect:
- identity: pgw.localdomain
addr: 127.0.0.3

123
configs/srslte.yaml.in Normal file
View File

@@ -0,0 +1,123 @@
db_uri: mongodb://localhost/open5gs
logger:
parameter:
no_ipv6: true
mme:
freeDiameter:
identity: mme.localdomain
realm: localdomain
listen_on: 127.0.0.2
load_extension:
- module: @freediameter_extensions_builddir@/dbg_msg_dumps.fdx
conf: 0x8888
- module: @freediameter_extensions_builddir@/dict_rfc5777.fdx
- module: @freediameter_extensions_builddir@/dict_mip6i.fdx
- module: @freediameter_extensions_builddir@/dict_nasreq.fdx
- module: @freediameter_extensions_builddir@/dict_nas_mipv6.fdx
- module: @freediameter_extensions_builddir@/dict_dcca.fdx
- module: @freediameter_extensions_builddir@/dict_dcca_3gpp.fdx
connect:
- identity: hss.localdomain
addr: 127.0.0.4
s1ap:
addr: 127.0.1.100
gtpc:
addr: 127.0.1.100
gummei:
plmn_id:
mcc: 901
mnc: 70
mme_gid: 2
mme_code: 1
tai:
plmn_id:
mcc: 901
mnc: 70
tac: 7
security:
integrity_order : [ EIA1, EIA2, EIA0 ]
ciphering_order : [ EEA0, EEA1, EEA2 ]
network_name:
full: Open5GS
hss:
freeDiameter:
identity: hss.localdomain
realm: localdomain
listen_on: 127.0.0.4
load_extension:
- module: @freediameter_extensions_builddir@/dbg_msg_dumps.fdx
conf: 0x8888
- module: @freediameter_extensions_builddir@/dict_rfc5777.fdx
- module: @freediameter_extensions_builddir@/dict_mip6i.fdx
- module: @freediameter_extensions_builddir@/dict_nasreq.fdx
- module: @freediameter_extensions_builddir@/dict_nas_mipv6.fdx
- module: @freediameter_extensions_builddir@/dict_dcca.fdx
- module: @freediameter_extensions_builddir@/dict_dcca_3gpp.fdx
connect:
- identity: mme.localdomain
addr: 127.0.0.2
sgw:
gtpc:
addr: 127.0.0.2
gtpu:
addr: 127.0.0.2
pgw:
freeDiameter:
identity: pgw.localdomain
realm: localdomain
listen_on: 127.0.0.3
load_extension:
- module: @freediameter_extensions_builddir@/dbg_msg_dumps.fdx
conf: 0x8888
- module: @freediameter_extensions_builddir@/dict_rfc5777.fdx
- module: @freediameter_extensions_builddir@/dict_mip6i.fdx
- module: @freediameter_extensions_builddir@/dict_nasreq.fdx
- module: @freediameter_extensions_builddir@/dict_nas_mipv6.fdx
- module: @freediameter_extensions_builddir@/dict_dcca.fdx
- module: @freediameter_extensions_builddir@/dict_dcca_3gpp.fdx
connect:
- identity: pcrf.localdomain
addr: 127.0.0.5
gtpc:
addr:
- 127.0.0.3
- ::1
gtpu:
- addr: 127.0.0.3
- addr: ::1
ue_pool:
- addr: 10.45.0.1/16
- addr: cafe::1/64
dns:
- 8.8.8.8
- 8.8.4.4
- 2001:4860:4860::8888
- 2001:4860:4860::8844
mtu: 1400
pcrf:
freeDiameter:
identity: pcrf.localdomain
realm: localdomain
listen_on: 127.0.0.5
load_extension:
- module: @freediameter_extensions_builddir@/dbg_msg_dumps.fdx
conf: 0x8888
- module: @freediameter_extensions_builddir@/dict_rfc5777.fdx
- module: @freediameter_extensions_builddir@/dict_mip6i.fdx
- module: @freediameter_extensions_builddir@/dict_nasreq.fdx
- module: @freediameter_extensions_builddir@/dict_nas_mipv6.fdx
- module: @freediameter_extensions_builddir@/dict_dcca.fdx
- module: @freediameter_extensions_builddir@/dict_dcca_3gpp.fdx
connect:
- identity: pgw.localdomain
addr: 127.0.0.3

View File

@@ -0,0 +1,3 @@
[NetDev]
Name=ogstun
Kind=tun

View File

@@ -0,0 +1,6 @@
[Match]
Name=ogstun
[Network]
Address=10.45.0.1/16
Address=cafe::1/64

View File

@@ -0,0 +1,43 @@
# Copyright (C) 2019 by Sukchan Lee <acetcom@gmail.com>
# This file is part of Open5GS.
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <https://www.gnu.org/licenses/>.
systemd_conf_in = '''
open5gs-hssd.service
open5gs-pgwd.service
open5gs-mmed.service
open5gs-sgwd.service
open5gs-pcrfd.service
'''.split()
foreach file : systemd_conf_in
configure_file(
input : file + '.in',
output : file,
configuration : conf_data)
endforeach
systemd_conf = '''
99-open5gs.netdev
99-open5gs.network
'''.split()
foreach file : systemd_conf
configure_file(
input : file,
output : file,
configuration : conf_data)
endforeach

View File

@@ -0,0 +1,18 @@
[Unit]
Description=Open5GS HSS Daemon
Wants=mongodb.service mongod.service
[Service]
Type=simple
User=open5gs
Group=open5gs
Restart=always
ExecStart=@bindir@/open5gs-hssd -c @sysconfdir@/open5gs/hss.yaml
RestartSec=2
RestartPreventExitStatus=1
ExecReload=/bin/kill -HUP $MAINPID
[Install]
WantedBy=multi-user.target

View File

@@ -0,0 +1,18 @@
[Unit]
Description=Open5GS MME Daemon
After=networking.service
[Service]
Type=simple
User=open5gs
Group=open5gs
Restart=always
ExecStart=@bindir@/open5gs-mmed -c @sysconfdir@/open5gs/mme.yaml
RestartSec=2
RestartPreventExitStatus=1
ExecReload=/bin/kill -HUP $MAINPID
[Install]
WantedBy=multi-user.target

View File

@@ -0,0 +1,18 @@
[Unit]
Description=Open5GS PCRF Daemon
Wants=mongodb.service mongod.service
[Service]
Type=simple
User=open5gs
Group=open5gs
Restart=always
ExecStart=@bindir@/open5gs-pcrfd -c @sysconfdir@/open5gs/pcrf.yaml
RestartSec=2
RestartPreventExitStatus=1
ExecReload=/bin/kill -HUP $MAINPID
[Install]
WantedBy=multi-user.target

View File

@@ -0,0 +1,19 @@
[Unit]
Description=Open5GS P-GW Daemon
After=networking.service
Requires=systemd-networkd.service
[Service]
Type=simple
User=open5gs
Group=open5gs
Restart=always
ExecStart=@bindir@/open5gs-pgwd -c @sysconfdir@/open5gs/pgw.yaml
RestartSec=2
RestartPreventExitStatus=1
ExecReload=/bin/kill -HUP $MAINPID
[Install]
WantedBy=multi-user.target

View File

@@ -0,0 +1,18 @@
[Unit]
Description=Open5GS S-GW Daemon
After=networking.service
[Service]
Type=simple
User=open5gs
Group=open5gs
Restart=always
ExecStart=@bindir@/open5gs-sgwd -c @sysconfdir@/open5gs/sgw.yaml
RestartSec=2
RestartPreventExitStatus=1
ExecReload=/bin/kill -HUP $MAINPID
[Install]
WantedBy=multi-user.target

142
configs/volte.yaml.in Normal file
View File

@@ -0,0 +1,142 @@
db_uri: mongodb://localhost/open5gs
logger:
parameter:
mme:
freeDiameter:
identity: mme.open-ims.test
realm: open-ims.test
# port: 3868
# sec_port: 5868
listen_on: 127.0.0.2
load_extension:
- module: @freediameter_extensions_builddir@/dbg_msg_dumps.fdx
conf: 0x8888
- module: @freediameter_extensions_builddir@/dict_rfc5777.fdx
- module: @freediameter_extensions_builddir@/dict_mip6i.fdx
- module: @freediameter_extensions_builddir@/dict_nasreq.fdx
- module: @freediameter_extensions_builddir@/dict_nas_mipv6.fdx
- module: @freediameter_extensions_builddir@/dict_dcca.fdx
- module: @freediameter_extensions_builddir@/dict_dcca_3gpp.fdx
connect:
- identity: hss.open-ims.test
addr: 127.0.0.4
# port: 3868
s1ap:
addr: 127.0.0.1
gtpc:
addr: 127.0.0.1
gummei:
plmn_id:
mcc: 001
mnc: 01
mme_gid: 2
mme_code: 1
tai:
plmn_id:
mcc: 001
mnc: 01
tac: 12345
security:
integrity_order : [ EIA1, EIA2, EIA0 ]
ciphering_order : [ EEA0, EEA1, EEA2 ]
hss:
freeDiameter:
identity: hss.open-ims.test
realm: open-ims.test
# port: 3868
# sec_port: 5868
listen_on: 127.0.0.4
load_extension:
- module: @freediameter_extensions_builddir@/dbg_msg_dumps.fdx
conf: 0x8888
- module: @freediameter_extensions_builddir@/dict_rfc5777.fdx
- module: @freediameter_extensions_builddir@/dict_mip6i.fdx
- module: @freediameter_extensions_builddir@/dict_nasreq.fdx
- module: @freediameter_extensions_builddir@/dict_nas_mipv6.fdx
- module: @freediameter_extensions_builddir@/dict_dcca.fdx
- module: @freediameter_extensions_builddir@/dict_dcca_3gpp.fdx
connect:
- identity: mme.open-ims.test
addr: 127.0.0.2
# port: 3868
sgw:
gtpc:
addr: 127.0.0.2
gtpu:
addr: 127.0.0.2
pgw:
freeDiameter:
identity: pgw.open-ims.test
realm: open-ims.test
# port: 3868
# sec_port: 5868
listen_on: 127.0.0.3
load_extension:
- module: @freediameter_extensions_builddir@/dbg_msg_dumps.fdx
conf: 0x8888
- module: @freediameter_extensions_builddir@/dict_rfc5777.fdx
- module: @freediameter_extensions_builddir@/dict_mip6i.fdx
- module: @freediameter_extensions_builddir@/dict_nasreq.fdx
- module: @freediameter_extensions_builddir@/dict_nas_mipv6.fdx
- module: @freediameter_extensions_builddir@/dict_dcca.fdx
- module: @freediameter_extensions_builddir@/dict_dcca_3gpp.fdx
connect:
- identity: pcrf.open-ims.test
addr: 127.0.0.5
# port: 3868
gtpc:
addr:
- 127.0.0.3
- ::1
gtpu:
- addr: 127.0.0.3
- addr: ::1
ue_pool:
- addr: 10.45.0.1/16
- addr: cafe::1/64
dns:
- 8.8.8.8
- 8.8.4.4
- 2001:4860:4860::8888
- 2001:4860:4860::8844
mtu: 1400
#
# <P-CSCF>
#
# o Proxy Call Session Control Function
#
# p-cscf:
# - 127.0.0.1
# - ::1
#
pcrf:
freeDiameter:
identity: pcrf.open-ims.test
realm: open-ims.test
# port: 3868
# sec_port: 5868
listen_on: 127.0.0.5
load_extension:
- module: @freediameter_extensions_builddir@/dbg_msg_dumps.fdx
conf: 0x8888
- module: @freediameter_extensions_builddir@/dict_rfc5777.fdx
- module: @freediameter_extensions_builddir@/dict_mip6i.fdx
- module: @freediameter_extensions_builddir@/dict_nasreq.fdx
- module: @freediameter_extensions_builddir@/dict_nas_mipv6.fdx
- module: @freediameter_extensions_builddir@/dict_dcca.fdx
- module: @freediameter_extensions_builddir@/dict_dcca_3gpp.fdx
connect:
- identity: pgw.open-ims.test
addr: 127.0.0.3
- identity: pcscf.open-ims.test
addr: 127.0.0.1

View File

@@ -1,374 +0,0 @@
dnl Process this file with autoconf to produce a configure script.
dnl
dnl This file is free software; as a special exception the author gives
dnl unlimited permission to copy and/or distribute it, with or without
dnl modifications, as long as this notice is preserved.
dnl
dnl This program is distributed in the hope that it will be useful, but
dnl WITHOUT ANY WARRANTY, to the extent permitted by law; without even the
dnl implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
AC_INIT([NEXTEPC], [0.1.0], [acetcom@gmail.com])
CORE_CONFIG_NICE(config.nice)
dnl Must come before AM_INIT_AUTOMAKE.
AC_CONFIG_AUX_DIR([build-aux])
AM_INIT_AUTOMAKE([1.10 -Wall -Werror foreign])
# Minimum Autoconf version required.
AC_PREREQ(2.63)
# Where to generate output; srcdir location.
AC_CONFIG_HEADERS([config.h:config.in])dnl Keep filename to 8.3 for MS-DOS.
AC_CONFIG_SRCDIR([main.c])
AC_CANONICAL_HOST
case $host in
*linux*)
OSDIR="unix"
OSCPPFLAGS="-DLINUX=1"
IPFW_CPPFLAGS="-DNEED_SYSCTLBYNAME -DNEED_SIN_LEN"
;;
*-apple-darwin*)
OSDIR="unix"
OSPPCFLAGS="-DDARWIN -DSIGPROCMASK_SETS_THREAD_MASK"
;;
*)
OSDIR="unix"
;;
esac
AC_SUBST(OSCPPFLAGS)
AC_SUBST(OSDIR)
AC_SUBST(IPFW_CPPFLAGS)
AH_TOP([
#ifndef __NEXTEPC_CONFIG_H__
#define __NEXTEPC_CONFIG_H__
/* need this, because some autoconf tests rely on this (e.g. stpcpy)
* and it should be used for new programs */
#define _DEFAULT_SOURCE 1
#define _BSD_SOURCE 1
])
AH_BOTTOM([
#endif /* __NEXTEPC_CONFIG_H__ */
])
AH_VERBATIM([_REENTRANT],
[/* To allow the use of core in multithreaded programs we have to use
special features from the library. */
#ifndef _REENTRANT
# define _REENTRANT 1
#endif
])
dnl Checks CC and freinds
AC_PROG_CC
AC_PROG_CPP
AC_PROG_INSTALL
AC_PROG_AWK
AC_PROG_SED
#AC_PROG_YACC
#AC_PROG_LEX
AM_PROG_AR
dnl libtool
LT_INIT
dnl Checks for compile flag
AX_CHECK_COMPILE_FLAG([-Wno-unused-result], [CFLAGS="$CFLAGS -Wno-unused-result"])
dnl Checks for pointer size
AC_CHECK_SIZEOF(void*, 4)
dnl Checks for integer size
AC_CHECK_SIZEOF(char, 1)
AC_CHECK_SIZEOF(int, 4)
AC_CHECK_SIZEOF(long, 4)
AC_CHECK_SIZEOF(short, 2)
AC_CHECK_SIZEOF(long long, 8)
if test "$ac_cv_sizeof_short" = "2"; then
short_value=short
fi
if test "$ac_cv_sizeof_int" = "4"; then
int_value=int
fi
# Now we need to find what c_int64_t (sizeof == 8) will be.
# The first match is our preference.
if test "$ac_cv_sizeof_int" = "8"; then
int64_literal='#define C_INT64_C(val) (val)'
uint64_literal='#define C_UINT64_C(val) (val##U)'
int64_t_fmt='#define C_INT64_T_FMT "d"'
uint64_t_fmt='#define C_UINT64_T_FMT "u"'
uint64_t_hex_fmt='#define C_UINT64_T_HEX_FMT "x"'
int64_value="int"
long_value=int
int64_strfn="strtoi"
elif test "$ac_cv_sizeof_long" = "8"; then
int64_literal='#define C_INT64_C(val) (val##L)'
uint64_literal='#define C_UINT64_C(val) (val##UL)'
int64_t_fmt='#define C_INT64_T_FMT "ld"'
uint64_t_fmt='#define C_UINT64_T_FMT "lu"'
uint64_t_hex_fmt='#define C_UINT64_T_HEX_FMT "lx"'
int64_value="long"
long_value=long
int64_strfn="strtol"
elif test "$ac_cv_sizeof_long_long" = "8"; then
int64_literal='#define C_INT64_C(val) (val##LL)'
uint64_literal='#define C_UINT64_C(val) (val##ULL)'
# Linux, Solaris, FreeBSD all support ll with printf.
# BSD 4.4 originated 'q'. Solaris is more popular and
# doesn't support 'q'. Solaris wins. Exceptions can
# go to the OS-dependent section.
int64_t_fmt='#define C_INT64_T_FMT "lld"'
uint64_t_fmt='#define C_UINT64_T_FMT "llu"'
uint64_t_hex_fmt='#define C_UINT64_T_HEX_FMT "llx"'
int64_value="long long"
long_value="long long"
int64_strfn="strtoll"
elif test "$ac_cv_sizeof_longlong" = "8"; then
int64_literal='#define C_INT64_C(val) (val##LL)'
uint64_literal='#define C_UINT64_C(val) (val##ULL)'
int64_t_fmt='#define C_INT64_T_FMT "qd"'
uint64_t_fmt='#define C_UINT64_T_FMT "qu"'
uint64_t_hex_fmt='#define C_UINT64_T_HEX_FMT "qx"'
int64_value="__int64"
long_value="__int64"
int64_strfn="strtoll"
else
# int64_literal may be overriden if your compiler thinks you have
# a 64-bit value but CORE does not agree.
AC_ERROR([could not detect a 64-bit integer type])
fi
AC_SUBST(short_value)
AC_SUBST(int_value)
AC_SUBST(long_value)
AC_SUBST(int64_value)
AC_SUBST(int64_t_fmt)
AC_SUBST(uint64_t_fmt)
AC_SUBST(uint64_t_hex_fmt)
AC_SUBST(int64_literal)
AC_SUBST(uint64_literal)
AC_DEFINE_UNQUOTED([PACKAGE_VERSION_MAJOR],
[`echo $PACKAGE_VERSION | $SED 's/^\([[^\.]]\+\)\.\([[^\.]]\+\)\.\([[^\.]]\+\).*/\1/'`],
[Major version of this package])
AC_DEFINE_UNQUOTED([PACKAGE_VERSION_MINOR],
[`echo $PACKAGE_VERSION | $SED 's/^\([[^\.]]\+\)\.\([[^\.]]\+\)\.\([[^\.]]\+\).*/\2/'`],
[Minor version of this package])
AC_DEFINE_UNQUOTED([PACKAGE_VERSION_PATCHLEVEL],
[`echo $PACKAGE_VERSION | $SED 's/^\([[^\.]]\+\)\.\([[^\.]]\+\)\.\([[^\.]]\+\).*/\3/'`],
[Patch version of this package])
##################################
#### Checks for header files. ####
##################################
AC_HEADER_STDC
AC_CHECK_HEADERS( \
arpa/inet.h \
ctype.h \
errno.h \
fcntl.h \
ifaddrs.h \
limits.h \
netdb.h \
pthread.h \
regex.h \
semaphore.h \
signal.h \
stdarg.h \
stdio.h \
stdint.h \
stdlib.h \
string.h \
strings.h \
time.h \
unistd.h \
net/if_dl.h \
net/if.h \
netinet/ether.h \
netinet/in.h \
netinet/ip.h \
netinet/udp.h \
netinet/tcp.h \
netinet/sctp.h \
sys/ioctl.h \
sys/param.h \
sys/socket.h \
sys/stat.h \
sys/syslimits.h \
sys/types.h \
sys/time.h \
sys/wait.h \
sys/uio.h \
)
##########################################
#### Checks for typedefs, structures, ####
#### and compiler characteristics. ####
##########################################
AC_C_BIGENDIAN
AC_CHECK_MEMBERS([struct tm.tm_gmtoff, struct tm.__tm_gmtoff],,,[
#include <sys/types.h>
#include <time.h>])
AC_CHECK_FILE(/dev/random,
AC_DEFINE([HAVE_DEV_RANDOM], [1],
[Define to 1 if you have the /dev/random file.]))
AC_CACHE_CHECK([whether the compiler provides atomic builtins], [ap_cv_atomic_builtins],
[AC_TRY_RUN([
int main()
{
unsigned long val = 1010, tmp, *mem = &val;
if (__sync_fetch_and_add(&val, 1010) != 1010 || val != 2020)
return 1;
tmp = val;
if (__sync_fetch_and_sub(mem, 1010) != tmp || val != 1010)
return 1;
if (__sync_sub_and_fetch(&val, 1010) != 0 || val != 0)
return 1;
tmp = 3030;
if (__sync_val_compare_and_swap(mem, 0, tmp) != 0 || val != tmp)
return 1;
if (__sync_lock_test_and_set(&val, 4040) != 3030)
return 1;
mem = &tmp;
if (__sync_val_compare_and_swap(&mem, &tmp, &val) != &tmp)
return 1;
__sync_synchronize();
if (mem != &val)
return 1;
return 0;
}], [ap_cv_atomic_builtins=yes], [ap_cv_atomic_builtins=no], [ap_cv_atomic_builtins=no])])
if test "$ap_cv_atomic_builtins" = "yes"; then
AC_DEFINE(HAVE_ATOMIC_BUILTINS, 1, [Define if compiler provides atomic builtins])
fi
#######################################
#### Checks for library functions. ####
#######################################
AC_FUNC_VPRINTF
AC_CHECK_FUNCS(\
atexit \
gettimeofday \
inet_ntop \
inet_pton \
inet_aton \
memmove \
sigaction \
sigwait \
sigsuspend \
stpcpy \
strcasecmp \
strtoul \
stricmp \
strerror \
writev \
utime \
utimes \
sem_timedwait \
pthread_yield \
sched_yield \
)
AC_CHECK_LIB([pthread], [pthread_mutex_init], [LIBS="${LIBS} -lpthread"])
AC_CHECK_LIB([dl], [dlopen], [LIBS="${LIBS} -ldl"])
AC_CHECK_LIB([sctp], [sctp_sendmsg], [LIBS="${LIBS} -lsctp"])
AC_CHECK_LIB([gnutls], [gnutls_global_init], [LIBS="${LIBS} -lgnutls"])
AC_CHECK_LIB([gcrypt], [gcry_control], [LIBS="${LIBS} -lgcrypt"])
AC_CHECK_LIB([idn], [idna_strerror], [LIBS="${LIBS} -lidn"])
#AC_CHECK_LIB([fdcore], [fd_core_initialize], [LIBS="${LIBS} -lfdcore"])
#AC_CHECK_LIB([fdproto], [fd_libproto_init], [LIBS="${LIBS} -lfdproto"])
PKG_CHECK_MODULES([MONGOC], libmongoc-1.0 >= 1.3.1)
LIBS="$LIBS $MONGOC_LIBS"
#PKG_CHECK_MODULES([LIBXML2], libxml-2.0 >= 2.9.1)
#LIBS="$LIBS $LIBXML2_LIBS"
FREEDIAMETER_DIR=freeDiameter-1.2.1
AC_SUBST(FREEDIAMETER_DIR)
#####################
#### Conclusion. ####
#####################
AC_CONFIG_SUBDIRS([lib/freeDiameter-1.2.1])
AC_CONFIG_FILES([lib/core/include/core.h])
AC_CONFIG_FILES([lib/core/src/Makefile])
case $host in
*)
AC_CONFIG_FILES([lib/core/src/unix/Makefile])
;;
esac
AC_CONFIG_FILES([lib/core/test/Makefile])
AC_CONFIG_FILES([lib/core/Makefile])
AC_CONFIG_FILES([lib/logger/Makefile])
AC_CONFIG_FILES([lib/base/Makefile])
AC_CONFIG_FILES([lib/s1ap/asn1c/Makefile])
AC_CONFIG_FILES([lib/s1ap/Makefile])
AC_CONFIG_FILES([lib/nas/Makefile])
AC_CONFIG_FILES([lib/fd/extensions/dbg_msg_dumps/Makefile])
#AC_CONFIG_FILES([lib/fd/extensions/dict_legacy_xml/Makefile])
AC_CONFIG_FILES([lib/fd/extensions/dict_rfc5777/Makefile])
AC_CONFIG_FILES([lib/fd/extensions/dict_mip6i/Makefile])
AC_CONFIG_FILES([lib/fd/extensions/dict_nasreq/Makefile])
AC_CONFIG_FILES([lib/fd/extensions/dict_nas_mipv6/Makefile])
AC_CONFIG_FILES([lib/fd/extensions/dict_dcca/Makefile])
AC_CONFIG_FILES([lib/fd/extensions/dict_dcca_3gpp/Makefile])
AC_CONFIG_FILES([lib/fd/extensions/dict_s6a/Makefile])
AC_CONFIG_FILES([lib/fd/extensions/Makefile])
AC_CONFIG_FILES([lib/fd/gx/Makefile])
AC_CONFIG_FILES([lib/fd/s6a/Makefile])
AC_CONFIG_FILES([lib/fd/Makefile])
AC_CONFIG_FILES([lib/gtp/Makefile])
AC_CONFIG_FILES([lib/ipfw/Makefile])
AC_CONFIG_FILES([lib/Makefile])
AC_CONFIG_FILES([src/mme/Makefile])
AC_CONFIG_FILES([src/hss/Makefile])
AC_CONFIG_FILES([src/sgw/Makefile])
AC_CONFIG_FILES([src/pgw/Makefile])
AC_CONFIG_FILES([src/pcrf/Makefile])
AC_CONFIG_FILES([src/Makefile])
AC_CONFIG_FILES([test/Makefile])
AC_CONFIG_FILES([support/nextepc.conf])
AC_CONFIG_FILES([support/freeDiameter/mme.conf])
AC_CONFIG_FILES([support/freeDiameter/hss.conf])
AC_CONFIG_FILES([support/freeDiameter/pgw.conf])
AC_CONFIG_FILES([support/freeDiameter/pcrf.conf])
#AC_CONFIG_FILES([support/freeDiameter/dict_legacy_xml.conf])
AC_CONFIG_FILES([Makefile])
AC_OUTPUT
echo "
NextEPC configuration
--------------------
version : ${PACKAGE_VERSION}
host : ${host}
source code location : ${srcdir}
compiler : ${CC}
compiler flags : ${CFLAGS}
linker flags : ${LDFLAGS} ${LIBS}
config file directory : `eval echo \`echo ${sysconfdir}\``
log file directory : `eval echo \`echo ${prefix}/var/log\``
"

643
debian/changelog vendored Normal file
View File

@@ -0,0 +1,643 @@
open5gs (1.2.2~eoan) eoan; urgency=medium
* Bug Fixed
-- Sukchan Lee <acetcom@gmail.com> Wed, 25 Mar 2020 23:52:52 +0000
open5gs (1.2.2~disco) disco; urgency=medium
* Bug Fixed
-- Sukchan Lee <acetcom@gmail.com> Wed, 25 Mar 2020 23:51:53 +0000
open5gs (1.2.2~bionic) bionic; urgency=medium
* Bug Fixed
-- Sukchan Lee <acetcom@gmail.com> Wed, 25 Mar 2020 23:49:09 +0000
open5gs (1.2.2) unstable; urgency=medium
* Bug Fixed
-- Sukchan Lee <acetcom@gmail.com> Wed, 25 Mar 2020 23:46:47 +0000
open5gs (1.2.1~eoan) eoan; urgency=medium
* Bug Fixed
-- Sukchan Lee <acetcom@gmail.com> Wed, 05 Feb 2020 19:59:15 +0900
open5gs (1.2.1~disco) disco; urgency=medium
* Bug Fixed
-- Sukchan Lee <acetcom@gmail.com> Wed, 05 Feb 2020 19:58:05 +0900
open5gs (1.2.1~bionic) bionic; urgency=medium
* Bug Fixed
-- Sukchan Lee <acetcom@gmail.com> Wed, 05 Feb 2020 19:56:44 +0900
open5gs (1.2.1) unstable; urgency=medium
* Bug Fixed
-- Sukchan Lee <acetcom@gmail.com> Wed, 05 Feb 2020 19:52:54 +0900
open5gs (1.2.0~eoan) eoan; urgency=medium
* VoLTE tested
-- Sukchan Lee <acetcom@gmail.com> Sun, 12 Jan 2020 23:08:38 +0900
open5gs (1.2.0~disco) disco; urgency=medium
* VoLTE tested
-- Sukchan Lee <acetcom@gmail.com> Sun, 12 Jan 2020 23:07:41 +0900
open5gs (1.2.0~bionic2) bionic; urgency=medium
* VoLTE tested
-- Sukchan Lee <acetcom@gmail.com> Sun, 12 Jan 2020 23:05:19 +0900
open5gs (1.2.0) unstable; urgency=medium
* VoLTE tested
-- Sukchan Lee <acetcom@gmail.com> Sun, 12 Jan 2020 22:45:29 +0900
open5gs (1.1.0) unstable; urgency=medium
* Static IP addresses
* Many BUGS Fixed
-- Sukchan Lee <acetcom@gmail.com> Mon, 18 Nov 2019 22:27:05 +0900
open5gs (1.0.0) unstable; urgency=medium
* Change build-tool to MESON
* Many BUGS Fixed
-- Sukchan Lee <acetcom@gmail.com> Sun, 27 Oct 2019 06:34:23 +0000
open5gs (1.0.0~eoan6) eoan; urgency=medium
* Change build-tool to MESON
* Many BUGS Fixed
-- Sukchan Lee <acetcom@gmail.com> Sun, 27 Oct 2019 06:33:10 +0000
open5gs (1.0.0~disco6) disco; urgency=medium
* Change build-tool to MESON
* Many BUGS Fixed
-- Sukchan Lee <acetcom@gmail.com> Sun, 27 Oct 2019 06:32:11 +0000
open5gs (1.0.0~bionic6) bionic; urgency=medium
* Change build-tool to MESON
* Many BUGS Fixed
-- Sukchan Lee <acetcom@gmail.com> Sun, 27 Oct 2019 14:39:52 +0900
open5gs (0.5.2~disco) disco; urgency=medium
* Bug Fixed
-- Sukchan Lee <acetcom@gmail.com> Sun, 11 Aug 2019 13:21:24 +0000
open5gs (0.5.2~xenial) xenial; urgency=medium
* Bug Fixed
-- Sukchan Lee <acetcom@gmail.com> Sun, 11 Aug 2019 12:55:48 +0000
open5gs (0.5.2~bionic) bionic; urgency=medium
* Bug Fixed
-- Sukchan Lee <acetcom@gmail.com> Sun, 11 Aug 2019 11:51:07 +0000
open5gs (0.5.2) unstable; urgency=medium
* Bug Fixed
-- Sukchan Lee <acetcom@gmail.com> Sun, 11 Aug 2019 11:17:35 +0000
open5gs (0.5.1~xenial) xenial; urgency=medium
* SMSoSG Supported
* Many BUGS Fixed
-- Sukchan Lee <acetcom@gmail.com> Tue, 30 Jul 2019 22:42:27 +0900
open5gs (0.5.1~bionic) bionic; urgency=medium
* SMSoSG Supported
* Many BUGS Fixed
-- Sukchan Lee <acetcom@gmail.com> Tue, 30 Jul 2019 22:41:14 +0900
open5gs (0.5.1) unstable; urgency=medium
* SMSoSG Supported
* Many BUGS Fixed
-- Sukchan Lee <acetcom@gmail.com> Tue, 30 Jul 2019 21:34:15 +0900
open5gs (0.5.0-1~bionic) bionic; urgency=medium
* CSFB Supported
* OGSLib package name changed
-- Sukchan Lee <acetcom@gmail.com> Thu, 11 Jul 2019 15:34:08 +0000
open5gs (0.5.0-1~xenial) xenial; urgency=medium
* CSFB Supported
* OGSLib package name changed
-- Sukchan Lee <acetcom@gmail.com> Thu, 11 Jul 2019 15:09:05 +0000
open5gs (0.5.0) unstable; urgency=medium
* CSFB Supported
* OGSLib package name changed
-- Sukchan Lee <acetcom@gmail.com> Thu, 11 Jul 2019 22:26:35 +0900
open5gs (0.4.4~bionic) bionic; urgency=medium
* Bug Fixed
-- Sukchan Lee <acetcom@gmail.com> Sun, 30 Jun 2019 13:23:15 +0000
open5gs (0.4.4~xenial) xenial; urgency=medium
* Bug Fixed
-- Sukchan Lee <acetcom@gmail.com> Sun, 30 Jun 2019 13:21:59 +0000
open5gs (0.4.4) unstable; urgency=medium
* Bug Fixed
-- Sukchan Lee <acetcom@gmail.com> Sun, 30 Jun 2019 12:05:12 +0000
open5gs (0.4.3~xenial) xenial; urgency=medium
* Bug Fixed
-- Sukchan Lee <acetcom@gmail.com> Sat, 22 Jun 2019 06:57:10 +0000
open5gs (0.4.3~bionic) bionic; urgency=medium
* Bug Fixed
-- Sukchan Lee <acetcom@gmail.com> Sat, 22 Jun 2019 06:55:56 +0000
open5gs (0.4.3) unstable; urgency=medium
* Bug Fixed
-- Sukchan Lee <acetcom@gmail.com> Sat, 22 Jun 2019 03:30:10 +0000
open5gs (0.4.2~xenial) xenial; urgency=medium
* Bug Fixed
-- Sukchan Lee <acetcom@gmail.com> Tue, 28 May 2019 20:11:51 +0900
open5gs (0.4.2~bionic) bionic; urgency=medium
* Bug Fixed
-- Sukchan Lee <acetcom@gmail.com> Tue, 28 May 2019 20:09:02 +0900
open5gs (0.4.2) unstable; urgency=medium
* Bug Fixed
-- Sukchan Lee <acetcom@gmail.com> Tue, 28 May 2019 20:04:53 +0900
open5gs (0.4.1~bionic) bionic; urgency=medium
* Bug Fixed
-- Sukchan Lee <acetcom@gmail.com> Sat, 18 May 2019 09:59:17 +0000
open5gs (0.4.1~xenial) xenial; urgency=medium
* Bug Fixed
-- Sukchan Lee <acetcom@gmail.com> Sat, 18 May 2019 09:57:44 +0000
open5gs (0.4.1) unstable; urgency=medium
* Bug Fixed
-- Sukchan Lee <acetcom@gmail.com> Sat, 18 May 2019 08:18:59 +0000
open5gs (0.4.0) unstable; urgency=medium
* Integration with OGSLIB
-- Sukchan Lee <acetcom@gmail.com> Mon, 29 Apr 2019 14:09:03 +0000
open5gs (0.3.11~bionic) bionic; urgency=medium
* Bug Fixed
-- Sukchan Lee <acetcom@gmail.com> Sat, 27 Apr 2019 13:59:08 +0000
open5gs (0.3.11~xenial) xenial; urgency=medium
* Bug Fixed
-- Sukchan Lee <acetcom@gmail.com> Sat, 27 Apr 2019 13:57:42 +0000
open5gs (0.3.10~xenial) xenial; urgency=medium
* Bug Fixed
-- Sukchan Lee <acetcom@gmail.com> Fri, 17 Aug 2018 04:28:38 +0000
open5gs (0.3.10~bionic) bionic; urgency=medium
* Bug Fixed
-- Sukchan Lee <acetcom@gmail.com> Fri, 17 Aug 2018 04:21:39 +0000
open5gs (0.3.9~artful) artful; urgency=medium
* Bug Fixed
-- Sukchan Lee <acetcom@gmail.com> Sun, 03 Jun 2018 01:40:44 +0000
open5gs (0.3.9~xenial) xenial; urgency=medium
* Bug Fixed
-- Sukchan Lee <acetcom@gmail.com> Sun, 03 Jun 2018 01:39:33 +0000
open5gs (0.3.9~bionic) bionic; urgency=medium
* Bug Fixed
-- Sukchan Lee <acetcom@gmail.com> Sun, 03 Jun 2018 01:38:15 +0000
open5gs (0.3.8-1~bionic) bionic; urgency=medium
* Bug Fixed
-- Sukchan Lee <acetcom@gmail.com> Sat, 05 May 2018 22:37:45 +0900
open5gs (0.3.8~bionic) bionic; urgency=medium
* Bug Fixed
-- Sukchan Lee <acetcom@gmail.com> Sat, 05 May 2018 21:48:55 +0900
open5gs (0.3.8~xenial) xenial; urgency=medium
* Bug Fixed
-- Sukchan Lee <acetcom@gmail.com> Sun, 29 Apr 2018 21:47:25 +0900
open5gs (0.3.8~artful) artful; urgency=medium
* Bug Fixed
-- Sukchan Lee <acetcom@gmail.com> Sun, 29 Apr 2018 21:45:36 +0900
open5gs (0.3.7~artful) artful; urgency=medium
* Buf Fixed
-- Sukchan Lee <acetcom@gmail.com> Sat, 14 Apr 2018 15:02:05 +0900
open5gs (0.3.7~xenial) xenial; urgency=medium
* Bug Fixed
-- Sukchan Lee <acetcom@gmail.com> Sat, 14 Apr 2018 14:59:37 +0900
open5gs (0.3.6~xenial) xenial; urgency=medium
* Bug Fixed
-- Sukchan Lee <acetcom@gmail.com> Wed, 21 Mar 2018 08:02:52 +0000
open5gs (0.3.6~artful) artful; urgency=medium
* Bug Fixed
-- Sukchan Lee <acetcom@gmail.com> Wed, 21 Mar 2018 08:00:12 +0000
open5gs (0.3.5~xenial) xenial; urgency=medium
* Bug Fixed
-- Sukchan Lee <acetcom@gmail.com> Tue, 06 Mar 2018 12:41:53 +0000
open5gs (0.3.5~artful) artful; urgency=medium
* Bug Fixed
-- Sukchan Lee <acetcom@gmail.com> Tue, 06 Mar 2018 12:40:07 +0000
open5gs (0.3.4-1~xenial) xenial; urgency=medium
* Bug Fixed
-- Sukchan Lee <acetcom@gmail.com> Thu, 22 Feb 2018 02:16:08 +0000
open5gs (0.3.4-1~artful) artful; urgency=medium
* Bug Fixed
-- Sukchan Lee <acetcom@gmail.com> Thu, 22 Feb 2018 02:14:43 +0000
open5gs (0.3.4~xenial) xenial; urgency=medium
* Bug Fixed
-- Sukchan Lee <acetcom@gmail.com> Thu, 22 Feb 2018 02:09:23 +0000
open5gs (0.3.4~artful) artful; urgency=medium
* Bug Fixed
-- Sukchan Lee <acetcom@gmail.com> Thu, 22 Feb 2018 01:33:04 +0000
open5gs (0.3.3-3~artful) artful; urgency=medium
* Support Docker
-- Sukchan Lee <acetcom@gmail.com> Tue, 13 Feb 2018 04:47:43 +0000
open5gs (0.3.3-3~xenial) xenial; urgency=medium
* Support Docker
-- Sukchan Lee <acetcom@gmail.com> Tue, 13 Feb 2018 04:44:47 +0000
open5gs (0.3.3-2~xenial) xenial; urgency=medium
* Minor bug fixes
-- Sukchan Lee <acetcom@gmail.com> Sun, 11 Feb 2018 16:08:14 +0000
open5gs (0.3.3-2~artful) artful; urgency=medium
* Minor bug fixes
-- Sukchan Lee <acetcom@gmail.com> Sun, 11 Feb 2018 16:05:44 +0000
open5gs (0.3.3-1~xenial) xenial; urgency=medium
* Minor bug fixes
-- Sukchan Lee <acetcom@gmail.com> Sun, 11 Feb 2018 15:39:37 +0000
open5gs (0.3.3-1~artful) artful; urgency=medium
* Minor bug fixes
-- Sukchan Lee <acetcom@gmail.com> Sun, 11 Feb 2018 15:33:57 +0000
open5gs (0.3.3~artful) artful; urgency=medium
* Minor bug fixes
-- Sukchan Lee <acetcom@gmail.com> Sun, 11 Feb 2018 15:05:08 +0000
open5gs (0.3.3~xenial) xenial; urgency=medium
* Minor bug fixes
-- Sukchan Lee <acetcom@gmail.com> Sun, 11 Feb 2018 15:00:24 +0000
open5gs (0.3.2~zesty) zesty; urgency=medium
* VoLTE Support
-- Sukchan Lee <acetcom@gmail.com> Wed, 24 Jan 2018 08:06:32 +0000
open5gs (0.3.2~xenial) xenial; urgency=medium
* VoLTE Support
-- Sukchan Lee <acetcom@gmail.com> Wed, 24 Jan 2018 08:03:41 +0000
open5gs (0.3.2~artful) artful; urgency=medium
* VoLTE Support
-- Sukchan Lee <acetcom@gmail.com> Wed, 24 Jan 2018 08:00:24 +0000
open5gs (0.3.1-1~zesty) zesty; urgency=medium
* IPv6 Support (Linux Only)
* Change Configuration File (JSON -> YAML)
-- Sukchan Lee <acetcom@gmail.com> Sun, 31 Dec 2017 22:10:52 +0000
open5gs (0.3.1-1~xenial) xenial; urgency=medium
* IPv6 Support (Linux Only)
* Change Configuration File (JSON -> YAML)
-- Sukchan Lee <acetcom@gmail.com> Sun, 31 Dec 2017 22:09:26 +0000
open5gs (0.3.1-1~artful) artful; urgency=medium
* IPv6 Support (Linux Only)
* Change Configuration File (JSON -> YAML)
-- Sukchan Lee <acetcom@gmail.com> Sun, 31 Dec 2017 22:04:50 +0000
open5gs (0.3-3~zesty) zesty; urgency=medium
* IPv6 Support (Linux Only)
* Change Configuration File (JSON -> YAML)
-- Sukchan Lee <acetcom@gmail.com> Mon, 18 Dec 2017 10:18:26 +0000
open5gs (0.3-3~xenial) xenial; urgency=medium
* IPv6 Support (Linux Only)
* Change Configuration File (JSON -> YAML)
-- Sukchan Lee <acetcom@gmail.com> Mon, 18 Dec 2017 10:16:51 +0000
open5gs (0.3-3~artful) artful; urgency=medium
* IPv6 Support (Linux Only)
* Change Configuration File (JSON -> YAML)
-- Sukchan Lee <acetcom@gmail.com> Mon, 18 Dec 2017 10:15:18 +0000
open5gs (0.3-2~artful) artful; urgency=medium
* Fix the bug reboot scenario
-- Sukchan Lee <acetcom@gmail.com> Mon, 18 Dec 2017 07:06:52 +0000
open5gs (0.3-1~artful) artful; urgency=medium
* IPv6 Support (Linux Only)
* Change Configuration File (JSON -> YAML)
-- Sukchan Lee <acetcom@gmail.com> Mon, 18 Dec 2017 05:07:31 +0000
open5gs (0.2-6~artful2) artful; urgency=medium
* postrm script is improved to purge package completely.
-- Sukchan Lee <acetcom@gmail.com> Fri, 03 Nov 2017 02:30:53 +0000
open5gs (0.2-6~zesty2) zesty; urgency=medium
* postrm script is improved to purge package completely.
-- Sukchan Lee <acetcom@gmail.com> Fri, 03 Nov 2017 02:30:08 +0000
open5gs (0.2-6~xenial2) xenial; urgency=medium
* postrm script is improved to purge package completely.
-- Sukchan Lee <acetcom@gmail.com> Fri, 03 Nov 2017 02:28:41 +0000
open5gs (0.2-6~zesty) zesty; urgency=medium
* postrm script is improved to purge package completely.
-- Sukchan Lee <acetcom@gmail.com> Fri, 03 Nov 2017 02:25:37 +0000
open5gs (0.2-6~xenial) xenial; urgency=medium
* postrm script is improved to purge package completely.
-- Sukchan Lee <acetcom@gmail.com> Fri, 03 Nov 2017 02:23:54 +0000
open5gs (0.2-6~artful) artful; urgency=medium
* postrm script is improved to purge package completely.
-- Sukchan Lee <acetcom@gmail.com> Fri, 03 Nov 2017 02:00:14 +0000
open5gs (0.2-5~artful) artful; urgency=medium
* Relase 0.2
-- Sukchan Lee <acetcom@gmail.com> Thu, 02 Nov 2017 07:13:23 +0000
open5gs (0.2-5~zesty) zesty; urgency=medium
* Relase 0.2
-- Sukchan Lee <acetcom@gmail.com> Thu, 02 Nov 2017 07:12:17 +0000
open5gs (0.2-5~xenial) xenial; urgency=medium
* Release 0.2
-- Sukchan Lee <acetcom@gmail.com> Thu, 02 Nov 2017 07:11:16 +0000
open5gs (0.2-4~xenial2) xenial; urgency=medium
* Fix the bug open5gs-pgwd post install script
-- Sukchan Lee <acetcom@gmail.com> Tue, 31 Oct 2017 14:07:54 +0000
open5gs (0.2-4~artful) artful; urgency=medium
* Fix the bug open5gs-pgwd post install script
-- Sukchan Lee <acetcom@gmail.com> Tue, 31 Oct 2017 14:06:31 +0000
open5gs (0.2-4~zesty) zesty; urgency=medium
* Fix the bug open5gs-pgwd post install script
-- Sukchan Lee <acetcom@gmail.com> Tue, 31 Oct 2017 14:04:23 +0000
open5gs (0.2-4~xenial) xenial; urgency=medium
* Fix the bug open5gs-pgwd post install script
-- Sukchan Lee <acetcom@gmail.com> Tue, 31 Oct 2017 14:01:58 +0000
open5gs (0.2-3~artful) artful; urgency=medium
* MongoDB re-connect using systemd
-- Sukchan Lee <acetcom@gmail.com> Tue, 31 Oct 2017 12:10:18 +0000
open5gs (0.2-3~zesty) zesty; urgency=medium
* MongoDB re-connect using systemd
-- Sukchan Lee <acetcom@gmail.com> Tue, 31 Oct 2017 12:07:36 +0000
open5gs (0.2-3~xenial) xenial; urgency=medium
* MongoDB re-connect using systemd
-- Sukchan Lee <acetcom@gmail.com> Tue, 31 Oct 2017 12:00:16 +0000
open5gs (0.2-2~artful) artful; urgency=medium
* Fix PGW installation
-- Sukchan Lee <acetcom@gmail.com> Tue, 31 Oct 2017 05:02:03 +0000
open5gs (0.2-2~xenial) xenial; urgency=medium
* Fix PGW installation
-- Sukchan Lee <acetcom@gmail.com> Tue, 31 Oct 2017 03:16:02 +0000
open5gs (0.2-1~artful2) artful; urgency=medium
* Fix the compile error [-Werror=pointer]
-- Sukchan Lee <acetcom@gmail.com> Mon, 30 Oct 2017 13:14:42 +0000
open5gs (0.2-1~artful1) artful; urgency=medium
* Remove mongodb build-dependancy for Ubuntu 17.10(i386)
-- Sukchan Lee <acetcom@gmail.com> Mon, 30 Oct 2017 12:46:58 +0000
open5gs (0.2-1~artful) artful; urgency=medium
* Ubuntu 17.10(amd64)
* Currently, `mongodb` is not available in Ubuntu 17.10(i386)
-- Sukchan Lee <acetcom@gmail.com> Mon, 30 Oct 2017 06:50:47 +0000
open5gs (0.2-1~zesty) zesty; urgency=medium
* Ubuntu 17.04
-- Sukchan Lee <acetcom@gmail.com> Mon, 30 Oct 2017 06:47:55 +0000
open5gs (0.2-1~xenial) xenial; urgency=medium
* Add matapackage
* dh_overide_auto_test is re-enabled
-- Sukchan Lee <acetcom@gmail.com> Mon, 30 Oct 2017 03:48:39 +0000
open5gs (0.1.1) UNRELEASED; urgency=medium
* Initial release.
-- Harald Welte <laforge@gnumonks.org> Tue, 17 Oct 2017 08:19:54 +0200

1
debian/compat vendored Normal file
View File

@@ -0,0 +1 @@
11

143
debian/control vendored Normal file
View File

@@ -0,0 +1,143 @@
Source: open5gs
Section: net
Priority: optional
Maintainer: Harald Welte <laforge@gnumonks.org>
Uploaders: Sukchan Lee <acetcom@gmail.com>
Build-Depends: debhelper (>= 11),
git,
pkg-config,
meson (>= 0.43.0),
flex,
bison,
libgnutls28-dev,
libgcrypt-dev,
libssl-dev,
libidn11-dev,
libmongoc-dev,
libbson-dev,
libsctp-dev,
libyaml-dev,
Standards-Version: 4.3.0
Rules-Requires-Root: no
Homepage: https://open5gs.org
Vcs-Browser: https://github.com/open5gs/open5gs
Vcs-Git: git://github.com/open5gs/open5gs
Package: open5gs-common
Architecture: any
Multi-Arch: same
Depends: ${shlibs:Depends},
${misc:Depends}
Description: Open Source based 3GPP EPC (Shared Files)
Open5GS is a C-language Open Source implementation of the 3GPP Evolved
Packet Core, i.e. the core network of an LTE network.
.
This package contains some core libraries/plugins required by the other
binary packages such as open5gs-{mme,sgw,pgw,pcrf,hss}.
Package: open5gs-mme
Architecture: any
Multi-Arch: same
Depends: ${shlibs:Depends},
${misc:Depends},
open5gs-common (= ${binary:Version})
Description: Open Source based 3GPP EPC MME (Mobility Management Entity)
Open5GS is a C-language Open Source implementation of the 3GPP Evolved
Packet Core, i.e. the core network of an LTE network.
.
This package provides the MME (Mobility Management Engine), which
terminates the S1 interfaces from the eNodeBs cells in the cellular
network, and interfaces via S11 to the SGW as well as via S6a to the
HSS.
Package: open5gs-sgw
Architecture: any
Multi-Arch: same
Depends: ${shlibs:Depends},
${misc:Depends},
open5gs-common (= ${binary:Version})
Description: Open Source based 3GPP EPC SGW (Serving Gateway)
Open5GS is a C-language Open Source implementation of the 3GPP Evolved
Packet Core, i.e. the core network of an LTE network.
.
This package provides the SGW (Serving Gateway) which is situated
between the MME and PGW. It implements the S11 interface to the MME,
and the S5 interface to the PGW.
Package: open5gs-pgw
Architecture: any
Multi-Arch: same
Depends: ${shlibs:Depends},
${misc:Depends},
udev,
open5gs-common (= ${binary:Version})
Description: Open Source based 3GPP EPC PGW (Packet Data Network Gateway)
Open5GS is a C-language Open Source implementation of the 3GPP Evolved
Packet Core, i.e. the core network of an LTE network.
.
This package provides the PGW or PDN-GW (Packet Data Network Gateway)
element of the EPC, i.e. the gateway between the EPC and the external
packet data network, such as the public Internet. It implements the S5
interface towards the S-GW, the SGi interface towards the Internet,
and the S7 interface towards the PCRF.
Package: open5gs-pcrf
Architecture: any
Multi-Arch: same
Depends: ${shlibs:Depends},
${misc:Depends},
mongodb-org | mongodb,
open5gs-common (= ${binary:Version})
Description: Open Source based 3GPP EPC PCRF (Policy and Charging Rules Function)
Open5GS is a C-language Open Source implementation of the 3GPP Evolved
Packet Core, i.e. the core network of an LTE network.
.
This package contains the PCRF (Policy and Charging Rules Function),
which controls the service quality (QoS) of individual connections and
how to account/charge related traffic. It implements the Gx interface
towards the PGW using the DIAMETER protocol.
Package: open5gs-hss
Architecture: any
Multi-Arch: same
Depends: ${shlibs:Depends},
${misc:Depends},
mongodb-org | mongodb,
open5gs-common (= ${binary:Version})
Description: Open Source based 3GPP EPC HSS (Home Subscriber Server)
Open5GS is a C-language Open Source implementation of the 3GPP Evolved
Packet Core, i.e. the core network of an LTE network.
.
This package provides the HSS (Home Subscriber Server) element of the
EPC, i.e. the central database of mobile network subscribers, with
their IMSI, MSISDN, cryptographic key materials, service subscription
information, etc. It implements the S6a interface towards the MME
using the DIAMETER protocol.
Package: open5gs
Architecture: any
Multi-Arch: same
Depends: ${misc:Depends},
open5gs-common (= ${binary:Version}),
open5gs-mme (= ${binary:Version}),
open5gs-sgw (= ${binary:Version}),
open5gs-pgw (= ${binary:Version}),
open5gs-hss (= ${binary:Version}),
open5gs-pcrf (= ${binary:Version})
Description: Open Source based 3GPP EPC (metapackage)
Open5GS is a C-language Open Source implementation of the 3GPP Evolved
Packet Core, i.e. the core network of an LTE network.
.
This is a metapackage that depends on all the open5gs parts.
(MME, SGW, PGW, HSS, PCRF)
Package: open5gs-dbg
Architecture: any
Multi-Arch: same
Depends: ${misc:Depends},
open5gs (= ${binary:Version})
Description: Debug symbols for Open5GS
Open5GS is a C-language Open Source implementation of the 3GPP Evolved
Packet Core, i.e. the core network of an LTE network.
.
This package contains debug symbols for Open5GS.

55
debian/copyright vendored Normal file
View File

@@ -0,0 +1,55 @@
Format: http://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
Upstream-Name: open5gs
Source: https://github.com/open5gs/open5gs
Files: *
Copyright: 2017 Open5GS Group
License: AGPL-3
Files: lib/freeDiameter-1.2.1/*
Copyright: 2008-2011, WIDE Project and NICT
License: BSD-3-clause
Files: debian/*
Copyright: 2017 Harald Welte <laforge@gnumonks.org>
License: GPL-3
License: GPL-3
This package is free software: you can redistribute it and/or modify it
under the terms of the GNU General Public License as published by
the Free Software Foundation; version 3 of the License
.
This program is distributed in the hope that it will be useful, but
WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
for more details.
.
You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
.
On Debian systems, the complete text of the GNU General Public
License version 3 can be found in "/usr/share/common-licenses/GPL-3".
License: BSD-3-clause
Software License Agreement (BSD License)
.
Copyright (c) 2008-2011, WIDE Project and NICT
All rights reserved.
.
Redistribution and use of this software in source and binary forms, with or without modification, are·
permitted provided that the following conditions are met:
.
* Redistributions of source code must retain the above·
copyright notice, this list of conditions and the·
following disclaimer.
···
* Redistributions in binary form must reproduce the above·
copyright notice, this list of conditions and the·
following disclaimer in the documentation and/or other
materials provided with the distribution.
.
* Neither the name of the WIDE Project or NICT nor the·
names of its contributors may be used to endorse or·
promote products derived from this software without·
specific prior written permission of WIDE Project and·
NICT.

1
debian/open5gs-common.dirs vendored Normal file
View File

@@ -0,0 +1 @@
var/log/open5gs

6
debian/open5gs-common.install vendored Normal file
View File

@@ -0,0 +1,6 @@
usr/lib/*/libogs*.so*
usr/lib/*/libfd*.so*
usr/lib/*/freeDiameter/*.fdx
configs/freeDiameter/cacert.pem /etc/freeDiameter
configs/logrotate/open5gs /etc/logrotate.d
misc/db/open5gs-dbctl /usr/bin

52
debian/open5gs-common.postinst vendored Normal file
View File

@@ -0,0 +1,52 @@
#!/bin/sh
# postinst script for open5gs-common
#
# see: dh_installdeb(1)
set -e
# summary of how this script can be called:
# * <postinst> `configure' <most-recently-configured-version>
# * <old-postinst> `abort-upgrade' <new version>
# * <conflictor's-postinst> `abort-remove' `in-favour' <package>
# <new-version>
# * <postinst> `abort-remove'
# * <deconfigured's-postinst> `abort-deconfigure' `in-favour'
# <failed-install-package> <version> `removing'
# <conflicting-package> <version>
# for details, see http://www.debian.org/doc/debian-policy/ or
# the debian-policy package
case "$1" in
configure)
# create a open5gs group and user
if ! getent passwd open5gs >/dev/null; then
adduser --system --disabled-password --disabled-login \
--home /var/run/open5gs --no-create-home \
--quiet --group open5gs
fi
for dir in /var/log/open5gs; do
if ! dpkg-statoverride --list "$dir" >/dev/null 2>&1; then
dpkg-statoverride --update --add open5gs open5gs 0755 "$dir"
fi
done
;;
abort-upgrade|abort-remove|abort-deconfigure)
;;
*)
echo "postinst called with unknown argument \`$1'" >&2
exit 1
;;
esac
# dh_installdeb will replace this with shell code automatically
# generated by other debhelper scripts.
#DEBHELPER#
exit 0

44
debian/open5gs-common.postrm vendored Normal file
View File

@@ -0,0 +1,44 @@
#!/bin/sh
# postrm script for open5gs-common
#
# see: dh_installdeb(1)
set -e
# summary of how this script can be called:
# * <postrm> `remove'
# * <postrm> `purge'
# * <old-postrm> `upgrade' <new-version>
# * <new-postrm> `failed-upgrade' <old-version>
# * <new-postrm> `abort-install'
# * <new-postrm> `abort-install' <old-version>
# * <new-postrm> `abort-upgrade' <old-version>
# * <disappearer's-postrm> `disappear' <overwriter>
# <overwriter-version>
# for details, see http://www.debian.org/doc/debian-policy/ or
# the debian-policy package
case "$1" in
purge)
rm -f /var/log/open5gs/*.log || true
rmdir /var/log/open5gs || true
;;
remove|upgrade|failed-upgrade|abort-install|abort-upgrade|disappear)
;;
*)
echo "postrm called with unknown argument \`$1'" >&2
exit 1
;;
esac
# dh_installdeb will replace this with shell code automatically
# generated by other debhelper scripts.
#DEBHELPER#
exit 0

4
debian/open5gs-hss.install vendored Normal file
View File

@@ -0,0 +1,4 @@
usr/bin/open5gs-hssd
configs/freeDiameter/hss.* etc/freeDiameter
configs/open5gs/hss.yaml etc/open5gs
configs/systemd/open5gs-hssd.service lib/systemd/system

4
debian/open5gs-mme.install vendored Normal file
View File

@@ -0,0 +1,4 @@
usr/bin/open5gs-mmed
configs/freeDiameter/mme.* etc/freeDiameter
configs/open5gs/mme.yaml etc/open5gs
configs/systemd/open5gs-mmed.service lib/systemd/system

4
debian/open5gs-pcrf.install vendored Normal file
View File

@@ -0,0 +1,4 @@
usr/bin/open5gs-pcrfd
configs/freeDiameter/pcrf.* etc/freeDiameter
configs/open5gs/pcrf.yaml etc/open5gs
configs/systemd/open5gs-pcrfd.service lib/systemd/system

5
debian/open5gs-pgw.install vendored Normal file
View File

@@ -0,0 +1,5 @@
usr/bin/open5gs-pgwd
configs/freeDiameter/pgw.* etc/freeDiameter
configs/open5gs/pgw.yaml etc/open5gs
configs/systemd/99-open5gs.net* etc/systemd/network
configs/systemd/open5gs-pgwd.service lib/systemd/system

53
debian/open5gs-pgw.postinst vendored Normal file
View File

@@ -0,0 +1,53 @@
#!/bin/sh
# postinst script for open5gs-pgw
#
# see: dh_installdeb(1)
set -e
# summary of how this script can be called:
# * <postinst> `configure' <most-recently-configured-version>
# * <old-postinst> `abort-upgrade' <new version>
# * <conflictor's-postinst> `abort-remove' `in-favour' <package>
# <new-version>
# * <postinst> `abort-remove'
# * <deconfigured's-postinst> `abort-deconfigure' `in-favour'
# <failed-install-package> <version> `removing'
# <conflicting-package> <version>
# for details, see http://www.debian.org/doc/debian-policy/ or
# the debian-policy package
case "$1" in
configure)
if test "x`sysctl -n net.ipv6.conf.all.disable_ipv6`" = x1; then
echo "net.ipv6.conf.all.disable_ipv6=0" > /etc/sysctl.d/30-open5gs.conf
sysctl -p /etc/sysctl.d/30-open5gs.conf
fi
if test "x`systemctl is-enabled systemd-networkd`" = xdisabled; then
systemctl enable systemd-networkd
fi
deb-systemd-invoke restart systemd-networkd
if test -f /etc/sysctl.d/30-open5gs.conf && grep "ogstun" /proc/net/dev > /dev/null; then
echo "net.ipv6.conf.ogstun.disable_ipv6=0" > /etc/sysctl.d/30-open5gs.conf
sysctl -p /etc/sysctl.d/30-open5gs.conf
fi
;;
abort-upgrade|abort-remove|abort-deconfigure)
;;
*)
echo "postinst called with unknown argument \`$1'" >&2
exit 1
;;
esac
# dh_installdeb will replace this with shell code automatically
# generated by other debhelper scripts.
#DEBHELPER#
exit 0

46
debian/open5gs-pgw.postrm vendored Normal file
View File

@@ -0,0 +1,46 @@
#!/bin/sh
# postrm script for open5gs-pgw
#
# see: dh_installdeb(1)
set -e
# summary of how this script can be called:
# * <postrm> `remove'
# * <postrm> `purge'
# * <old-postrm> `upgrade' <new-version>
# * <new-postrm> `failed-upgrade' <old-version>
# * <new-postrm> `abort-install'
# * <new-postrm> `abort-install' <old-version>
# * <new-postrm> `abort-upgrade' <old-version>
# * <disappearer's-postrm> `disappear' <overwriter>
# <overwriter-version>
# for details, see http://www.debian.org/doc/debian-policy/ or
# the debian-policy package
case "$1" in
purge)
if grep "ogstun" /proc/net/dev > /dev/null; then
ip tuntap del name ogstun mode tun
fi
rm -f /etc/sysctl.d/30-open5gs.conf
;;
remove|upgrade|failed-upgrade|abort-install|abort-upgrade|disappear)
;;
*)
echo "postrm called with unknown argument \`$1'" >&2
exit 1
;;
esac
# dh_installdeb will replace this with shell code automatically
# generated by other debhelper scripts.
#DEBHELPER#
exit 0

3
debian/open5gs-sgw.install vendored Normal file
View File

@@ -0,0 +1,3 @@
usr/bin/open5gs-sgwd
configs/open5gs/sgw.yaml etc/open5gs
configs/systemd/open5gs-sgwd.service lib/systemd/system

17
debian/rules vendored Executable file
View File

@@ -0,0 +1,17 @@
#!/usr/bin/make -f
export DH_VERBOSE=1
export DEB_BUILD_MAINT_OPTIONS = hardening=+all
export LC_ALL = C.UTF-8
include /usr/share/dpkg/default.mk
%:
dh $@ --buildsystem=meson
override_dh_install:
dh_install --sourcedir=obj-$(DEB_HOST_GNU_TYPE)
override_dh_auto_test:
cd obj-$(DEB_HOST_GNU_TYPE) && meson test --suite unit

1
debian/source/format vendored Normal file
View File

@@ -0,0 +1 @@
3.0 (native)

86
docker/README.md Normal file
View File

@@ -0,0 +1,86 @@
Docker running example
===========================================
* Build Image
$ docker-compose build
* Development
$ docker-compose run dev
* Runtime
$ docker-compose \
-f docker-compose.yml -f docker-compose.run.yml run run
* Test
$ docker-compose \
-f docker-compose.yml -f docker-compose.test.yml run test
* Test(ubuntu:artful)
$ TAG=eoan docker-compose build
$ TAG=eoan docker-compose \
-f docker-compose.yml -f docker-compose.test.yml run test
* Development(fedora:latest)
$ DIST=fedora docker-compose build
$ DIST=fedora docker-compose run dev
* Runtime(debian:jessie)
$ DIST=debian TAG=stretch docker-compose build
$ DIST=debian TAG=stretch docker-compose
-f docker-compose.yml -f docker-compose.run.yml run run
* All Test with All Environment
$ ./check.sh
* Run WebUI
$ docker-compose up -d
For OpenSUSE Build Service Release
===========================================
* Build Package
$ ./build-aux/git-version-gen . > .tarball-version
$ dpkg-source -b .
$ rm -f .tarball-version
* Get Release Key
$ wget http://download.opensuse.org/repositories/home:/acetcom:/open5gs:/latest/xUbuntu_18.04/Release.key
$ sudo apt-key add Release.key
* Setup Repository
$ sudo sh -c "echo 'deb https://download.opensuse.org/repositories/home:/acetcom:/open5gs:/latest/xUbuntu_18.04/ ./' > /etc/apt/sources.list.d/open5gs-latest.list"
$ sudo apt-get update
For Launchpad Release
===========================================
* Run Docker
$ docker-compose run dev
* Setup Debian Environment
export DEBFULLNAME='Sukchan Lee'
export DEBEMAIL='acetcom@gmail.com'
* Transfer GPG key
$ gpg --export-secret-keys --armor --output private.asc
$ gpg --import private.asc
$ gpg --export > public.asc
$ gpg --import public.asc
* Upload OpenBuildService
$ dch -i
$ meson subprojects download freeDiameter
$ debuild -S -uc -us -d
$ osc co home:acetcom:open5gs latest
$ cd home\:acetcom\:open5gs/latest/
$ cp ~/git/open5gs_1.0.0.* .
$ osc ci -m "Update it"
* Upload LaunchPad
$ dch -i
$ meson subprojects download freeDiameter
$ debuild -S -d
$ dput ppa:open5gs/latest *.source.changes
* Build package
$ dpkg-buildpackage -d

19
docker/build/Dockerfile Normal file
View File

@@ -0,0 +1,19 @@
ARG dist=ubuntu
ARG tag=latest
ARG username=acetcom
FROM ${username}/${dist}-${tag}-open5gs-base
MAINTAINER Sukchan Lee <acetcom@gmail.com>
WORKDIR /root
COPY setup.sh /root
ARG USER=open5gs
ARG REPO=open5gs
ARG BRANCH=master
RUN git clone https://github.com/$USER/$REPO
ADD https://api.github.com/repos/$USER/$REPO/git/refs/heads/$BRANCH /root/open5gs-ver.json
RUN cd $REPO && \
git fetch && git checkout -f -B $BRANCH origin/$BRANCH && \
meson build && ninja -C build install

10
docker/build/setup.sh Executable file
View File

@@ -0,0 +1,10 @@
#!/bin/sh
if ! grep "ogstun" /proc/net/dev > /dev/null; then
ip tuntap add name ogstun mode tun
fi
ip addr del 10.45.0.1/16 dev ogstun 2> /dev/null
ip addr add 10.45.0.1/16 dev ogstun
ip addr del cafe::1/64 dev ogstun 2> /dev/null
ip addr add cafe::1/64 dev ogstun
ip link set ogstun up

View File

@@ -0,0 +1,28 @@
ARG dist=centos
ARG tag=latest
FROM ${dist}:${tag}
MAINTAINER Sukchan Lee <acetcom@gmail.com>
RUN yum -y install epel-release
RUN yum -y install https://centos7.iuscommunity.org/ius-release.rpm
RUN yum -y update
RUN yum -y install \
python3 \
ninja-build \
gcc \
flex \
bison \
git \
lksctp-tools-devel \
libidn-devel \
gnutls-devel \
libgcrypt-devel \
openssl-devel \
cyrus-sasl-devel \
libyaml-devel \
iproute \
mongo-c-driver-devel
RUN pip3 install --upgrade pip && pip install meson

1
docker/centos/7/dev Symbolic link
View File

@@ -0,0 +1 @@
../8/dev

View File

@@ -0,0 +1,29 @@
ARG dist=centos
ARG tag=latest
FROM ${dist}:${tag}
MAINTAINER Sukchan Lee <acetcom@gmail.com>
RUN dnf -y install epel-release && \
dnf -y install 'dnf-command(config-manager)' && \
dnf config-manager --set-enabled PowerTools && \
dnf -y update
RUN dnf -y install \
python3 \
ninja-build \
gcc \
flex \
bison \
git \
lksctp-tools-devel \
libidn-devel \
gnutls-devel \
libgcrypt-devel \
openssl-devel \
cyrus-sasl-devel \
libyaml-devel \
iproute \
mongo-c-driver-devel
RUN pip3 install --upgrade pip && pip install meson

View File

@@ -0,0 +1,22 @@
ARG dist=centos
ARG tag=latest
ARG username=acetcom
FROM ${username}/${dist}-${tag}-open5gs-base
MAINTAINER Sukchan Lee <acetcom@gmail.com>
RUN yum -y install \
cscope \
vim \
sudo \
iputils \
net-tools
COPY setup.sh /root
ARG username=acetcom
RUN useradd -m --uid=1000 ${username} && \
echo "${username} ALL=(root) NOPASSWD:ALL" > /etc/sudoers.d/${username} && \
chmod 0440 /etc/sudoers.d/${username}
WORKDIR /home/${username}

10
docker/centos/8/dev/setup.sh Executable file
View File

@@ -0,0 +1,10 @@
#!/bin/sh
if ! grep "ogstun" /proc/net/dev > /dev/null; then
ip tuntap add name ogstun mode tun
fi
ip addr del 10.45.0.1/16 dev ogstun 2> /dev/null
ip addr add 10.45.0.1/16 dev ogstun
ip addr del cafe::1/64 dev ogstun 2> /dev/null
ip addr add cafe::1/64 dev ogstun
ip link set ogstun up

1
docker/centos/latest Symbolic link
View File

@@ -0,0 +1 @@
8

27
docker/check.sh Executable file
View File

@@ -0,0 +1,27 @@
#!/bin/sh
docker-compose build
docker-compose -f docker-compose.yml -f docker-compose.test.yml run --rm test
TAG=eoan docker-compose build
TAG=eoan docker-compose -f docker-compose.yml -f docker-compose.test.yml run --rm test
DIST=fedora docker-compose build
DIST=fedora docker-compose -f docker-compose.yml -f docker-compose.test.yml run --rm test
DIST=fedora TAG=29 docker-compose build
DIST=fedora TAG=29 docker-compose -f docker-compose.yml -f docker-compose.test.yml run --rm test
DIST=centos docker-compose build
DIST=centos docker-compose -f docker-compose.yml -f docker-compose.test.yml run --rm test
DIST=centos TAG=7 docker-compose build
DIST=centos TAG=7 docker-compose -f docker-compose.yml -f docker-compose.test.yml run --rm test
DIST=debian docker-compose build
DIST=debian docker-compose -f docker-compose.yml -f docker-compose.test.yml run --rm test
DIST=debian TAG=stretch docker-compose build
DIST=debian TAG=stretch docker-compose -f docker-compose.yml -f docker-compose.test.yml run --rm test
docker rm $(docker ps -qa --no-trunc --filter "status=exited")

View File

@@ -0,0 +1,32 @@
ARG dist=ubuntu
ARG tag=latest
FROM ${dist}:${tag}
MAINTAINER Sukchan Lee <acetcom@gmail.com>
RUN apt-get update && \
apt-get upgrade -y && \
apt-get install -y --no-install-recommends \
python3-pip \
python3-setuptools \
python3-wheel \
ninja-build \
build-essential \
flex \
bison \
git \
libsctp-dev \
libgnutls28-dev \
libgcrypt-dev \
libssl-dev \
libidn11-dev \
libmongoc-dev \
libbson-dev \
libyaml-dev \
iproute2 \
ca-certificates \
netbase \
pkg-config && \
apt-get clean
RUN python3 -m pip install --upgrade pip
RUN python3 -m pip install meson

1
docker/debian/buster/dev Symbolic link
View File

@@ -0,0 +1 @@
../../ubuntu/bionic/dev

1
docker/debian/buster/latest Symbolic link
View File

@@ -0,0 +1 @@
latest

1
docker/debian/buster/stable Symbolic link
View File

@@ -0,0 +1 @@
stable

1
docker/debian/latest Symbolic link
View File

@@ -0,0 +1 @@
buster

1
docker/debian/stable Symbolic link
View File

@@ -0,0 +1 @@
buster

1
docker/debian/stretch Symbolic link
View File

@@ -0,0 +1 @@
buster

View File

@@ -0,0 +1,22 @@
version: '3'
services:
run:
network_mode: "host"
image: ${USER}/${DIST-ubuntu}-${TAG-latest}-open5gs-build
depends_on:
- mongodb
- build
cap_add:
- NET_ADMIN
devices:
- "/dev/net/tun:/dev/net/tun"
sysctls:
- net.ipv6.conf.all.disable_ipv6=0
volumes:
- config:/etc/open5gs
hostname: open5gs-run
command: /bin/bash -c "/root/setup.sh; /usr/bin/open5gs-pcrfd -D; /usr/bin/open5gs-pgwd -D; /usr/bin/open5gs-sgwd -D; /usr/bin/open5gs-hssd -D; /usr/bin/open5gs-mmed"
volumes:
config: {}

View File

@@ -0,0 +1,18 @@
version: '3'
services:
test:
image: ${USER}/${DIST-ubuntu}-${TAG-latest}-open5gs-build
depends_on:
- mongodb
- build
environment:
DB_URI: mongodb://mongodb/open5gs
cap_add:
- NET_ADMIN
devices:
- "/dev/net/tun:/dev/net/tun"
sysctls:
- net.ipv6.conf.all.disable_ipv6=0
hostname: open5gs-test
command: /bin/bash -c "/root/setup.sh; cd open5gs && ninja -C build test"

84
docker/docker-compose.yml Normal file
View File

@@ -0,0 +1,84 @@
version: '3'
services:
mongodb:
image: mongo
container_name: open5gs-mongodb
ports:
- "27017:27017"
volumes:
- mongodb:/data/db
webui:
build: webui
image: ${USER}/open5gs-webui
container_name: open5gs-webui
depends_on:
- mongodb
ports:
- "3000:3000"
depends_on:
- mongodb
environment:
DB_URI: mongodb://mongodb/open5gs
base:
build:
context: ./${DIST-ubuntu}/${TAG-latest}/base
args:
dist: ${DIST-ubuntu}
tag: ${TAG-latest}
image: ${USER}/${DIST-ubuntu}-${TAG-latest}-open5gs-base
command: /bin/bash -c "echo 'base' services"
build:
build:
context: ./build
args:
dist: ${DIST-ubuntu}
tag: ${TAG-latest}
username: ${USER}
image: ${USER}/${DIST-ubuntu}-${TAG-latest}-open5gs-build
depends_on:
- base
command: /bin/bash -c "echo 'build' services"
dev:
build:
context: ./${DIST-ubuntu}/${TAG-latest}/dev
args:
dist: ${DIST-ubuntu}
tag: ${TAG-latest}
username: ${USER}
image: ${USER}/${DIST-ubuntu}-${TAG-latest}-open5gs-dev
depends_on:
- mongodb
- base
environment:
- DB_URI=mongodb://mongodb/open5gs
- DISPLAY=$DISPLAY
# - DISPLAY=docker.for.mac.localhost:0
cap_add:
- NET_ADMIN
devices:
- "/dev/net/tun:/dev/net/tun"
sysctls:
- net.ipv6.conf.all.disable_ipv6=0
volumes:
- home:/home/${USER}
- ${HOME}:/mnt
- /tmp/.X11-unix:/tmp/.X11-unix
# - /etc/localtime:/etc/localtime:ro
# - /usr/share/zoneinfo/Europe/Helsinki:/etc/localtime:ro
hostname: open5gs-dev
user: ${USER}
entrypoint: /bin/bash -c "/bin/bash -c \"$${@}\""
command: |
/bin/bash -c "
sudo chmod 666 /dev/net/tun
sudo /root/setup.sh
/bin/bash || exit 0
"
volumes:
mongodb: {}
home: {}

1
docker/fedora/29 Symbolic link
View File

@@ -0,0 +1 @@
30

View File

@@ -0,0 +1,24 @@
ARG dist=fedora
ARG tag=latest
FROM ${dist}:${tag}
MAINTAINER Sukchan Lee <acetcom@gmail.com>
RUN dnf -y install \
python3 \
ninja-build \
gcc \
flex \
bison \
git \
lksctp-tools-devel \
libidn-devel \
gnutls-devel \
libgcrypt-devel \
openssl-devel \
cyrus-sasl-devel \
libyaml-devel \
iproute \
mongo-c-driver-devel
RUN pip3 install --upgrade pip && pip install meson

View File

@@ -0,0 +1,22 @@
ARG dist=fedora
ARG tag=latest
ARG username=acetcom
FROM ${username}/${dist}-${tag}-open5gs-base
MAINTAINER Sukchan Lee <acetcom@gmail.com>
RUN dnf -y install \
cscope \
vim \
sudo \
iputils \
net-tools
COPY setup.sh /root
ARG username=acetcom
RUN useradd -m --uid=1000 ${username} && \
echo "${username} ALL=(root) NOPASSWD:ALL" > /etc/sudoers.d/${username} && \
chmod 0440 /etc/sudoers.d/${username}
WORKDIR /home/${username}

10
docker/fedora/30/dev/setup.sh Executable file
View File

@@ -0,0 +1,10 @@
#!/bin/sh
if ! grep "ogstun" /proc/net/dev > /dev/null; then
ip tuntap add name ogstun mode tun
fi
ip addr del 10.45.0.1/16 dev ogstun 2> /dev/null
ip addr add 10.45.0.1/16 dev ogstun
ip addr del cafe::1/64 dev ogstun 2> /dev/null
ip addr add cafe::1/64 dev ogstun
ip link set ogstun up

1
docker/fedora/latest Symbolic link
View File

@@ -0,0 +1 @@
30

10
docker/package/Dockerfile Normal file
View File

@@ -0,0 +1,10 @@
ARG tag=latest
FROM ubuntu:${tag}
RUN apt-get update && \
apt-get -y install software-properties-common && \
add-apt-repository ppa:acetcom/open5gs && \
apt-get update && \
apt-get install -y open5gs
WORKDIR /root

View File

@@ -0,0 +1,31 @@
ARG dist=ubuntu
ARG tag=latest
FROM ${dist}:${tag}
MAINTAINER Sukchan Lee <acetcom@gmail.com>
RUN apt-get update && \
apt-get upgrade -y && \
apt-get install -y --no-install-recommends \
python3-pip \
python3-setuptools \
python3-wheel \
ninja-build \
build-essential \
flex \
bison \
git \
libsctp-dev \
libgnutls28-dev \
libgcrypt-dev \
libssl-dev \
libidn11-dev \
libmongoc-dev \
libbson-dev \
libyaml-dev \
iproute2 \
ca-certificates \
netbase \
pkg-config && \
apt-get clean
RUN python3 -m pip install meson

View File

@@ -0,0 +1,34 @@
ARG dist=ubuntu
ARG tag=latest
ARG username=acetcom
FROM ${username}/${dist}-${tag}-open5gs-base
MAINTAINER Sukchan Lee <acetcom@gmail.com>
RUN apt-get update && \
apt-get upgrade -y && \
DEBIAN_FRONTEND=noninteractive \
apt-get install -y --no-install-recommends \
git-buildpackage \
debhelper \
devscripts \
osc \
dput \
manpages-dev \
fakeroot \
cscope \
vim \
sudo \
iputils-ping \
wireshark \
net-tools && \
apt-get clean
COPY setup.sh /root
ARG username=acetcom
RUN useradd -m --uid=1000 ${username} && \
echo "${username} ALL=(root) NOPASSWD:ALL" > /etc/sudoers.d/${username} && \
chmod 0440 /etc/sudoers.d/${username}
WORKDIR /home/${username}

View File

@@ -0,0 +1,10 @@
#!/bin/sh
if ! grep "ogstun" /proc/net/dev > /dev/null; then
ip tuntap add name ogstun mode tun
fi
ip addr del 10.45.0.1/16 dev ogstun 2> /dev/null
ip addr add 10.45.0.1/16 dev ogstun
ip addr del cafe::1/64 dev ogstun 2> /dev/null
ip addr add cafe::1/64 dev ogstun
ip link set ogstun up

1
docker/ubuntu/eoan Symbolic link
View File

@@ -0,0 +1 @@
bionic

1
docker/ubuntu/latest Symbolic link
View File

@@ -0,0 +1 @@
bionic

1
docker/ubuntu/xenial Symbolic link
View File

@@ -0,0 +1 @@
bionic

21
docker/webui/Dockerfile Normal file
View File

@@ -0,0 +1,21 @@
FROM node:carbon
MAINTAINER Sukchan Lee <acetcom@gmail.com>
ARG PACKAGE=open5gs
ARG VERSION=1.0.0
RUN set -e; \
cd /usr/src; \
rm -rf ./$PACKAGE; \
curl -SLO "https://github.com/open5gs/$PACKAGE/archive/v$VERSION.tar.gz"; \
tar -xvf v$VERSION.tar.gz; \
mv ./$PACKAGE-$VERSION/ ./$PACKAGE;
WORKDIR /usr/src/open5gs/webui
RUN npm install && \
npm run build
CMD npm run start
EXPOSE 3000

3
docs/.gitignore vendored Normal file
View File

@@ -0,0 +1,3 @@
_site
.sass-cache
.jekyll-metadata

24
docs/Gemfile Normal file
View File

@@ -0,0 +1,24 @@
source "https://rubygems.org"
# Hello! This is where you manage which Jekyll version is used to run.
# When you want to use a different version, change it below, save the
# file and run `bundle install`. Run Jekyll with `bundle exec`, like so:
#
# bundle exec jekyll serve
#
# This will help ensure the proper Jekyll version is running.
# Happy Jekylling!
gem "jekyll", "~> 3.8.5"
gem "minima", "~> 2.0"
gem 'jekyll-seo-tag'
# If you want to use GitHub Pages, remove the "gem "jekyll"" above and
# uncomment the line below. To upgrade, run `bundle update github-pages`.
# gem "github-pages", group: :jekyll_plugins
# If you have any plugins, put them here!
group :jekyll_plugins do
gem "jekyll-feed", "~> 0.6"
gem "jekyll-redirect-from"
end

77
docs/Gemfile.lock Normal file
View File

@@ -0,0 +1,77 @@
GEM
remote: https://rubygems.org/
specs:
addressable (2.6.0)
public_suffix (>= 2.0.2, < 4.0)
colorator (1.1.0)
concurrent-ruby (1.1.5)
em-websocket (0.5.1)
eventmachine (>= 0.12.9)
http_parser.rb (~> 0.6.0)
eventmachine (1.2.7)
ffi (1.10.0)
forwardable-extended (2.6.0)
http_parser.rb (0.6.0)
i18n (0.9.5)
concurrent-ruby (~> 1.0)
jekyll (3.8.5)
addressable (~> 2.4)
colorator (~> 1.0)
em-websocket (~> 0.5)
i18n (~> 0.7)
jekyll-sass-converter (~> 1.0)
jekyll-watch (~> 2.0)
kramdown (~> 1.14)
liquid (~> 4.0)
mercenary (~> 0.3.3)
pathutil (~> 0.9)
rouge (>= 1.7, < 4)
safe_yaml (~> 1.0)
jekyll-feed (0.12.1)
jekyll (>= 3.7, < 5.0)
jekyll-redirect-from (0.15.0)
jekyll (>= 3.3, < 5.0)
jekyll-sass-converter (1.5.2)
sass (~> 3.4)
jekyll-seo-tag (2.6.0)
jekyll (~> 3.3)
jekyll-watch (2.2.1)
listen (~> 3.0)
kramdown (1.17.0)
liquid (4.0.3)
listen (3.1.5)
rb-fsevent (~> 0.9, >= 0.9.4)
rb-inotify (~> 0.9, >= 0.9.7)
ruby_dep (~> 1.2)
mercenary (0.3.6)
minima (2.5.0)
jekyll (~> 3.5)
jekyll-feed (~> 0.9)
jekyll-seo-tag (~> 2.1)
pathutil (0.16.2)
forwardable-extended (~> 2.6)
public_suffix (3.0.3)
rb-fsevent (0.10.3)
rb-inotify (0.10.0)
ffi (~> 1.0)
rouge (3.3.0)
ruby_dep (1.5.0)
safe_yaml (1.0.5)
sass (3.7.4)
sass-listen (~> 4.0.0)
sass-listen (4.0.0)
rb-fsevent (~> 0.9, >= 0.9.4)
rb-inotify (~> 0.9, >= 0.9.7)
PLATFORMS
ruby
DEPENDENCIES
jekyll (~> 3.8.5)
jekyll-feed (~> 0.6)
jekyll-redirect-from
jekyll-seo-tag
minima (~> 2.0)
BUNDLED WITH
2.0.1

108
docs/_config.yml Normal file
View File

@@ -0,0 +1,108 @@
# Welcome to Jekyll!
#
# This config file is meant for settings that affect your whole blog, values
# which you are expected to set up once and rarely edit after that. If you find
# yourself editing this file very often, consider using Jekyll's data files
# feature for the data you need to update frequently.
#
# For technical reasons, this file is *NOT* reloaded automatically when you use
# 'bundle exec jekyll serve'. If you change this file, please restart the server process.
# Site settings
# These are used to personalize your new site. If you look in the HTML files,
# you will see them accessed via {{ site.title }}, {{ site.email }}, and so on.
# You can create any custom variable you would like, and they will be accessible
# in the templates via {{ site.myvariable }}.
title: Open5GS
email: acetcom@gmail.com
description: >- # this means to ignore newlines until "baseurl:"
An open source implementation of the Evolved Packet Core of LTE networks
supporting 3GPP Release 14.
baseurl: "/open5gs" # the subpath of your site, e.g. /blog
url: "https://open5gs.org" # the base hostname & protocol for your site, e.g. http://example.com
author: "Sukchan Lee"
github_username: open5gs
google_analytics: UA-139225646-2
# Build settings
markdown: kramdown
plugins:
- jekyll-feed
- jekyll-seo-tag
- jekyll-redirect-from
include:
- _pages
# Exclude from processing.
# The following items will not be processed, by default. Create a custom list
# to override the default setting.
exclude:
- Gemfile
- Gemfile.lock
- node_modules
- vendor/bundle/
- vendor/cache/
- vendor/gems/
- vendor/ruby/
# Minima date format
# refer to http://shopify.github.io/liquid/filters/date/ if you want to customize this
minima_reboot:
date_format: "%Y-%m-%d %H:%M"
footer_icons:
- username: open5gs
url: https://open5gs.org
icon: icon-github.svg
header_pages:
- _pages/docs.md
- _pages/faq.md
- _pages/about.md
- _pages/github.md
show_excerpts: true
# Collections
collections:
docs:
output: true
permalink: /:collection/:path/
defaults:
# _pages
- scope:
path: ""
type: pages
values:
layout: page
# _posts
- scope:
path: ""
type: posts
values:
layout: post
# _docs
- scope:
path: ""
type: docs
values:
layout: post
# Archives
# Type
# - GitHub Pages compatible archive pages built with Liquid ~> type: liquid (default)
# - Jekyll Archives plugin archive pages ~> type: jekyll-archives
# Path (examples)
# - Archive page should exist at path when using Liquid method or you can
# expect broken links (especially with breadcrumbs enabled)
# - <base_path>/tags/my-awesome-tag/index.html ~> path: /tags/
# - <base_path/categories/my-awesome-category/index.html ~> path: /categories/
# - <base_path/my-awesome-category/index.html ~> path: /
category_archive:
type: liquid
path: /categories/
tag_archive:
type: liquid
path: /tags/

Some files were not shown because too many files have changed in this diff Show More