Ignore:
File:
1 edited

Legend:

Unmodified
Added
Removed
  • uspace/srv/net/dnsrsrv/dns_msg.c

    r20c82e3 rb5f716b  
    7777                return ENOMEM;
    7878
    79         str_cpy(nstr + s1, nsize - s1, suff);
     79        str_cpy((*dstr) + s1, nsize - s1, suff);
    8080
    8181        *dstr = nstr;
     
    195195                        break;
    196196
     197                if (!first) {
     198                        rc = dns_dstr_ext(&name, ".");
     199                        if (rc != EOK) {
     200                                rc = ENOMEM;
     201                                goto error;
     202                        }
     203                }
     204
    197205                if ((lsize & 0xc0) == 0xc0) {
    198206                        /* Pointer */
     
    225233                         * the message continues
    226234                         */
    227                         if (*eoff == 0)
    228                                 *eoff = eptr;
     235                        *eoff = eptr;
    229236
    230237                        bp = pdu->data + ptr;
     
    236243                        rc = EINVAL;
    237244                        goto error;
    238                 }
    239 
    240                 if (!first) {
    241                         rc = dns_dstr_ext(&name, ".");
    242                         if (rc != EOK) {
    243                                 rc = ENOMEM;
    244                                 goto error;
    245                         }
    246245                }
    247246
     
    414413        rc = dns_name_decode(pdu, boff, &rr->name, &name_eoff);
    415414        if (rc != EOK) {
    416                 log_msg(LOG_DEFAULT, LVL_DEBUG, "dns_rr_decode: error decoding name");
     415                log_msg(LOG_DEFAULT, LVL_DEBUG, "Error decoding name");
    417416                free(rr);
    418417                return ENOMEM;
     
    422421                free(rr->name);
    423422                free(rr);
    424                 log_msg(LOG_DEFAULT, LVL_DEBUG, "dns_rr_decode: error name_off");
    425423                return EINVAL;
    426424        }
     
    432430                free(rr->name);
    433431                free(rr);
    434                 log_msg(LOG_DEFAULT, LVL_DEBUG, "dns_rr_decode: error bsz");
    435432                return EINVAL;
    436433        }
     
    448445        bsz -= sizeof(uint32_t);
    449446
    450         log_msg(LOG_DEFAULT, LVL_DEBUG2, "dns_rr_decode: rtype=0x%x, rclass=0x%x, ttl=0x%x",
    451             rr->rtype, rr->rclass, rr->ttl );
    452 
    453447        rdlength = dns_uint16_t_decode(bp, bsz);
    454448        bp += sizeof(uint16_t);
     
    458452                free(rr->name);
    459453                free(rr);
    460                 log_msg(LOG_DEFAULT, LVL_DEBUG, "dns_rr_decode: Error rdlength %zu > bsz %zu", rdlength, bsz);
    461454                return EINVAL;
    462455        }
    463456
    464457        rr->rdata_size = rdlength;
    465         log_msg(LOG_DEFAULT, LVL_DEBUG2, "dns_rr_decode: rdlength=%zu", rdlength);
    466         rr->rdata = calloc(1, rdlength);
     458        rr->rdata = calloc(1, sizeof(rdlength));
    467459        if (rr->rdata == NULL) {
    468460                free(rr->name);
    469461                free(rr);
    470                 log_msg(LOG_DEFAULT, LVL_DEBUG, "dns_rr_decode: Error memory");
    471462                return ENOMEM;
    472463        }
     
    479470        *eoff = bp - pdu->data;
    480471        *retrr = rr;
    481         log_msg(LOG_DEFAULT, LVL_DEBUG2, "dns_rr_decode: done");
    482472        return EOK;
    483473}
     
    596586        memcpy(msg->pdu.data, data, size);
    597587        msg->pdu.size = size;
    598         log_msg(LOG_DEFAULT, LVL_DEBUG2, "dns_message_decode: pdu->data = %p, "
     588        log_msg(LOG_DEFAULT, LVL_NOTE, "dns_message_decode: pdu->data = %p, "
    599589            "pdu->size=%zu", msg->pdu.data, msg->pdu.size);
    600590
     
    615605
    616606        qd_count = uint16_t_be2host(hdr->qd_count);
    617         log_msg(LOG_DEFAULT, LVL_DEBUG2, "qd_count=%zu", qd_count);
    618 
    619607
    620608        for (i = 0; i < qd_count; i++) {
     
    630618
    631619        an_count = uint16_t_be2host(hdr->an_count);
    632         log_msg(LOG_DEFAULT, LVL_DEBUG2, "an_count=%zu", an_count);
    633620
    634621        for (i = 0; i < an_count; i++) {
Note: See TracChangeset for help on using the changeset viewer.