Beispiel #1
0
server_rec *pr_namebind_get_server(const char *name, pr_netaddr_t *addr,
    unsigned int port) {
  pr_namebind_t *namebind = NULL;

  /* Basically, just a wrapper around pr_namebind_find() */
  namebind = pr_namebind_find(name, addr, port, TRUE);
  if (namebind == NULL)
    return NULL;

  return namebind->nb_server;
}
Beispiel #2
0
int pr_namebind_open(const char *name, pr_netaddr_t *addr, unsigned int port) {
  pr_namebind_t *namebind = NULL;

  if (name == NULL ||
      addr == NULL) {
    errno = EINVAL;
    return -1;
  }

  namebind = pr_namebind_find(name, addr, port, FALSE);
  if (namebind == NULL) {
    errno = ENOENT;
    return -1;
  }

  namebind->nb_isactive = TRUE;
  return 0;
}
Beispiel #3
0
int pr_namebind_close(const char *name, pr_netaddr_t *addr,
    unsigned int port) {
  pr_namebind_t *namebind = NULL;

  if (!name ||
      !addr) {
    errno = EINVAL;
    return -1;
  }

  namebind = pr_namebind_find(name, addr, port, FALSE);
  if (namebind == NULL) {
    errno = ENOENT;
    return -1;
  }

  namebind->nb_isactive = FALSE;
  return 0;
}
Beispiel #4
0
int pr_namebind_close(const char *name, const pr_netaddr_t *addr) {
  pr_namebind_t *namebind = NULL;
  unsigned int port;

  if (name == NULL||
      addr == NULL) {
    errno = EINVAL;
    return -1;
  }

  port = ntohs(pr_netaddr_get_port(addr));
  namebind = pr_namebind_find(name, addr, port, FALSE);
  if (namebind == NULL) {
    errno = ENOENT;
    return -1;
  }

  namebind->nb_isactive = FALSE;
  return 0;
}