Re: [Devel] Two (or 3) issues with oversized messages via MM1

2011-01-04 Thread Paul Bagyenda
Patched. Thanks
On Jan 04, 2011, at 18:25, Piotr Isajew wrote:

> There was a bug in a patch I sent on 23rd Dec. It could cause
> segfaults in mmsbox. I'm attaching a corrected version against
> current CVS source.
> 
> ___
> Devel mailing list
> Devel@mbuni.org
> http://lists.mbuni.org/mailman/listinfo/devel

___
Devel mailing list
Devel@mbuni.org
http://lists.mbuni.org/mailman/listinfo/devel


Re: [Devel] Two (or 3) issues with oversized messages via MM1

2011-01-04 Thread Piotr Isajew
There was a bug in a patch I sent on 23rd Dec. It could cause
segfaults in mmsbox. I'm attaching a corrected version against
current CVS source.

--- mbuni-cvs-orig/extras/mmsbox-mm1/mmsbox_mm1.c   
+++ mbuni-cvs/extras/mmsbox-mm1/mmsbox_mm1.c
@@ -344,11 +344,15 @@
  mms_info(0, "mmsbox-mm1", NULL, "sent message, type=%s, result=%s", 
  mms_message_type_to_cstr(mms_messagetype(m)), r->error ? 
octstr_get_cstr(r->error) : "(none)");
  /* destroy the structure. */
+ if(r->error && (octstr_compare(r->error, 
octstr_imm("Error-service-denied")) == 0 ||
+octstr_compare(r->error, 
octstr_imm("Error-permanent-failure")) == 0))
+   *retry = 0;
+ else
+   *retry = 1;
  
  pthread_cond_destroy(&r->cond);
  pthread_mutex_destroy(&r->mutex);
  gw_free(r);
- *retry = 1; /*  always retry ?? */
  
  return id;
 }
@@ -491,9 +495,17 @@
 mms_warning(0, "mmsbox-mm1", NULL,"No send-conf 
returned by operator");
 
if (m == NULL ||
-   (r->result = mms_get_header_value(m, 
octstr_imm("Message-ID"))) == NULL) {
+   (r->result = mms_get_header_value(m, 
octstr_imm("Message-ID"))) == NULL ||
+   octstr_compare(mms_get_header_value(m, 
octstr_imm("X-Mms-Response-Status")),
+  octstr_imm("Ok")) != 0
+   ) {
 Octstr *err = m ? mms_get_header_value(m, 
octstr_imm("X-Mms-Response-Text")) : NULL;
 Octstr *status = m ? mms_get_header_value(m, 
octstr_imm("X-Mms-Response-Status")) : NULL;
+if(status && (octstr_compare(status, 
octstr_imm("Error-service-denied")) == 0 ||
+  octstr_compare(status, 
octstr_imm("Error-permanent-failure")) == 0)) {
+  r->error = octstr_duplicate(status);
+}
+r->result = NULL; /* indicate failure to bearerbox */
 mms_error(0, "mmsbox-mm1", NULL, "Sending failed: %s, 
%s!", 
   err ? octstr_get_cstr(err) : "(none)", 
   status ? octstr_get_cstr(status) : "(none)");
 


pgpdIvMXsDHzp.pgp
Description: PGP signature
___
Devel mailing list
Devel@mbuni.org
http://lists.mbuni.org/mailman/listinfo/devel


Re: [Devel] Two (or 3) issues with oversized messages via MM1

2011-01-02 Thread Paul Bagyenda
Loks good. Applied. Thanks
On Jan 02, 2011, at 21:49, Piotr Isajew wrote:

> On Thu, Dec 23, 2010 at 04:47:08PM +0100, Piotr Isajew wrote:
> 
>> I'm attaching a patch that fixes those problems for me. However
>> after applying it I noticed that DLR url isn't called for failed
>> messages:
> 
> I think I found the solution:
> 
> --- mbuni-cvs-orig/mmsbox/bearerbox.c
> +++ mbuni-cvs/mmsbox/bearerbox.c
> @@ -1563,8 +1563,14 @@
>  if (rr_url)
>   mms_dlr_url_put(id, "read-report", groupid, rr_url, 
> orig_transid); 
>  ret = MMS_SEND_OK;
> - } else 
> - ret = retry ? MMS_SEND_ERROR_TRANSIENT : MMS_SEND_ERROR_FATAL; 
> + } else {
> + ret = retry ? MMS_SEND_ERROR_TRANSIENT : MMS_SEND_ERROR_FATAL;
> + if(!retry) {
> +   if(dlr_url)
> + mms_dlr_url_put(e->msgId, "delivery-report", groupid, dlr_url, 
> orig_transid);
> + }
> + }
> 
>  *new_msgid = id;
> ___
> Devel mailing list
> Devel@mbuni.org
> http://lists.mbuni.org/mailman/listinfo/devel

___
Devel mailing list
Devel@mbuni.org
http://lists.mbuni.org/mailman/listinfo/devel


Re: [Devel] Two (or 3) issues with oversized messages via MM1

2011-01-02 Thread Piotr Isajew
On Thu, Dec 23, 2010 at 04:47:08PM +0100, Piotr Isajew wrote:

> I'm attaching a patch that fixes those problems for me. However
> after applying it I noticed that DLR url isn't called for failed
> messages:

I think I found the solution:

--- mbuni-cvs-orig/mmsbox/bearerbox.c
+++ mbuni-cvs/mmsbox/bearerbox.c
@@ -1563,8 +1563,14 @@
  if (rr_url)
   mms_dlr_url_put(id, "read-report", groupid, rr_url, 
orig_transid); 
  ret = MMS_SEND_OK;
- } else 
- ret = retry ? MMS_SEND_ERROR_TRANSIENT : MMS_SEND_ERROR_FATAL; 
+ } else {
+ ret = retry ? MMS_SEND_ERROR_TRANSIENT : MMS_SEND_ERROR_FATAL;
+ if(!retry) {
+   if(dlr_url)
+ mms_dlr_url_put(e->msgId, "delivery-report", groupid, dlr_url, 
orig_transid);
+ }
+ }
  
  *new_msgid = id;


pgptaeu1cUCFx.pgp
Description: PGP signature
___
Devel mailing list
Devel@mbuni.org
http://lists.mbuni.org/mailman/listinfo/devel