jstedfast / gmime

A C/C++ MIME creation and parser library with support for S/MIME, PGP, and Unix mbox spools.
GNU Lesser General Public License v2.1
113 stars 36 forks source link

InternetAddress email part without name #86

Closed Jeevhi closed 4 years ago

Jeevhi commented 4 years ago

Is there a way to get the email part without name? I am using below code to extract from address but could not find a way to extract only the email without name.

GMimeMessage *message = g_mime_parser_construct_message(parser, NULL);
InternetAddressList  *from = g_mime_message_get_from(message);
InternetAddress *addr = internet_address_list_get_address(from, 0);
printf("name: %s address: %s\n", internet_address_get_name(addr), internet_address_to_string(addr, NULL, 1));

Above code prints:

name: Baba Mailer address: Baba Mailer <from2@ee.com>

thanks

jstedfast commented 4 years ago

Yes, what you can do is this:

GMimeMessage *message = g_mime_parser_construct_message(parser, NULL);
InternetAddressList  *from = g_mime_message_get_from(message);
InternetAddress *addr = internet_address_list_get_address(from, 0);
InternetAddressMailbox *mailbox = (InternetAddressMailbox *) addr;

printf("name: %s address: %s\n", internet_address_get_name(addr), internet_address_mailbox_get_addr(mailbox));
Jeevhi commented 4 years ago

Thank you!