Ejemplo n.º 1
0
int	get_currents_index(int *srv, int *chn)
{
    t_server	*server;
    int		size;
    int		size2;
    t_channel	*chan;

    size = (int)list_get_size(server_list);
    while (--size >= 0)
        if ((server = GET_AT(server_list, size)) != NULL)
            if (server->current == 1)
            {
                *srv = size;
                size2 = (int)list_get_size(server->channel_list);
                while (--size2 >= 0)
                    if ((chan = (t_channel*)GET_AT(server->channel_list, size2)) != NULL)
                        if (chan->current == 1)
                        {
                            *chn = size2;
                            return (0);
                        }
            }
    return (-1);
}
Ejemplo n.º 2
0
t_server	*get_current_server()
{
    t_server	*server;
    int		size;

    size = (int)list_get_size(server_list) - 1;
    while (size >= 0)
    {
        if ((server = GET_AT(server_list, size)) != NULL)
            if (server->current == 1)
                return (server);
        --size;
    }
    return (NULL);
}
Ejemplo n.º 3
0
void		process_fd(fd_set *fds)
{
    int		size;
    t_server	*server;

    if (FD_ISSET(0, fds))
        handle_write();
    size = (int)list_get_size(server_list) - 1;
    while (size >= 0)
    {
        if ((server = (t_server*)GET_AT(server_list, size)) != NULL)
            if (FD_ISSET(server->sockfd, fds))
                handle_input(server);
        --size;
    }
}
Ejemplo n.º 4
0
void	remove_server(t_list *list, t_server *server)
{
  int		size;
  t_server	*srv;

  size = (int)list_get_size(*list) - 1;
  while (size >= 0)
  {
    if ((srv = (t_server*)GET_AT(*list, size)) != NULL)
      if (server == srv)
      {
        list_del_elem_at_position(list, (unsigned int)size);
        remove_all_channel(srv);
        free(srv);
        return ;
      }
    --size;
  }
}
Ejemplo n.º 5
0
int	register_servers_fd(t_list list, fd_set *fds)
{
  int		size;
  t_server	*server;
  int		max;

  size = (int)list_get_size(list) - 1;
  max = -1;
  while (size >= 0)
  {
    if ((server = (t_server*)GET_AT(list, size)) != NULL)
    {
      FD_SET(server->sockfd, fds);
      if (server->sockfd > max)
        max = server->sockfd;
    }
    --size;
  }
  return (max);
}
Ejemplo n.º 6
0
/**
* getAtVblePlugIn
*/
void* getAtVblePlugIn(Parameters argv, int Position)
{
  void *Temp;
  GET_AT(argv.VblesMAPiCO, Position, Temp);
  return Temp;
}//getAtVblePlugIn