Пример #1
0
void rjs_op_lesseq_string_string(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, const rvmreg_t *arg1, const rvmreg_t *arg2)
{
	ruword r;
	rstring_t *s1 = (rstring_t *)RVM_REG_GETP(arg1);
	rstring_t *s2 = (rstring_t *)RVM_REG_GETP(arg2);

	r = (r_strncmp(s1->s.str, s2->s.str, R_MIN(s1->s.size, s2->s.size)) <= 0) ? 1 : 0;
	rvm_reg_setboolean(res, r);
	RVM_STATUS_UPDATE(cpu, RVM_STATUS_Z, !r);
}
Пример #2
0
void rjs_op_noteq_string_string(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, const rvmreg_t *arg1, const rvmreg_t *arg2)
{
	ruword r;
	rstring_t *s1 = (rstring_t *)RVM_REG_GETP(arg1);
	rstring_t *s2 = (rstring_t *)RVM_REG_GETP(arg2);

	r = (s1->s.size ==  s2->s.size && r_strncmp(s1->s.str, s2->s.str, s1->s.size) == 0) ? 0 : 1;
	rvm_reg_setboolean(res, r);
	RVM_STATUS_UPDATE(cpu, RVM_STATUS_Z, !r);
}
Пример #3
0
Файл: rasn1.c Проект: ieei/rlib
const rchar *
r_asn1_x500_name_to_oid (const rchar * name, rsize size)
{
  rsize i;
  for (i = 0; i < R_N_ELEMENTS (x500_attr_table); i++) {
    if (size == x500_attr_table[i].namesize &&
        r_strncmp (x500_attr_table[i].name, name, size) == 0)
      return x500_attr_table[i].oid;
  }

  return NULL;
}
Пример #4
0
static rboolean r_map_rstrequal(rstr_t *key1, rstr_t *key2)
{
	return (key1->size == key2->size && r_strncmp((const char*)key1->str, (const char*)key2->str, key1->size) == 0) ? TRUE : FALSE;
}