Hi, Please take a look on smpp and cimd2 patch so now those protocols can support DLR_EXPIRED.
Best regards Marcin 'Iwan' K-k.
Index: gw/smsbox.c =================================================================== --- gw/smsbox.c (wersja 5173) +++ gw/smsbox.c (kopia robocza) @@ -2187,7 +2187,7 @@ msg->sms.dlr_url = octstr_create(""); } - if ( dlr_mask < -1 || dlr_mask > 63 ) { /* 00111111 */ + if ( dlr_mask < -1 || dlr_mask > 255 ) { /* 11111111 */ returnerror = octstr_create("DLR-Mask field misformed, rejected"); goto field_error; } Index: gw/smsc/smsc_cimd2.c =================================================================== --- gw/smsc/smsc_cimd2.c (wersja 5173) +++ gw/smsc/smsc_cimd2.c (kopia robocza) @@ -2100,6 +2100,8 @@ switch(st_code) { case 2: /* validity period expired */ + code = DLR_EXPIRED; + break; case 3: /* delivery failed */ case 6: /* last no response */ case 7: /* message cancelled */ Index: gw/smsc/smsc_smpp.c =================================================================== --- gw/smsc/smsc_smpp.c (wersja 5173) +++ gw/smsc/smsc_smpp.c (kopia robocza) @@ -1477,6 +1477,8 @@ dlrstat = DLR_SUCCESS; break; case 3: /* EXPIRED */ + dlrstat = DLR_EXPIRED; + break; case 4: /* DELETED */ case 5: /* UNDELIVERABLE */ case 7: /* UNKNOWN */