diff options
author | Harald Welte <laforge@gnumonks.org> | 2019-05-08 23:55:58 +0200 |
---|---|---|
committer | Harald Welte <laforge@gnumonks.org> | 2019-05-10 07:07:00 +0000 |
commit | c0847d641c2a46e091b349467899df93bcc3cf5c (patch) | |
tree | 52fd57be4bc041f4f1cca0abc03b5a59ecca80a0 /src/libmsc/smpp_smsc.h | |
parent | 7f85acea9bb9f80e208820958f4cae63625f3689 (diff) |
SMPP: Don't accept password or system-id exceeding spec length
The SMPP 3.4 specification defines the password field as a
"Variable-length octet string with maximum length of 9", and according
to table 3-1 this means including the terminating NUL-byte.
However, OsmoMSC allows to configure longer passwords in the ESME
configuration. Those passwords will then never match, as libsmpp34
performs length validation and generates a parser error for anyone
trying to send a longer password via SMPP.
The same applies for system-id, where we have to permit only 15
characters with zero termination, but not 16 characters.
Change-Id: I81ef593e84bf1e15f6746386fc145495fae29354
Closes: OS#3166
Diffstat (limited to 'src/libmsc/smpp_smsc.h')
-rw-r--r-- | src/libmsc/smpp_smsc.h | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/src/libmsc/smpp_smsc.h b/src/libmsc/smpp_smsc.h index 1c9eae68e..b26d01126 100644 --- a/src/libmsc/smpp_smsc.h +++ b/src/libmsc/smpp_smsc.h @@ -13,8 +13,8 @@ #include <smpp34_structs.h> #include <smpp34_params.h> -#define SMPP_SYS_ID_LEN 16 -#define SMPP_PASSWD_LEN 16 +#define SMPP_SYS_ID_LEN 15 +#define SMPP_PASSWD_LEN 8 #define MODE_7BIT 7 #define MODE_8BIT 8 |