On Thu, Dec 31, 2009 at 3:53 PM, dDong Y. <bits...@gmail.com> wrote:
>
> And i try to format it like this(it's a pity that i'm not very good at
> english):
>
> when i fomatted a NAMESPACE command in client APP using :
> space = (NAMESPACE**) mail_parameters(stream,GET_NAMESPACE,NIL);
>
> i noted that the server responsed :
> * NAMESPACE (("" "/")("#mhinbox" NIL)("#mh/" "/")) (("~" "/")) (("#shared/"
> "/")("#ftp/" "/")("#news." ".")("#public/" "/"))
>
> but when i debug client app and look for stack info,i found var *space only
> got attirbute "#shared/" with nothing else. how is it going?
>
>

OK, I am not very familiar with namespaces, but looking at the c-client
code, I can see that the expected result of the GET_NAMESPACE is a NAMESPACE
array (a NAMESPACE **). And the definition of a NAMESPACE appears to be:

#define NAMESPACE struct mail_namespace

NAMESPACE {
  char *name;            /* name of this namespace */
  int delimiter;        /* hierarchy delimiter */
  PARAMETER *param;        /* namespace parameters */
  NAMESPACE *next;        /* next namespace */
};

So your 'space' variable needs to be traversed accordingly. You should be
able to get the namespaces with something like this:

NAMESPACE *p;
for (p=space; p; p = p->next) {
    printf("name=%s delim=%d\n", p->name, p->delimiter);
}

Or are you saying that you are only getting one entry in the NAMESPACE
array?

The other questions, I cannot help you with, sorry.

Robby
_______________________________________________
Imap-uw mailing list
Imap-uw@u.washington.edu
http://mailman2.u.washington.edu/mailman/listinfo/imap-uw

Reply via email to