Re: SMPP reconnection on invalid username/password
Alexander Malysh <[email protected]>
| Newsgroups | gmane.comp.mobile.kannel.devel |
|---|---|
| Message-ID | <[email protected]> |
Hi, yes it really intentional. if SMSC returns such error and your system_id/password are correct then it's SMSC bug! Imagine SMSC could not retrieve your login data for some reason it should never claim your system_id or password is wrong (for this purpose exists Bind Failed)! Why kannel has such behavior: because some SMSCs suspend (security issue) your account when you unintentionally supplied wrong system_id or password. And then you have to contact support and explain something etc. etc. It's just good behavior to not to abuse SMSC... Thanks, Alex Peter Christensen schrieb: > Hi, > > I've been experiencing problems where kannel at some time no longer > attempts to reconnect a gateway, which is down. Here's what basically > happens (gateway name and address is replaced with fake name/address): > > ERROR: System error 111: Connection refused > ERROR: error connecting to server `1.2.3.4' at port `2775' > ERROR: SMPP[gateway]: Couldn't connect to server. > ERROR: SMPP[gateway]: Couldn't connect to SMS center (retrying in 10 > seconds). > ERROR: connect failed > ERROR: System error 111: Connection refused > ERROR: error connecting to server `1.2.3.4' at port `2775' > ERROR: SMPP[gateway]: Couldn't connect to server. > ERROR: SMPP[gateway]: Couldn't connect to SMS center (retrying in 10 > seconds). > WARNING: SMPP: PDU NULL terminated string has no NULL. > ERROR: SMPP[gateway]: SMSC rejected login to transmit, code 0x0000000f > (Invalid System ID). > ERROR: SMPP[gateway]: I/O error or other error. Re-connecting. > > Although kannel claim to be reconnect when the login was invalid, this > never occurs. The thread terminates, but bearerbox still report the > state of the gateway as "reconnecting". > > When examining the code, it is very obvious that the SMPP gateway code > is meant to terminate when login is rejected: > > > gateway/gw/smsc/smsc_smpp.c:1468 > if (pdu->u.bind_transmitter_resp.command_status == > SMPP_ESME_RINVSYSID || > pdu->u.bind_transmitter_resp.command_status == > SMPP_ESME_RINVPASWD) > smpp->quitting = 1; > > > gateway/gw/smsc/smsc_smpp.c:1488 > if (pdu->u.bind_transceiver_resp.command_status == > SMPP_ESME_RINVSYSID || > pdu->u.bind_transceiver_resp.command_status == > SMPP_ESME_RINVPASWD) > smpp->quitting = 1; > > > Is this really intentional? And if so, isn't it then wrong to say claim > that kannel will reconnect? > > > Med venlig hilsen / Best regards > > Peter Christensen > > Developer > ------------------ > Cool Systems ApS > > Tel: +45 2888 1600 > @ : [email protected] > www: www.coolsystems.dk > >