lib/vpwentry/decode.cc
changeset 2 b3afb9f1e801
parent 0 6f7a81934006
equal deleted inserted replaced
1:30113bfbe723 2:b3afb9f1e801
    36       return ptr;
    36       return ptr;
    37     if(ptr >= end)
    37     if(ptr >= end)
    38       return 0;
    38       return 0;
    39     bool value = *(unsigned char*)ptr++;
    39     bool value = *(unsigned char*)ptr++;
    40     switch(flag) {
    40     switch(flag) {
       
    41     case vdomain::ATTR_HAS_MAILBOX:
       
    42       has_mailbox = value;
       
    43       break;
    41     case vdomain::ATTR_MAILBOX_ENABLED:
    44     case vdomain::ATTR_MAILBOX_ENABLED:
    42       is_mailbox_enabled = value;
    45       is_mailbox_enabled = value;
    43       break;
    46       break;
    44     default:
    47     default:
    45       return 0;
    48       return 0;
    52 {
    55 {
    53   pass = ptr;
    56   pass = ptr;
    54   ptr += pass.length() + 1;
    57   ptr += pass.length() + 1;
    55   if(ptr >= end) return 0;
    58   if(ptr >= end) return 0;
    56   
    59   
    57   mailbox = ptr;
    60   directory = ptr;
    58   ptr += mailbox.length() + 1;
    61   if(!directory)
       
    62     has_mailbox = false;
       
    63   ptr += directory.length() + 1;
    59   if(ptr >= end) return 0;
    64   if(ptr >= end) return 0;
    60   
    65   
    61   const char* start = ptr;
    66   const char* start = ptr;
    62   while(ptr < end && *ptr != 0)
    67   while(ptr < end && *ptr != 0)
    63     ptr += strlen(ptr) + 1;
    68     ptr += strlen(ptr) + 1;