protected MSERVEntry ProcessExternalOrgIdParameter(int partnerId, int minorPartnerId, Func <string, int, int> invoke) { MSERVEntry mserventry = new MSERVEntry(); Guid guid = (Guid)base.Fields["ExternalDirectoryOrganizationId"]; mserventry.ExternalDirectoryOrganizationId = guid; if (partnerId > -1) { string text = string.Format("43BA6209CC0F4542958F65F8BF1CDED6@{0}.exchangereserved", guid); mserventry.AddressForPartnerId = text; mserventry.PartnerId = invoke(text, partnerId); MServDirectorySession mservDirectorySession = new MServDirectorySession(null); string forest; if (mservDirectorySession.TryGetForestFqdnFromPartnerId(mserventry.PartnerId, out forest)) { mserventry.Forest = forest; } } if (minorPartnerId > -1) { string text = string.Format("3da19c7b44a74bd3896daaf008594b6c@{0}.exchangereserved", guid); mserventry.AddressForMinorPartnerId = text; mserventry.MinorPartnerId = invoke(text, minorPartnerId); } return(mserventry); }
protected MSERVEntry ProcessDomainNameParameter(int partnerId, int minorPartnerId, Func <string, int, int> invoke) { MSERVEntry mserventry = new MSERVEntry(); string domain = ((SmtpDomain)base.Fields["DomainName"]).Domain; mserventry.DomainName = domain; if (partnerId > -1) { string text = string.Format("E5CB63F56E8B4b69A1F70C192276D6AD@{0}", domain); mserventry.AddressForPartnerId = text; mserventry.PartnerId = invoke(text, partnerId); MServDirectorySession mservDirectorySession = new MServDirectorySession(null); string forest; if (mservDirectorySession.TryGetForestFqdnFromPartnerId(mserventry.PartnerId, out forest)) { mserventry.Forest = forest; } } if (minorPartnerId > -1) { string text = string.Format("7f66cd009b304aeda37ffdeea1733ff6@{0}", domain); mserventry.AddressForMinorPartnerId = text; mserventry.MinorPartnerId = invoke(text, minorPartnerId); } return(mserventry); }
internal static string GetRedirectServer(string smtpAddress) { ExTraceGlobals.AuthenticationTracer.TraceDebug <string>(0L, "MServe.GetRedirectServer. Entry. smtpAddress = {0}.", smtpAddress); IGlobalDirectorySession globalDirectorySession = new MServDirectorySession(MServe.podRedirectTemplate); string empty; if (!globalDirectorySession.TryGetRedirectServer(smtpAddress, out empty)) { empty = string.Empty; } ExTraceGlobals.AuthenticationTracer.TraceDebug <string, string>(0L, "MServe.GetRedirectServer. Exit. smtpAddress = {0}, redirectServer = {1}.", smtpAddress, empty); return(empty); }
protected int RemoveMservEntry(string address) { int num = MServDirectorySession.ReadMservEntry(address); if (num != -1) { MServDirectorySession.RemoveMserveEntry(address, num); } else { base.WriteError(new TenantNotFoundException(DirectoryStrings.TenantNotFoundInMservError(address)), ExchangeErrorCategory.Client, null); } return(num); }
protected MSERVEntry ProcessAddressParameter(int id, Func <string, int, int> invoke) { MSERVEntry mserventry = new MSERVEntry(); string text = (string)base.Fields["Address"]; if (this.ShouldProcessPartnerId(text)) { mserventry.AddressForPartnerId = text; mserventry.PartnerId = invoke(text, id); MServDirectorySession mservDirectorySession = new MServDirectorySession(null); string forest; if (mservDirectorySession.TryGetForestFqdnFromPartnerId(mserventry.PartnerId, out forest)) { mserventry.Forest = forest; } } else { mserventry.AddressForMinorPartnerId = text; mserventry.MinorPartnerId = invoke(text, id); } return(mserventry); }
protected int AddMservEntry(string address, int newPartnerId) { MServDirectorySession.AddMserveEntry(address, newPartnerId); return(newPartnerId); }
protected int ReadMservEntry(string address) { return(MServDirectorySession.ReadMservEntry(address)); }