From: Tomas P. <tp...@so...> - 2004-12-01 10:20:16
|
> ============ > // strangely enough, following Mark Crispin, if you write into > // an open stream then it'll mark new messages as seen. > // > // So if we want to write to a remote mailbox we have to > // HALF_OPEN the stream and if we're working on a local > // mailbox then we have to use a NIL stream. > if (store_to.isremote) { > if(! store_to.store_open( OP_HALFOPEN) ) { > fprintf( stderr, "Error: Couldn't open store %s\n", > store_to.name.c_str()); > return 0; > } > } else { ... > ========== > > Inside the debugger, I notice that store_to.store_open() calles > mail_open(), mail_open() closes the stream! I looked into c-client > sources, and I find that mail.c closes the old stream if you pass the > OP_HALFOPEN flag and the old stream is not half-opened. May be some one > can dig around deeper. Please Cc me because I am not subscribed to this > list. I've reproduced the problem yesterday and verified that indeed c-client will open a new connection if one is re-mail_open'ing an allready open stream. This is very weird to me. I've tried to connect against a cyrus-1.5.3 server. What servers are you other people using? Has anybody verified the problem against the current libc-client (2004)? Does the same problem still occur? Jonas, I'm Cc:ing you here since the problem report might ring a bell with you or possbibly you are following libc-client development upstream and know what has happened there, i.e. if the above bug/behaveour/"feature" has been fixed... *t -- -------------------------------------------------------- Tomas Pospisek http://sourcepole.com - Linux & Open Source Solutions -------------------------------------------------------- |