Article delegate-en/980 of [1-5169] on the server localhost:119
  upper oldest olders older1 this newer1 newers latest
search
[Top/Up] [oldest] - [Older+chunk] - [Newer+chunk] - [newest + Check]

Newsgroups: mail-lists.delegate-en

[DeleGate-En] Changing user instead of server, again
19 Jan 2001 10:25:46 GMT Christian Couder <pyebqbdyi-i3inxhobmzfr.ml@ml.delegate.org>


Hi again,

You wrote:

> On 01/18/01(13:49) I wrote in <_A966@delegate-en.ML_>
> |>For example if you use the option
> |>-U%s@titi..
> |>and then when you telnet DeleGate's pop port and send
> |>USER toto
> |>then DeleGate will send 
> |>USER toto@titi..
> |>to the pop server.
> |>
> |>I am using SunOS 5.8 and DeleGate 6.1.22.
> |
> |This will be done in these versions with parameters like this:
> |
> |  SERVER=pop MOUNT="[^@]* pop://YourPopServer/*[%0@titi..]"
> |
> |Yes, I must correct or write something about this in "Manual.htm"...
>
>I noticed that above "[^@]" is not necessary, that is just like
>
>  SERVER=pop MOUNT="* pop://YourPopServer/*[%0@titi..]"
>
>will work too.

I tested this (with delegate 6.1.22 and 7.0.0) and it doesn't work exacty as I want. The behavior I get is the following:

'USER toto' is rewritten as 'pop://localhost/toto@titi.com'

and that's what I want, but

'USER toto@titi..' is rewritten as 'pop://titi.com/toto'

and that's a problem because I would like
   
'USER toto@titi..' rewritten as 'pop://localhost/toto@titi..'

> |>Though if you send 
> |>USER toto@titi..
> |>to DeleGate, then Delegate will not modify the user, because 
> |>my patch modify the user only if there is no '@' in it.
> |
> |The pattern "[^@]*" means the MOUNT will be applied only if a
> |candidate string, POP user name in this case, does not contain
> |"@" character.
>
>The reason why a user name with "@host" is not rewriten by MOUNT="* ..."
>is that such user name is rewriten to a canonical form like "//host/user"
>before applied MOUNT, and MOUNT="//* = default" (which means don't rewrite
>user if server host name is specified by a client) is defined by default
>for a DeleGate with SERVER=pop.

Yes, that's my problem now.
Would it be possible to not have a user name with "@host" rewritten to a canonical form like "//host/user" before MOUNT is applied ?

The patch I sent was working for me because I used 
SERVER=pop://localhost
and no MOUNT, so the user name with "@host" was not rewritten to "//host/user".
But it seems that MOUNT are not applied if the host is specified in the SERVER parameter...

And I also would like to be able to do this kind of rewrites:

'USER toto_stuff'           ---> 'pop://localhost/toto@titi.com'
'USER toto_stuff@titi..'  ---> 'pop://localhost/toto@titi.com'

the 'stuff' part can change so I have to match the '_' character.

I tryed these:

SERVER=pop MOUNT="[^_]* pop://YourPopServer/*[%0@titi..]"
SERVER=pop MOUNT="[^_]*_* pop://YourPopServer/*[%0@titi..]"
SERVER=pop MOUNT="[%0_%1]* pop://YourPopServer/*[%0@titi..]"
SERVER=pop MOUNT="[*_*]* pop://YourPopServer/*[%0@titi..]"

but they are wrong.

If it's not possible to do want I want, I can make a patch. And any advise about what must be patched would be greatly appreciated. I would send the result on this list of course.

I will try to have a look in the code at how MOUNT is working.

Regards,
Christian. 

  admin search upper oldest olders older1 this newer1 newers latest
[Top/Up] [oldest] - [Older+chunk] - [Newer+chunk] - [newest + Check]
@_@V