I was just looking at the smtpd_request_rec in mod_smtpd, and I had a few questions.

It seems that extensions and rcpt info is being stored in an apr_hash_t, but it's only being keyed by integer. If you're only going to use ints as keys, it seems like an apr_array_header_t would be more appropriate. Also, while the extensions has is specifically allocating its keys, the rcpt_to hash is reusing the r_index variable each time, so if more than one entry is added things aren't going to work, since that location in memory is having its value changed after its been used as a key.

Anyway, I'd be happy to produce patches to either switch to an array or fix the key issue in the rcpt_to section, depending on which way we want to go. Personally, I'd prefer the array version though.

-garrett

Reply via email to