Exemple #1
0
int main (int argc, char *argv[])
{
  char buff[1024];
  char *s;
  
  struct sig **lastsig = NULL;
  struct uid **lastuid = NULL;
  struct key *k = new_key();
  
  lastuid = &k->uids;

  if (argc == 2 && !strcmp (argv[1], "-S"))
    DontRequireSelfSig = 1;

  while (fgets (buff, sizeof (buff), stdin))
  {
    if ((s = strtok (buff, ":")))
    {
      if (!strcmp (s, "pub"))
      {
	do_key (k);
	k->rev = 0;
	k->uids = new_uid();

	lastuid = &k->uids->next;
	lastsig = &k->uids->sigs;

	strtok (NULL, ":");
	strtok (NULL, ":");
	strtok (NULL, ":");

	sprintf (k->id, "%s", strtok (NULL, ":"));
      }
      else if (!strcmp (s, "rev"))
	k->rev = 1;
      else if (!strcmp (s, "uid"))
      {
	struct uid *uid = *lastuid = new_uid();
	lastuid = &(*lastuid)->next;
	lastsig = &uid->sigs;
      }
      else if (!strcmp (s, "sig"))
      {
	struct sig *sig = *lastsig = new_sig();
	lastsig = &sig->next;
	sprintf (sig->id, "%s", strtok (NULL, ":"));
      }
    }
  }
  
  do_key (k);
  
  return 0;
}
Exemple #2
0
/* AF N Client1 1 947957573 User userhost.net +oiwg DAqAoB AFAAA :Generic Client. */
void asuka_cmd_nick(char *nick, char *name, const char *modes)
{
    char nicknumbuf[6];
    send_cmd(p10id, "N %s 1 %ld %s %s %s B]AAAB %sAA%c :%s", nick,
             (long int) time(NULL), ServiceUser, ServiceHost, modes, p10id,
             (p10nickcnt + 'A'), name);
    ircsnprintf(nicknumbuf, 6, "%sAA%c", p10id, (p10nickcnt + 'A'));
    new_uid(nick, nicknumbuf);
    p10nickcnt++;
}
Exemple #3
0
void asuka_cmd_bot_nick(char *nick, char *user, char *host, char *real,
                        char *modes)
{
    char nicknumbuf[6];
    send_cmd(p10id, "N %s 1 %ld %s %s %s B]AAAB %sAA%c :%s", nick,
             (long int) time(NULL), user, host, modes, p10id,
             (p10nickcnt + 'A'), real);
    ircsnprintf(nicknumbuf, 6, "%sAA%c", p10id, (p10nickcnt + 'A'));
    new_uid(nick, nicknumbuf);
    p10nickcnt++;
}
UID
ProcessManager_CreateProcess(const char *name,
                             const char *path,
                             uint32_t argc,
                             char **argv,
                             ProcessInfo *parent,
                             uint32_t flags)
{
    ThreadMan_Lock();   //Can't have thread switches happening here

    ProcessInfo *proc = kmalloc(sizeof(ProcessInfo));

    proc->uid = new_uid();
    proc->flags = flags | PROC_STATUS_RUNNING;
    memset(proc->name,
           0,
           MAX_PROC_NAME_LEN);

    memcpy(proc->name,
           name,
           (strlen(name) > MAX_PROC_NAME_LEN - 1)?MAX_PROC_NAME_LEN - 1: strlen(name));

    proc->path = kmalloc(strlen(path) + 1);
    strcpy(proc->path, path);


    //Add to the process tree, all processes are under the kernel
    if(parent == NULL)parent = processes;
    proc->parent = parent;
    if(parent->children == NULL)
        {
            parent->children = proc;
        }
    else
        {
            proc->next = parent->children->next;
            parent->children->next = proc;
        }

    UID tid = ThreadMan_CreateThread(ProcessManager_BootstrapProcess,
                                     argc,
                                     argv,
                                     (flags & 2)?THREAD_FLAGS_KERNEL:THREAD_FLAGS_USER );

    uint32_t* ktls = (uint32_t*)ThreadMan_GetThreadTLS(tid);
    ktls[0] = (uint32_t)proc;


    ThreadMan_StartThread(tid);
    ThreadMan_Unlock();
}
Exemple #5
0
void plexus_cmd_bot_nick(char *nick, char *user, char *host, char *real,
                         char *modes)
{
	char *nicknumbuf = ts6_uid_retrieve();

	if (UseTS6)
	{
		send_cmd(TS6SID, "UID %s 1 %ld %s %s %s 0 %s :%s", nick,
		         (long int) time(NULL), modes, user, host, nicknumbuf,
		         real);

		new_uid(nick, nicknumbuf);
	}
	else
	{
		send_cmd(NULL, "NICK %s 1 %ld %s %s %s %s :%s", nick,
		         (long int) time(NULL), modes, user, host, ServerName,
		         real);
	}
}
Exemple #6
0
void plexus_cmd_nick(char *nick, char *name, const char *mode)
{
	char *ipaddr;
	char *nicknumbuf = ts6_uid_retrieve();

	if (UseTS6)
	{
		ipaddr = host_resolve(ServiceHost);
		send_cmd(TS6SID, "UID %s 1 %ld %s %s %s %s %s 0 %s :%s", nick,
		         (long int) time(NULL), mode, ServiceUser, ServiceHost,
		         ipaddr, nicknumbuf, ServiceHost, name);

		new_uid(nick, nicknumbuf);
		free(ipaddr);
	}
	else
	{
		send_cmd(NULL, "NICK %s 1 %ld %s %s %s %s :%s", nick,
		         (long int) time(NULL), mode, ServiceUser, ServiceHost,
		         ServerName, name);
	}
}