Ejemplo n.º 1
0
val_t eic_strcat(void)  /* unsafe */
{
    val_t v;
    ptr_t  p2;

    getptrarg(0,v.p);
    getptrarg(1,p2);

    checkEp( v.p, strlen(v.p.p) + strlen(p2.p) + 1 );
    
    strcat(v.p.p,p2.p);
    return v;
}
Ejemplo n.º 2
0
val_t eic_strrev(void)
{
    val_t v;
    getptrarg(0,v.p);
    v.p.p = strrev(v.p.p);
    return  v;
}
Ejemplo n.º 3
0
val_t eic_ltoa(void)
{
    arg_list ap = getargs();
    val_t v;

    getptrarg(1,v.p);

    switch(arg(3,ap,int)) {
      case 1:
	v.p.sp = v.p.p = ltoa(arg(0,ap,long),
		      v.p.p,
		      arg(2,ap,int));
	break;
      case 2:
	v.p.sp = v.p.p = ultoa(arg(0,ap,unsigned long),
		       v.p.p,
		       arg(2,ap,int));
	break;
    }

    setEp( v.p, strlen(v.p.p) + 1 );

    
    return  v;
}
Ejemplo n.º 4
0
val_t eic_strrchr(void)
{
    val_t v;
    getptrarg(0,v.p);
    v.p.p = strrchr(v.p.p,
		    arg(1,getargs(),int));
    return v;
}
Ejemplo n.º 5
0
val_t eic_memcpy(void)
{
    val_t v;
    ptr_t  p2;
    size_t s;

    getptrarg(0,v.p);
    getptrarg(1,p2);

    s = arg(2,getargs(),size_t);

    checkEp(v.p,s);
    checkEp(p2,s);
    
    memcpy(v.p.p,p2.p,s);
    
    return v;
}
Ejemplo n.º 6
0
val_t eic_strstr(void)
{
    val_t v;
    getptrarg(0,v.p);
    
    v.p.p = strstr(v.p.p,
		   arg(1,getargs(),ptr_t).p);
    return v;
}
Ejemplo n.º 7
0
val_t eic_strncat(void) /* unsafe */
{
    val_t v;
    ptr_t  p2;
    size_t s, s1;
    
    getptrarg(0,v.p);
    getptrarg(1,p2);

    s = arg(2,getargs(),size_t);
    s1 = strlen(p2.p);

    checkEp(v.p,strlen(v.p.p) + (s < s1 ? s : s1) + 1 );
    
    strncat(v.p.p,p2.p,s);

    return v;
}
Ejemplo n.º 8
0
val_t eic_strcpy(void)     /* unsafe */
{
    val_t v;

    getptrarg(0,v.p);
    checkEp(v.p,strlen(arg(1,getargs(), ptr_t).p) + 1);

    strcpy(v.p.p,
	   arg(1,getargs(), ptr_t).p);    
    return v;
}
Ejemplo n.º 9
0
val_t eic_memmove(void)
{
    val_t v;
    ptr_t  p2;
    size_t s;

    getptrarg(0,v.p);
    getptrarg(1,p2);

    s = arg(2,getargs(),size_t);


    checkEp(v.p,s);
    checkEp(p2,s);
    
    
#ifdef _SUNOS
    bcopy(p2.p,v.p.p,s);
#else
    memmove(v.p.p,p2.p,s);
#endif
    return v;
}
Ejemplo n.º 10
0
val_t eic_fftoa(void)
{
    val_t v;
    arg_list ap = getargs();

    getptrarg(1,v.p);
    
    fftoa(arg(0,ap,float),   /* value */
	  v.p.p,             /* string */
	  arg(2,ap,int),     /* precision */
	  arg(3,ap,char),    /* 'f','e' or 'E' */
	  arg(4,ap,int));    /* truncation, i.e. 0 or 1 */
    return v;
}
Ejemplo n.º 11
0
val_t eic_memset(void)
{
    val_t v;
    size_t s;

    getptrarg(0,v.p);
    
    s = arg(2,getargs(),size_t);
    checkEp(v.p,s);

    memset(v.p.p,
	   arg(1,getargs(),int),
	   s);
    return v;
}
Ejemplo n.º 12
0
val_t eic_strtok(void)
{
    static val_t h;
    val_t v;

    getptrarg(0,v.p);

    if(v.p.p == NULL) {
	v.p.sp = h.p.sp;
	v.p.ep = h.p.ep;
    }else
	h.p = v.p;
    
    v.p.p = strtok(v.p.p,
		   arg(1,getargs(),ptr_t).p);
    return v;
}