Ignore:
File:
1 edited

Legend:

Unmodified
Added
Removed
  • zephyr.c

    r32ad44d rdca3b27  
    8282void owl_zephyr_finish_initialization(owl_dispatch *d) {
    8383  Code_t code;
    84   char *perl;
    8584
    8685  owl_select_remove_dispatch(d->fd);
     
    126125    owl_function_zephyr_buddy_check(0);
    127126  }
    128 
    129  perl = owl_perlconfig_execute("BarnOwl::Zephyr::_zephyr_startup()");
    130  owl_free(perl);
    131127}
    132128
     
    172168  }
    173169#endif
    174   return 0;
     170  return(0);
    175171}
    176172
     
    180176  if(owl_global_is_havezephyr(&g))
    181177    return(ZPending());
    182 #endif
    183   return 0;
     178  else
     179    return 0;
     180#else
     181  return(0);
     182#endif
    184183}
    185184
     
    187186{
    188187#ifdef HAVE_LIBZEPHYR
    189   if (owl_global_is_havezephyr(&g))
    190     return(ZGetRealm());
    191 #endif
    192   return "";
     188  return(ZGetRealm());
     189#else
     190  return("");
     191#endif
    193192}
    194193
     
    196195{
    197196#ifdef HAVE_LIBZEPHYR
    198   if (owl_global_is_havezephyr(&g))
    199     return(ZGetSender());
    200 #endif
    201   return "";
     197  return(ZGetSender());
     198#else
     199  return("");
     200#endif
    202201}
    203202
     
    912911#endif
    913912
    914 void owl_zephyr_zlocate(const char *user, char *out, int auth)
     913char *owl_zephyr_zlocate(const char *user, int auth)
    915914{
    916915#ifdef HAVE_LIBZEPHYR
     
    919918  ZLocations_t locations;
    920919  char *myuser;
    921  
    922   strcpy(out, "");
     920  char *p, *result;
     921
    923922  ZResetAuthentication();
    924   ret=ZLocateUser(zstr(user),&numlocs,auth?ZAUTH:ZNOAUTH);
    925   if (ret != ZERR_NONE) {
    926     sprintf(out, "Error locating user %s\n", user);
    927     return;
    928   }
    929 
    930   if (numlocs==0) {
    931     myuser=short_zuser(user);
    932     sprintf(out, "%s: Hidden or not logged in\n", myuser);
    933     owl_free(myuser);
    934     return;
    935   }
    936    
    937   for (;numlocs;numlocs--) {
    938     ZGetLocations(&locations,&one);
    939     myuser=short_zuser(user);
    940     sprintf(out + strlen(out), "%s: %s\t%s\t%s\n", myuser,
    941             locations.host ? locations.host : "?",
    942             locations.tty ? locations.tty : "?",
    943             locations.time ? locations.time : "?");
    944     owl_free(myuser);
    945   }
     923  ret = ZLocateUser(zstr(user), &numlocs, auth ? ZAUTH : ZNOAUTH);
     924  if (ret != ZERR_NONE)
     925    return owl_sprintf("Error locating user %s: %s\n",
     926                       user, error_message(ret));
     927
     928  myuser = short_zuser(user);
     929  if (numlocs == 0) {
     930    result = owl_sprintf("%s: Hidden or not logged in\n", myuser);
     931  } else {
     932    result = owl_strdup("");
     933    for (; numlocs; numlocs--) {
     934      ZGetLocations(&locations, &one);
     935      p = owl_sprintf("%s%s: %s\t%s\t%s\n",
     936                          result, myuser,
     937                          locations.host ? locations.host : "?",
     938                          locations.tty ? locations.tty : "?",
     939                          locations.time ? locations.time : "?");
     940      owl_free(result);
     941      result = p;
     942    }
     943  }
     944
     945  return result;
     946#else
     947  return owl_strdup("");
    946948#endif
    947949}
Note: See TracChangeset for help on using the changeset viewer.