示例#1
0
FAR char *env_findvar(environ_t *envp, const char *pname)
{
  char *ret = NULL;

  /* Verify input parameters */

  if (envp && pname)
    {
      char *ptr;
      char *end = &envp->ev_env[envp->ev_alloc];

      /* Search for a name=value string with matching name */

      for (ptr = envp->ev_env;
           ptr < end && !env_cmpname( pname, ptr);
           ptr += (strlen(ptr) + 1));

      /* Check for success */

      if (ptr < end)
        {
          ret = ptr;
        }
    }

  return ret;
}
示例#2
0
FAR char *env_findvar(FAR struct task_group_s *group, const char *pname)
{
  char *ptr;
  char *end;

  /* Verify input parameters */

  DEBUGASSERT(group && pname);

  /* Search for a name=value string with matching name */

  end = &group->tg_envp[group->tg_envsize];
  for (ptr = group->tg_envp;
       ptr < end && !env_cmpname(pname, ptr);
       ptr += (strlen(ptr) + 1));

  /* Check for success */

  return (ptr < end) ? ptr : NULL;
}