RE: EMS and splitting

2002-01-17 Thread Angel Fradejas
Title: RE: EMS and splitting



Well, currently Kannel accepts and splits things like 
this:
 
    udh=5 bytes text=200bytes
    part 1: udh=11 bytes text=129 
bytes
    part 2: udh=11 bytes text=71 
bytes
 
So I tried to feed it with
 
    
udh=200 bytes text=5 
bytes
 
to see what happened. And smsbox fails and exits. 
   
    >sure it doesnt fit 
into a message. how else could it split an UDH?
 
If kannel doesn't know how to handle anything, it must report it, not 
exit.
 
I think everybody agrees this is a 
bug.
 
Angel Fradejas.
 

  -Mensaje original-De: Andreas Fink 
  [mailto:[EMAIL PROTECTED]]Enviado el: jueves 17 de enero de 2002 
  12:16Para: Angel FradejasAsunto: RE: EMS and 
  splitting
  Ok, the general opinion seems to maintain Kannel as simple as 
possible, and I agree. So I'll keep EMS splitting out of kannel, in my 
calling application.
   
  But I think smsbox must not panic with any given input, so I'll try 
to fix that. Currently smsbox doesn't like big UDH's (140+), so I'll take a 
look at it.
   
  
  sure it doesnt fit into a message. how else could it split an UDH?
  The information in a EMS UDH is relative to the part it is sending.
  
  -- 

  Andreas 
  FinkFink-Consulting--Tel: 
  +41-61-6932730 Fax: +41-61-6932729  Mobile: +41-79-2457333Address: A. 
  Fink, Schwarzwaldallee 16, 4058 Basel, SwitzerlandE-Mail:  
  [EMAIL PROTECTED]  Homepage: 
  http://www.finkconsulting.com--Something 
  urgent? Try http://www.smsrelay.com/  Nickname 
afink


RE: EMS and splitting

2002-01-17 Thread Angel Fradejas
Title: Re: EMS and splitting



Ok, the general opinion seems to maintain Kannel as simple as possible, 
and I agree. So I'll keep EMS splitting out of kannel, in my calling 
application.
 
But I think smsbox must not panic with any given input, so I'll try to 
fix that. Currently smsbox doesn't like big UDH's (140+), so I'll take a look at 
it. 
 
The assertion failed is
 
    2002-01-16 20:46:52 [3] PANIC: gwlib/octstr.c:260: 
octstr_copy_real: Assertion `len >= 0' failed.
 
The problem is in shared.c/sms_split.
 
How should it handle a 140+ UDH? Do we truncate it? (bad 
idea) Or should smsbox report a failed send (more 
convenient).
 
In general neither bearerbox nor smsbox should quit because of invalid 
input (I'm also thinking about current posts about PDU unpacking). If 
we want kannel to to be like an "Apache for SMS/WAP", we have to take care of 
that. It must be seen and treated like a possible exploit.
 

  -Mensaje original-De: Andreas Fink 
  [mailto:[EMAIL PROTECTED]]Enviado el: miércoles 16 de enero de 2002 
  22:50Para: Angel FradejasAsunto: Re: EMS and 
  splitting
  I'm working 
on an application that uses EMS to send graphic elements in messages. It's 
almost done, but I've came up with a problem with large messages that needs 
splitting: smsbox fails to do the work, it exists with a failed assertion. 
If the message fits in a single sms, everything is fine.
  
  if you do EMS, you need to split the message BEFORE you send it to 
  smsbox. The reason for that is that the UDH header actually contains the data 
  of the pictures, not the content itself. and usually that's the thing which 
  grows bigger. SMSBox is not ready to handle that. Furthermore the individual 
  UDH headers of every partial SMS have relative references to the relative text 
  part of the corresponding part so it means you need to know the context.
  
  Of course I 
have a workaround for this: my application takes care of correctly splitting 
the message into fragments, then send the fragments individually through 
Kannel.
  
  well then maybe the sizes dont match or something like that.
  
   
  But I'm 
interested in contributing to Kannel a patch to do the required splitting 
for EMS correctly. Anyone with EMS knowlegde has any ideas or advise on how 
to acomplish this? I mean, currently Kannel duplicates the UDH part of a 
large SMS into all the fragments after splitting. That's not the case win 
EMS, we'll have to avoid that under certain scenarios, and maintain it 
for others (Nokia NBS headers for example).
   
  So, 
traversing the UDH and treating each of the IE's separately, based on known 
IEI's, could be a solution. Anyone with a more elegant 
  idea?
   
  Of course, 
is there any interest in doing EMS stuff inside kannel? (I mean only proper 
splitting, not message composition).
  
  
  I dont think it makes sense to split EMS inside kannel. It would result 
  in a new format to be created for EMS input which is not standard in 
  anyway.
  
  whats' the assertion SMSBox fails on?
  -- 

  Andreas 
  FinkFink-Consulting--Tel: 
  +41-61-6932730 Fax: +41-61-6932729  Mobile: +41-79-2457333Address: A. 
  Fink, Schwarzwaldallee 16, 4058 Basel, SwitzerlandE-Mail:  
  [EMAIL PROTECTED]  Homepage: 
  http://www.finkconsulting.com--Something 
  urgent? Try http://www.smsrelay.com/  Nickname 
afink


AW: EMS and splitting

2002-01-17 Thread Jörg Pommnitz

Well, you do not have to teach Kannel about EMS for correct splitting. After
all, EMS is just an extension for the default GSM UDH header. If the current
code panics, it is clearly buggy in this regard.
 
So my opinion: adding UDH-splitting is useful and can be added to Kannel
without violating KISS principles.
 
Regards
  Jörg

-Ursprüngliche Nachricht-
Von: Alexei Pashkovsky [mailto:[EMAIL PROTECTED]]
Gesendet am: Donnerstag, 17. Januar 2002 00:08
An: Kannel Developers
Betreff: Re: EMS and splitting

I think as the kannel target is to stay as simple as possible, all the
functionality for advanced sms services (EMS, SMART-SMS, WAP PUSH etc)
should be implemented externally, so that kannel would not deal with things
custom applications take care about, besides it gives more freedom for
application developers.
The only thing usefull indeed could be sharing the example code for such
functionality.
In my opinion, best way to achive kannel compatibility with udh-containing
messages is to continue development of php scripts, as it was started long
time ago, but depricated now.
I can personally take care of this part, if there're enough interested
developers.
At the moment I have written scripts to support Nokia and Siemens
gfx/ringtones implementations.

As another usefull functionality there's a way to implement mySQL+PHP based
retry mechanism for kannel, since currently Kannel does not deal with failed
messages out of the box.

Alexei.
 

 I'm working on an application that uses EMS to send graphic elements in
messages. It's almost done, but I've came up with a problem with large
messages that needs splitting: smsbox fails to do the work, it exists with a
failed assertion. If the message fits in a single sms, everything is fine.
 
Of course I have a workaround for this: my application takes care of
correctly splitting the message into fragments, then send the fragments
individually through Kannel.
 
But I'm interested in contributing to Kannel a patch to do the required
splitting for EMS correctly. Anyone with EMS knowlegde has any ideas or
advise on how to acomplish this? I mean, currently Kannel duplicates the UDH
part of a large SMS into all the fragments after splitting. That's not the
case win EMS, we'll have to avoid that under certain scenarios, and maintain
it for others (Nokia NBS headers for example). 
 
So, traversing the UDH and treating each of the IE's separately, based on
known IEI's, could be a solution. Anyone with a more elegant idea?
 
Of course, is there any interest in doing EMS stuff inside kannel? (I mean
only proper splitting, not message composition).
 
Angel Fradejas.
 





Re: EMS and splitting

2002-01-16 Thread Alexei Pashkovsky



I think as the kannel target is to stay as simple 
as possible, all the functionality for advanced sms services (EMS, SMART-SMS, 
WAP PUSH etc) should be implemented externally, so that kannel would not deal 
with things custom applications take care about, besides it gives more freedom 
for application developers.
The only thing usefull indeed could be sharing the 
example code for such functionality.
In my opinion, best way to achive kannel 
compatibility with udh-containing messages is to continue development of php 
scripts, as it was started long time ago, but depricated now.
I can personally take care of this part, if 
there're enough interested developers.
At the moment I have written scripts to support 
Nokia and Siemens gfx/ringtones implementations.
As another usefull functionality there's a way to 
implement mySQL+PHP based retry mechanism for kannel, since currently Kannel 
does not deal with failed messages out of the box.
Alexei.
 

   I'm 
  working on an application that uses EMS to send graphic elements in messages. 
  It's almost done, but I've came up with a problem with large messages that 
  needs splitting: smsbox fails to do the work, it exists with a failed 
  assertion. If the message fits in a single sms, everything is 
  fine.
   
  Of course 
  I have a workaround for this: my application takes care of correctly splitting 
  the message into fragments, then send the fragments individually through 
  Kannel.
   
  But I'm 
  interested in contributing to Kannel a patch to do the required splitting for 
  EMS correctly. Anyone with EMS knowlegde has any ideas or advise on how to 
  acomplish this? I mean, currently Kannel duplicates the UDH part of a large 
  SMS into all the fragments after splitting. That's not the case win EMS, we'll 
  have to avoid that under certain scenarios, and maintain it for others 
  (Nokia NBS headers for example). 
   
  So, 
  traversing the UDH and treating each of the IE's separately, based on known 
  IEI's, could be a solution. Anyone with a more elegant 
  idea?
   
  Of course, 
  is there any interest in doing EMS stuff inside kannel? (I mean only proper 
  splitting, not message composition).
   
  Angel 
  Fradejas.
   


EMS and splitting

2002-01-16 Thread Angel Fradejas



I'm working 
on an application that uses EMS to send graphic elements in messages. It's 
almost done, but I've came up with a problem with large messages that needs 
splitting: smsbox fails to do the work, it exists with a failed assertion. If 
the message fits in a single sms, everything is fine.
 
Of course I 
have a workaround for this: my application takes care of correctly splitting the 
message into fragments, then send the fragments individually through 
Kannel.
 
But I'm 
interested in contributing to Kannel a patch to do the required splitting for 
EMS correctly. Anyone with EMS knowlegde has any ideas or advise on how to 
acomplish this? I mean, currently Kannel duplicates the UDH part of a large SMS 
into all the fragments after splitting. That's not the case win EMS, we'll have 
to avoid that under certain scenarios, and maintain it for others (Nokia 
NBS headers for example). 
 
So, 
traversing the UDH and treating each of the IE's separately, based on known 
IEI's, could be a solution. Anyone with a more elegant 
idea?
 
Of course, 
is there any interest in doing EMS stuff inside kannel? (I mean only proper 
splitting, not message composition).
 
Angel 
Fradejas.