Пример #1
0
void			ftp_list(t_client *client, char *str)
{
  FILE			*fd;
  int			client_fd;
  struct sockaddr_in	cliaddr;
  socklen_t		clilen;
  char			*arg;
  char			buff[4096];

  arg = get_cmd(str, 4);
  if (!is_passive(client))
    return;
  clilen = sizeof(cliaddr);
  if (!is_authorized_path(client, arg))
    return (bad_path(client));
  client_fd = accept(client->pasv_sck,
		     (struct sockaddr *)&cliaddr, &clilen);
  write(client->fd, "150 Accepted data connection\r\n",
	strlen("150 Accepted data connection\r\n"));
  sprintf(buff, "ls -la %s > /tmp/.result", arg);
  system(buff);
  if (!(fd = fopen("/tmp/.result", "r")))
    return (cond_is_ok(client, client_fd));
   end_list(client, fd, client_fd);
}
Пример #2
0
	std::map<int32_t, int32_t> Skillbook::collect_passives() const
	{
		std::map<int32_t, int32_t> passives;
		for (auto& iter : skillentries)
		{
			bool passive = is_passive(iter.first);
			if (passive)
			{
				passives.emplace(iter.first, iter.second.level);
			}
		}
		return passives;
	}
Пример #3
0
static int ppro_check_ctrs(unsigned int const cpu,
                           struct op_msrs const * const msrs,
                           struct cpu_user_regs const * const regs)
{
	u64 val;
	int i;
	int ovf = 0;
	unsigned long eip = regs->eip;
	int mode = xenoprofile_get_mode(current, regs);
	struct arch_msr_pair *msrs_content = vcpu_vpmu(current)->context;

	for (i = 0 ; i < num_counters; ++i) {
		if (!reset_value[i])
			continue;
		rdmsrl(msrs->counters[i].addr, val);
		if (CTR_OVERFLOWED(val)) {
			xenoprof_log_event(current, regs, eip, mode, i);
			wrmsrl(msrs->counters[i].addr, -reset_value[i]);
			if ( is_passive(current->domain) && (mode != 2) &&
				vpmu_is_set(vcpu_vpmu(current),
                                            VPMU_PASSIVE_DOMAIN_ALLOCATED) )
			{
				if ( IS_ACTIVE(msrs_content[i].control) )
				{
					msrs_content[i].counter = val;
					if ( IS_ENABLE(msrs_content[i].control) )
						ovf = 2;
				}
			}
			if ( !ovf )
				ovf = 1;
		}
	}

	/* Only P6 based Pentium M need to re-unmask the apic vector but it
	 * doesn't hurt other P6 variant */
	apic_write(APIC_LVTPC, apic_read(APIC_LVTPC) & ~APIC_LVT_MASKED);

	return ovf;
}
Пример #4
0
static int is_profiled(struct domain *d)
{
    return (is_active(d) || is_passive(d));
}