6.0.0-beta1
▾
Tasks
New Task
Search
Photos
Wiki
▾
Tickets
New Ticket
Search
dev.horde.org
Toggle Alerts Log
Help
7/27/25
H
istory
A
ttachments
C
omment
W
atch
Download
Comment on [#14988] ActiveSync mail setting From: header
*
Your Email Address
*
Spam protection
Enter the letters below:
.__ .__..___. .. . | \| |[__ | ||\/| |__/|__|[___|/\|| |
Comment
>>> Does the "Default Identity" entry have a "The default e-mail address >>> to use with this identity:" value set? >>> >>> Other things to try: >>> Use the administrative sql shell and execute: >>> >>> SELECT * FROM horde_prefs WHERE pref_name='activesync_identity'; >>> >>> If you have something other than "use horde default" set in the >>> prefs, this will be some number. Probably '0' for the original >>> default identity. >>> >>> >>> Then, in the administrative PHP shell: >>> >>> ident = >>> $injector->getInstance('Horde_Core_Factory_Identity')->create('your_username_here'); >>> var_dump($ident->getValue('from_addr', x); // replace 'x' with the >>> number returned from the query above. >>> >>> This should output the email address that activesync will use as the >>> From address of outgoing email. >> >> Yes, the default identity has an e-mail address set. >> >> SELECT * FROM horde_prefs WHERE pref_name='activesync_identity'; >> >> in the SQL Shell delivers: >> >> pref_uid pref_scope pref_name pref_value >> <username> horde activesync_identity 0 >> >> $ident=$injector->getInstance('Horde_Core_Factory_Identity')->create('<username>'); >> var_dump($ident->getValue('from_addr',0)); >> >> in the PHP shell correctly delivers the e-mail address set for the >> default identity. Still, this address is not set in the "From" header >> when sending messages via ActiveSync. Here an excerpt from >> Core/ActiveSync/Mail.php: >> >> public function setRawMessage(Horde_ActiveSync_Rfc822 $raw) >> { >> $this->_headers = $raw->getHeaders(); >> >> // Attempt to always use the identity's From address, but fall back >> // to the device's sent value if it's not present. >> if ($from = $this->_getIdentityFromAddress()) { >> $this->_headers->removeHeader('From'); >> $this->_headers->addHeader('From', $from); >> } >> >> // Reply-To? >> if ($replyto = $this->_getReplyToAddress()) { >> $this->_headers->addHeader('Reply-To', $replyto); >> } >> >> $this->_raw = $raw; >> } >> >> The first "if" seems to fail so the "From" header is not removed and >> set to the default identity. How can I debug that one? Thanks for any >> help. > > If that if is failing, then you need to figure out why > _getIdentityFromAddress() is returning an empty value. Use some > debug logging in that method with Horde::debug() as so: > > protected function _getIdentityFromAddress() > { > global $prefs; > > $ident = $GLOBALS['injector'] > ->getInstance('Horde_Core_Factory_Identity') > ->create($this->_user); > > $as_ident = $prefs->getValue('activesync_identity'); > $name = $ident->getValue('fullname', $as_ident == 'horde' ? > $prefs->getValue('default_identity') : > $prefs->getValue('activesync_identity')); > $from_addr = $ident->getValue('from_addr', $as_ident == > 'horde' ? $prefs->getValue('default_identity') : > $prefs->getValue('activesync_identity')); > > // ADD LOGGING > Horde::debug($this->_user); // This should output the Horde username. > Horde::debug($from_addr); // This should output the address > you expect. If it doesn't, it's probably not the identity you think > it is. > Horde::debug($name); // This should ouput the human > readable username configured in the identity. > > > if (empty($from_addr)) { > return; > } > $rfc822 = new Horde_Mail_Rfc822_Address($from_addr); > $rfc822->personal = $name; > > // ADD LOGGING > Horde::debug($rfc822->encoded); // If this is empty, probably > something wrong with the format of the email address. > > return $rfc822->encoded; > } > > > The log entries will be written to a file called horde_debug.txt > located in your system's temporary directory (or the temp directory > configured in Horde, if different). > >
Attachment
Watch this ticket
N
ew Ticket
M
y Tickets
S
earch
Q
uery Builder
R
eports
Saved Queries
Open Bugs
Bugs waiting for Feedback
Open Bugs in Releases
Open Enhancements
Enhancements waiting for Feedback
Bugs with Patches
Enhancements with Patches
Release Showstoppers
Stalled Tickets
New Tickets
Horde 5 Showstoppers