Virtual mail hosts: 255 character limit on SPF records

This one was a surprise to me, and caused a lot of headache, so I thought I'd pass it along.
I'm running multiple virtual mail hosts off of my doughty PowerMac single G5 1.8GHz running OS X Server 10.4.11. Some of the outgoing mail was being bounced as spam because a) there wasn't an SPF record on any of the domains and b) the domain of the mailserver didn't always match the domain of the sender. (Most often, it went out under the hostname of the server, cerberus.limbo.jcf.org—which is useless, since that's a LAN address.)
Trying to be a good citizen (and make sure that all of everyone's mail got through), I added SPF records that explicitly named each and every mailserver on the machine, just so that everything was clear and aboveboard—but they ended up being about 500 characters long.
Fastforward a week or two... and I was having problems with my DNS zones loading—I'd get errors that they'd timed out. After pulling my hair out for a while, I discovered that TXT records have a limit of 255 characters (including spaces, etc.) Some folks running servers on non-OS X Server machines have split the records over multiple TXT records (does that even work?), but you get exactly one TXT record per OS X Server machine: the Comment box.
I've now simplified the SPF records so that they read something like this:
+v=spf1 a mx mx:cerberus.limbo.jcf.org mx:cerberus.jcf.org mx:jcf.org ip:173.164.140.96/30 ip:207.58.140.213/30 include:comcast.businessclass.net include:comcast.com -all+
To translate:
• +v=spf1 a mx+ It authorizes deliveries from any IP listed in the DNS zone, and from any mailserver defined in the zone
• +mx:cerberus.limbo.jcf.org mx:cerberus.jcf.org mx:jcf.org+ It also explicitly authorizes deliveries from the server's main LAN and internet DNS names as well as the domain of the foundation for which I work (and through which emails are occasionally relayed)
• +ip:173.164.140.96/30 ip:207.58.140.213/30+ Next it authorizes the public static IP blocks for the server and the foundation's remote server
• +include:comcast.businessclass.net include:comcast.com+ Finally it includes the domain names of the ISP through which most of the mail are relayed
• -all The last item says that if the mail didn't originate from one of those addresses, it isn't ours.
(I think that I've got that right. If I've botched it anywhere, let me know, okay?)
That's 169 characters. The DNS zones loaded happily, and the mail seems to be going out without getting bounced. So far so good!
(There's probably a way to get the hostname on each email to match the domain from which it is being addressed, but I haven't gotten there yet.)
Message was edited by: David Kudler

Most often, it went out under the hostname of the server, cerberus.limbo.jcf.org—which is useless, since that's a LAN address.
You can control this via the myhostname setting in Postfix. This defines the name it uses to identify itself to remote mail servers, which sounds like it'll address a lot of your issues.
I added SPF records that explicitly named each and every mailserver on the machine, just so that everything was clear and aboveboard—but they ended up being about 500 characters long.
OK, this doesn't make sense. You don't need to list every virtual hostname for every domain.
All you need to do is add this specific mail server's address in each domain.
There's no requirement that the hostname of the mail server matches the domain name, so it's entirely valid to create an SPF record in domain1.com that lists mailserver.someotherdomain.com as authoritative. Then, as long as postfix's myhostname says it's mailserver.someotherdomain.com and your reverse DNS resolves to that address your problem is solved.
...but you get exactly one TXT record per OS X Server machine: the Comment box.
Unless you edit your zone file directly and add whatever other records you like. However, given the above, I don't think the 255-character limit should be an issue.
Even if you didn't want to mess with your zone files directly there's still a way around that - SPF allows for an 'include' record which basically tells remote servers to include the record from some other domain, so for each domain you could just tell it to include some other domain's record (which, in turn, could include another domain) allowing virtually unlimited record length (or, at least, 255 characters per domain you manage).
SPF Includes are covered here.
• include:comcast.businessclass.net include:comcast.com Finally it includes the domain names of the ISP through which most of the mail are relayed
Bzzzz. You've now allowed any other customer of comcastbusiness.net and comcast.com to send mail on your behalf. You probably don't want to do that. When you consider that 'comcast.com' includes every one of their residential customers you can see that you really don't want to do that.

Similar Messages

  • Set up reverse DNS for virtual mail hosting

    I need a bit of server configuation advice.
    I have a static IP and two public domains on a Snow Leopard server connected using NAT behind a firewall - with the necessary port forwarding to ensure all works. 
    1. abc.com is my primary domain on the server - server.abc.com
    2. I have xyz.com set up as a virtual domain and also as a virtual mail host
    This setup has worked well for a long time but I have found that emails to [email protected] are going missing.  If I check my mx records using one of the web based tools it show an error on the reverse dns for server.xyz.com showing a reverse DNS of server.abc.com.
    So the question - is it possible to have secondary 'virtual' DNS record on the server so reverse DNS works for the virtual mail host xyz.com?  If not how do I handle the reverse DNS problem which i think is causing some external mail server to reject mail due to the inconsistency on the reverse DNS lookup?
    Many thanks for any suggestions

    SMTP requires a DNS A record.
    A DNS A record is also known as a machine record.
    A DNS A record inherently means that forward DNS and reverse DNS will match.
    The forward translation translates the host name to the IP address.
    The reverse translation translates the IP address to host name.
    When the full translation produces the same host name, that's an A record.
    DNS CNAME records are aliases, and are used for virtual hosts.
    CNAME records inherently do not match the reverse DNS translations.
    To get your configuration to work, your server must have an A record.
    That means forward and reverse DNS will match.
    Any of the virtual hosts within your mail server then all use an MX pointing at the A record host.
    If you have your DNS hosted somewhere other than your ISP, then you'll need your ISP to set up a DNS PTR.
    The DNS PTR is the reverse translation; address to name.
    If you have your own DNS services within your network (as would be typical with a privately-addressed NAT'd network), set that up as a virtual host within SMTP.
    Here is some related reading on external (public) DNS, as related to SMTP servers and such.

  • Copying multiple sheets, 255 character limit

    Hi all -
    I have a script that copies multiple worksheets to a new workbook based on criteria.  All the worksheets use the same template.  Two of the cells (A6 & A8) contain more than 255 characters so all the text does not get transferred to the new workbook.  Is there a way to 'bypass' the 255 character limit?  If not, can I somehow tie in the copying of A6 & A8 to the copying of 'every sheet' without actually scripting every single sheet?  Make sense?  Here's the code -
    tell application "Microsoft Excel"
         set xbook to make new workbook
         tell workbook "Retail_Product_Specs.xls"
             choose from list {"Whole Food Juices, 10.5oz", "Whole Food Juices, 32.0oz", "Antioxidant Elixir, 11.0oz"} with title "Exporting Product Specifications" with prompt "Choose Method of Export:"
             if result is equal to {"Whole Food Juices, 10.5oz"} then
                   set exportSheets to every sheet whose name contains "10.5"
                   set savePath to "Users:KRT:Documents:Sambazon:Production:Finished Product Specs:Product Specs:Copacker Specifications:10.5oz Whole Food:Spec-WF-10.5oz.xls"
             else if result is equal to {"Whole Food Juices, 32.0oz"} then
                   set exportSheets to every sheet whose name contains "32.0"
                   set savePath to "Users:KRT:Documents:Sambazon:Production:Finished Product Specs:Product Specs:Copacker Specifications:32.0oz Whole Food:Spec-WF-32.0oz.xls"
             else if result is equal to {"Antioxidant Elixir, 11.0oz"} then
                   set exportSheets to every sheet whose name contains "Elixir"
                   set savePath to "Users:KRT:Desktop:Test.xls"
      --set savePath to "Users:KRT:Documents:Sambazon:Production:Finished Product Specs:Product Specs:Copacker Specifications:Antioxidant Elixir:Spec-Elixir-11.0oz.xls"
             end if
         end tell
      copy worksheet exportSheets before sheet "Sheet1" of xbook
         tell active workbook
             set bounds of first window to {3, 124, 563, 861}
             delete sheet "Sheet1"
      save workbook as filename savePath
             set sPWORD to "dummy"
             repeat with tName in (get link sources type link type Excel links)
      break link name tName type link type Excel links
             end repeat
             repeat with tName in (get link sources type link type OLE links)
      break link name tName type link type OLE links
             end repeat
         end tell
      --close active workbook
    end tell
    Thank you! 

    I'm sorry, here's a quick summary - all of our product specs are in one workbook.  There's 5 different product categories (only scripting 3 for now).  Each category of product is produced at a different manufacturing plant.  When changes are made to the spec sheets, I need to export each category of products into their own new workbook so I can distribute it to the appropriate plant.  I might need to export one category, some, or all.  Make sense?  Pain in butt. 
    So!  I think the code you provided is heading in the right direction...but I obviously have something in the wrong spot.  It's taking the copied sheets in xbook and making three additional copies.  Also, the cells are not being copied.  I'm assuming the "copy worksheets exportSheets before..." is in the wrong spot, but I'm not sure how to fix it. 
    Also, I could duplicate the original workbook and delete unwanted sheets.  The current script has grown beyond my initial expectation, so that might be a better option!
    BTW - I don't understand why you have "set value of cell..." and then "set value of range...".  Can these both be cell or range, or is there a reason for the two? 
    Thank you so much for your patience and details!
    tell application "Microsoft Excel"
              set xbook to make new workbook
              tell workbook "Retail_Product_Specs.xls"
                        choose from list {"Whole Food Juices, 10.5oz", "Whole Food Juices, 32.0oz", "Antioxidant Elixir, 11.0oz"} with title "Exporting Product Specifications" with prompt "Choose Method of Export:"
                        if result is equal to {"Whole Food Juices, 10.5oz"} then
                                  set exportSheets to every sheet whose name contains "10.5"
                                  set savePath to "Users:KRT:Documents:Sambazon:Production:Finished Product Specs:Product Specs:Copacker Specifications:10.5oz Whole Food:Spec-WF-10.5oz.xls"
                        else if result is equal to {"Whole Food Juices, 32.0oz"} then
                                  set exportSheets to every sheet whose name contains "32.0"
                                  set savePath to "Users:KRT:Documents:Sambazon:Production:Finished Product Specs:Product Specs:Copacker Specifications:32.0oz Whole Food:Spec-WF-32.0oz.xls"
                        else if result is equal to {"Antioxidant Elixir, 11.0oz"} then
                                  set exportSheets to every sheet whose name contains "Elixir"
                                  set savePath to "Users:KRT:Desktop:Test.xls"
      --set savePath to "Users:KRT:Documents:Sambazon:Production:Finished Product Specs:Product Specs:Copacker Specifications:Antioxidant Elixir:Spec-Elixir-11.0oz.xls"
                        end if
                        repeat with thisSheet in exportSheets
      copy worksheet exportSheets before sheet "Sheet1" of xbook
                                  tell thisSheet
                                            set sheetName to name
                                            set txt1 to value of cell "A6:I6"
                                            set txt2 to value of range "A8:I8"
                                  end tell
                                  tell xbook
                                            tell worksheet sheetName
                                                      set value of cell "A6:I6" to txt1
                                                      set value of range "A8:I8" to txt2
                                            end tell
                                  end tell
                        end repeat
              end tell
    end tell

  • Jeode 255 char. limit

    I have the Jeode EVM on my PDA. I have to execute a code for which I have to list 9 jar files. The entire .ink file is around 400 characters. Could someone please tell me if there is a way to increase the 255 character limit or if I could change the class path to point to there jar files. I tried looking for this in regedit but did not know what command to tweek.
    Could someone please help me. I am stuch up here and need help desperately.
    Thanks

    It is possible to get parameters from file (and setting up classpath by this), when calling evm (in .lnk). Now I can't check what the parameter is (-f ?). It should allow omit the 256 characters limit in .lnk. Try to run evm with parameter which show all options (maybe advanced options). If you couldn't find this, I will check it later and give you detailed information.
    regards,
    prusak

  • SPF record confusion

    I've read through a number of forum posts here and elsewhere and still find this a confusing thing to setup.  I believe it is partly because of the way terminology is being used.
    We host our own email on Exchange 2010 servers and have a number of email domains.
    domaina.com
    domainb.com
    domainc.com
    domaind.com
    The mx records for all the above domains look like: mail.domaina.com IPADDRESS (same for domain b, domain c, etc).
    We use an external email filtering service.  As a result, our MX records list the filtering service addresses as the highest priority, with our own mail host listed last: mail.ourdomain.com
    We only send mail from our own email servers.  We do not relay any of our email to another server for delivery to the internet.  We do not use the email filtering service for any outbound email.
    I only want to include the three servers of ours that deliver mail to the internet in our SPF record.
    In the past, when I have done a telnet session to test SMTP from another server inside our network to one of the outbound servers, our server might respond with a different hostname in the HELO/EHLO (one of the four different mail.domaina.com, mail.domainb.com,
    mail.domainc.com or mail.domaind.com hostnames).  For the example, I will say that mail.domaina.com is our primary mail domain which also matches the subject name on our SSL certificates.
    Using a number of different SPF record generating tools, I come up with different SPF records and reading the SPF record creation guidelines, I don't find it any more clear.
    Some of the tools even suggest that the email server names be included in the SPF record.  Here is what was suggested, more or less, by the SPF record generating tools:
    "v=spf1 mx a a:hubtransportserver1.domaina.com a:hubtransportserver2.domaina.com a:hubtransportserver3.domaina.com ip4:xxx.xxx.xxx.202/31 ~all"
    I used a CIDR calculator to convert the three public IP addresses used by our outbound email servers to generate the CIDR range.
    With the information above, can anyone offer guidance on what the proper SPF record format is?  The Microsoft SPF tool is still broken - you can't add more than one mx record domain, no matter how you enter them in the box.  It will work if you only
    enter one mx record domain.
    Any help is appreciated!

    it should have the IP addresses or the domain name of all the server which is authorized to receive the email for your domain 
    Example:
    "v=spf1 ip4:192.168.0.1/16 -all"
    example.com. IN TXT "v=spf1 include:example.net -all"
    ; AND
    example1.com. IN SPF "v=spf1 include:example1.net -all"

  • Leopard DNS Server: Zones with SPF records?

    Hi all,
    I'm trying to figure out how to setup SPF (Sender Policy Framework) records for some domains I'm currently managing with a Leopard DNS server and I don't see any documentation anywhere. Can someone please tell me if it's even an option? I'm new to running DNS with Leopard, so I could use all the help I can get.
    Sincerely,
    Israel
    Message was edited by: Israel Thompson
    Message was edited by: Israel Thompson

    Israel Thompson wrote:
    So let me see if I have this right. Any changes I want to make that will not be editable in the GUI, I want to do them in db.mydomain.com instead of db.mydomain.com.zone.apple? Easy enough. However I tried adding "v=spf1 a mx ~all" (with quotes) to my file and it appeared to have broken the dns zone. What’s the proper way to enter these in manually? Can you give me an example of how it looks in your zone files? I’ve pasted a sample of mine below. Tell me if anything is wrong.
    Israel,
    I am new to Leopard Server - so I'm no DNS guru. I, too, have not used a DNS setup tool that requires a FQDN just associate an IP with the base of the domain (mydomain.com.). How did you get your 'mydomain.com. IN A 11.22.33.44' accomplished? Did you create a new A record and put mydomain.com. in the Machine Name field?
    Here's my setup:
    ========================
    db.mydomain.com
    ========================
    ;THE FOLLOWING INCLUDE WAS ADDED BY SERVER ADMIN. PLEASE DO NOT REMOVE.
    $INCLUDE /var/named/zones/db.mydomain.com.zone.apple
    ========================
    db.mydomain.com.zone.apple
    ========================
    $TTL 10800
    mydomain.com. IN SOA ns1.mydomain.com. admin.mydomain.com. (
    2008010951 ;Serial
    7200 ;Refresh
    3600 ;Retry
    604800 ;Expire
    345600 ;Negative caching TTL
    mydomain.com. IN NS ns1.mydomain.com.
    mydomain.com. IN NS ns.mydomain.com.
    mydomain.com. IN A 64.251.168.218
    mydomain.com. IN TXT "v=spf1 ip:64.251.168.218 ip:64.251.168.220 ~all"
    www IN A 64.251.168.218
    mail.mydomain.com. IN A 64.251.168.220
    mail.mydomain.com. IN TXT "v=spf1 a ~all"
    xserve.mydomain.com. IN A 64.251.168.218
    xserve.mydomain.com. IN TXT "v=spf1 a ~all"
    ns IN A 64.251.168.218
    ns1 IN A 64.251.168.220
    mydomain.com. IN MX 10 mail.mydomain.com.
    ... where xserve.mydomain.com is my machine's hostname.
    I have a funky setup for DNS because I don't have a different, or second, DNS server (just the one on my Xserve with everything else) and my name servers are under this zone. I added the two IPs for my mail and hostname to the base SPF record. Someone could still spoof from using the name or www domains (same IPs) but I can check for it using Postfix up front. I also added "v=spf1 a ~all" in case another mail server tries to check the mailing server or hostname directly.
    You'll usually want to set a TXT "v=spf1 ~all" (SPF null) for any records that have no possibility for mail origins, like your ftp and mobile, but it appears you also have a similar issue to me - those services will be running under the same IPs as the mail service. This is why I added "v=spf1 a ~all" to all essential services (mail and hostname). I don't know what will happen if you add an SPF null to an unnecessary service that happens to also have the same IP. (Will the IP get blocked in a cache during a lookup??) So I didn't add an SPF TXT to those domains. I'm a little confused at this point. I should probably read more about it.
    http://www.openspf.org/FAQ/Common_mistakes
    Also, you'll notice I added FQDN to mail and xserve. If I do this and ensure they are in my reverse DNS PTR records then I've seen that when I add new zone records with same IPs (like for another domain) then the PTR records don't keep switching to the newest entry (why does it do that?).
    I don't think your use of the . in the CNAME records is correct. I think the CNAME records are probably unnecessary since you have already fully defined the domains in A records. Also, those A records probably don't need FQDNs (with the ending .). I only added mine for the reason noted above, concerning the PTR records.
    I hope someone who knows some more than I can chime in on this.
    Larry
    Message was edited by: Larry_S (removed mx from SPF TXT for main domain record, as it was redundant with the ip:)

  • Is there a character limit in Mail on iPhone or iPad?

    When composing an email message, in the Mail app, is there a character limit in the body of the email on an iPhone or iPad?

    I did lots of testing last night on this issue.
    It's quite repeatable. I tested it on LV 7.1 (OSX) and the bug is there, but LV 8b120 works OK.
    I have attached the LLB that I sent to tech support.
    Here is the report I sent:
    Problem Description :
    Apparently there is a character limit on ENUM
    items.
    If I add two characters to any item in this enum,
    LabVIEW will CRASH when I apply changes. The
    crash occurs without actually RUNNING the
    program.
    I have tested on LabVIEW 7.0 (Win2000) and
    7.1.1 (OS X). Both exhibit the same behavior.
    LabVIEW 8.0 b120 (OS X) does NOT crash - it
    works correctly.
    STEPS TO REPRODUCE:
    1... Open the library and keep HDT SORT
    CHANNELS INTO PAGES.vi open.
    2... Open HDT UNITS CONTROL.ctl in the library.
    3... Add two or more characters to any item in
    the ENUM.
    4... APPLY CHANGES
    5... Watch LabVIEW crash.
    It certainly leads to bizarre behavior - If you remove the UNITS control from the HDT DISPLAY UNITS vi while you change the typedef, there is no crash. But as soon as you put it back and wire it to the connector, ALL the terminals turn to (void).
    Message Edited by CoastalMaineBird on 11-18-2005 09:11 AM
    Steve Bird
    Culverson Software - Elegant software that is a pleasure to use.
    Culverson.com
    Blog for (mostly LabVIEW) programmers: Tips And Tricks
    Attachments:
    LabVIEWCrasher.zip ‏906 KB

  • Review Activity - Change Comments window 256 character limit

    The Comments window for review activities is by default set to a 256 character limit.  We need to change its size so reviewers can fully comment on their approval/rejection of a CR.  As a workaround for now, we have them providing larger comments
    in the Notes section of the CR.  What would be the best approach to customize Comments to meet this need?

    Hi Jalass
    Here's what I meant, not sure if this will satify your requirements, but I suggest it anyways.
    Using the authoring tool, I extended the class and added Larger_Comment_Property. Then I added a text box below the Reviewers section bound to the Larger_Comment_Property that would take as much as 4000 characters. It is not per reviewer but is generally
    available to all.
    Hope this helps
    Jep
    <ManagementPack ContentReadable="true" SchemaVersion="1.1" OriginalSchemaVersion="1.1" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
    <Manifest>
    <Identity>
    <ID>ManagementPack.c09959e1_6a5f_44b7_ab87_b908fe7698f9</ID>
    <Version>1.0.0.0</Version>
    </Identity>
    <Name>ManagementPack.c09959e1_6a5f_44b7_ab87_b908fe7698f9</Name>
    <References>
    <Reference Alias="System">
    <ID>System.Library</ID>
    <Version>7.0.5826.216</Version>
    <PublicKeyToken>31bf3856ad364e35</PublicKeyToken>
    </Reference>
    <Reference Alias="Console">
    <ID>Microsoft.EnterpriseManagement.ServiceManager.UI.Console</ID>
    <Version>7.0.5826.881</Version>
    <PublicKeyToken>31bf3856ad364e35</PublicKeyToken>
    </Reference>
    <Reference Alias="Alias_a86cf614_1d8c_48f6_b253_affaf0ab135c">
    <ID>ServiceManager.ConfigurationManagement.Library</ID>
    <Version>7.0.5826.216</Version>
    <PublicKeyToken>31bf3856ad364e35</PublicKeyToken>
    </Reference>
    <Reference Alias="Alias_22563d1d_0396_4b0e_97b5_6de5337e051a">
    <ID>Microsoft.SystemCenter.ConfigurationManager</ID>
    <Version>7.0.5826.216</Version>
    <PublicKeyToken>31bf3856ad364e35</PublicKeyToken>
    </Reference>
    <Reference Alias="Alias_e72e3651_89f4_49a4_8d1c_19047aa29685">
    <ID>Microsoft.Windows.Library</ID>
    <Version>7.0.5826.216</Version>
    <PublicKeyToken>31bf3856ad364e35</PublicKeyToken>
    </Reference>
    <Reference Alias="Alias_7061c26e_00c6_4964_8a68_5e9a32e52d31">
    <ID>Microsoft.Windows.Peripheral.Library</ID>
    <Version>7.0.5826.216</Version>
    <PublicKeyToken>31bf3856ad364e35</PublicKeyToken>
    </Reference>
    <Reference Alias="Alias_9eb0a66e_dcf3_476d_a312_d7303289c8fe">
    <ID>System.WorkItem.Library</ID>
    <Version>7.0.5826.216</Version>
    <PublicKeyToken>31bf3856ad364e35</PublicKeyToken>
    </Reference>
    <Reference Alias="Alias_39466dd4_7b01_43d6_ba01_466ce609474b">
    <ID>System.SupportingItem.Library</ID>
    <Version>7.0.5826.216</Version>
    <PublicKeyToken>31bf3856ad364e35</PublicKeyToken>
    </Reference>
    <Reference Alias="Alias_51d1ed89_a3fd_4afd_95a7_cd1962953b58">
    <ID>System.Knowledge.Library</ID>
    <Version>7.0.5826.216</Version>
    <PublicKeyToken>31bf3856ad364e35</PublicKeyToken>
    </Reference>
    <Reference Alias="Alias_5b72c892_41dd_4326_bb46_b316d40dd43e">
    <ID>System.WorkItem.Activity.Library</ID>
    <Version>7.0.5826.216</Version>
    <PublicKeyToken>31bf3856ad364e35</PublicKeyToken>
    </Reference>
    <Reference Alias="Alias_8dec2ae6_68ee_437c_a759_307bbd5a4ca6">
    <ID>ServiceManager.ChangeManagement.Library</ID>
    <Version>7.0.5826.216</Version>
    <PublicKeyToken>31bf3856ad364e35</PublicKeyToken>
    </Reference>
    <Reference Alias="WorkItem">
    <ID>System.WorkItem.ChangeRequest.Library</ID>
    <Version>7.0.5826.216</Version>
    <PublicKeyToken>31bf3856ad364e35</PublicKeyToken>
    </Reference>
    <Reference Alias="Alias_a4248b67_19f4_4fc3_bd63_e0c3c2a298d5">
    <ID>ServiceManager.ProblemManagement.Library</ID>
    <Version>7.0.5826.216</Version>
    <PublicKeyToken>31bf3856ad364e35</PublicKeyToken>
    </Reference>
    <Reference Alias="WorkItem1">
    <ID>System.WorkItem.Problem.Library</ID>
    <Version>7.0.5826.216</Version>
    <PublicKeyToken>31bf3856ad364e35</PublicKeyToken>
    </Reference>
    <Reference Alias="Alias_1d1ea05f_7e08_4d0f_b8a2_ab3e1a1fc555">
    <ID>ServiceManager.ActivityManagement.Library</ID>
    <Version>7.0.5826.216</Version>
    <PublicKeyToken>31bf3856ad364e35</PublicKeyToken>
    </Reference>
    </References>
    </Manifest>
    <TypeDefinitions>
    <EntityTypes>
    <ClassTypes>
    <ClassType ID="NewClass_1" Accessibility="Public" Abstract="false" Base="Alias_9eb0a66e_dcf3_476d_a312_d7303289c8fe!System.WorkItem" Hosted="false" Singleton="false" Extension="false">
    <Property ID="Property_10" Type="string" AutoIncrement="false" Key="true" CaseSensitive="false" MaxLength="256" MinLength="0" Required="false" />
    <Property ID="Property_11" Type="enum" AutoIncrement="false" Key="false" CaseSensitive="false" MaxLength="256" MinLength="0" Required="false" EnumType="Alias_5b72c892_41dd_4326_bb46_b316d40dd43e!ApprovalEnum" />
    </ClassType>
    <ClassType ID="ClassExtension_210829b0_39b3_4022_969a_0bfd171e5e2c" Accessibility="Public" Abstract="false" Base="Alias_5b72c892_41dd_4326_bb46_b316d40dd43e!System.WorkItem.Activity.ReviewActivity" Hosted="false" Singleton="false" Extension="true">
    <Property ID="Larger_Comment_Property" Type="string" AutoIncrement="false" Key="false" CaseSensitive="false" MaxLength="4000" MinLength="0" Required="false" />
    </ClassType>
    </ClassTypes>
    <TypeProjections>
    <TypeProjection ID="CustomForm_710c2cf6_93ec_4f89_a3c4_eab2c6afa7a1_TypeProjection" Accessibility="Public" Type="Alias_5b72c892_41dd_4326_bb46_b316d40dd43e!System.WorkItem.Activity.ReviewActivity">
    <Component Path="$Context/Path[Relationship='Alias_5b72c892_41dd_4326_bb46_b316d40dd43e!System.WorkItemContainsActivity' SeedRole='Target']$" Alias="ParentWorkItem" />
    <Component Path="$Context/Path[Relationship='Alias_9eb0a66e_dcf3_476d_a312_d7303289c8fe!System.WorkItemCreatedByUser']$" Alias="ActivityCreatedBy" />
    <Component Path="$Context/Path[Relationship='Alias_9eb0a66e_dcf3_476d_a312_d7303289c8fe!System.WorkItemAssignedToUser']$" Alias="ActivityAssignedTo" />
    <Component Path="$Context/Path[Relationship='Alias_5b72c892_41dd_4326_bb46_b316d40dd43e!System.ReviewActivityHasReviewer']$" Alias="Reviewer">
    <Component Path="$Context/Path[Relationship='Alias_5b72c892_41dd_4326_bb46_b316d40dd43e!System.ReviewerIsUser']$" Alias="User" />
    <Component Path="$Context/Path[Relationship='Alias_5b72c892_41dd_4326_bb46_b316d40dd43e!System.ReviewerVotedByUser']$" Alias="VotedBy" />
    </Component>
    </TypeProjection>
    </TypeProjections>
    </EntityTypes>
    </TypeDefinitions>
    <Categories>
    <Category ID="ManagementPack.c09959e1_6a5f_44b7_ab87_b908fe7698f9.Category" Value="Console!Microsoft.EnterpriseManagement.ServiceManager.ManagementPack">
    <ManagementPackName>ManagementPack.c09959e1_6a5f_44b7_ab87_b908fe7698f9</ManagementPackName>
    <ManagementPackVersion>1.0.0.0</ManagementPackVersion>
    </Category>
    </Categories>
    <Presentation>
    <Forms>
    <Form ID="CustomForm_710c2cf6_93ec_4f89_a3c4_eab2c6afa7a1" Accessibility="Public" Target="CustomForm_710c2cf6_93ec_4f89_a3c4_eab2c6afa7a1_TypeProjection" BaseForm="Alias_1d1ea05f_7e08_4d0f_b8a2_ab3e1a1fc555!Microsoft.EnterpriseManagement.ServiceManager.ActivityManagement.Forms.ReviewActivityForm" TypeName="Microsoft.EnterpriseManagement.ServiceManager.ActivityManagement.Forms.ReviewActivityForm">
    <Category>Form</Category>
    <Customization>
    <Resize Type="BottomLeft" X="2" Y="-59">
    <Element Name="LayoutRoot/Index:0" />
    </Resize>
    <PropertyChange Object="reviewerListview" Property="Margin">
    <NewValue>0,0,0,30</NewValue>
    </PropertyChange>
    <AddControl Parent="generalTabItem/Index:1/Index:0/Index:13" Assembly="PresentationFramework, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" Type="System.Windows.Controls.TextBox" Left="10" Top="260.055" Right="677" Bottom="1" Row="1" Column="0" />
    <PropertyChange Object="TextBox_1" Property="Text">
    <NewValue></NewValue>
    </PropertyChange>
    <PropertyBindingChange Object="TextBox_1" Property="Text">
    <NewBinding Enabled="True" Path="Larger_Comment_Property" Mode="Default" BindsDirectlyToSource="False" UpdateSourceTrigger="Default" />
    </PropertyBindingChange>
    <PropertyChange Object="TextBox_1" Property="HorizontalAlignment">
    <NewValue>Left</NewValue>
    </PropertyChange>
    <PropertyChange Object="TextBox_1" Property="Margin">
    <NewValue>10,260.055,0,1</NewValue>
    </PropertyChange>
    <PropertyChange Object="TextBox_1" Property="VerticalAlignment">
    <NewValue>Bottom</NewValue>
    </PropertyChange>
    <PropertyChange Object="TextBox_1" Property="Margin">
    <NewValue>10,0,0,1</NewValue>
    </PropertyChange>
    <Resize Type="TopRight" X="-677" Y="7">
    <Element Name="TextBox_1" />
    </Resize>
    <PropertyChange Object="TextBox_1" Property="Margin">
    <NewValue>10,254,0,1</NewValue>
    </PropertyChange>
    <PropertyChange Object="TextBox_1" Property="HorizontalAlignment">
    <NewValue>Stretch</NewValue>
    </PropertyChange>
    <PropertyChange Object="TextBox_1" Property="Width">
    <NewValue>Auto</NewValue>
    </PropertyChange>
    <PropertyChange Object="TextBox_1" Property="Margin">
    <NewValue>10,0,0,1</NewValue>
    </PropertyChange>
    <Move X="10" Y="-1.39999999999839">
    <Element Name="TextBox_1" />
    </Move>
    <PropertyChange Object="TextBox_1" Property="Margin">
    <NewValue>0,255,10,-0.399999999998386</NewValue>
    </PropertyChange>
    <PropertyChange Object="TextBox_1" Property="Margin">
    <NewValue>0,0,10,-0.399999999998386</NewValue>
    </PropertyChange>
    <PropertyChange Object="TextBox_1" Property="Margin">
    <NewValue>0,0,10,0</NewValue>
    </PropertyChange>
    <PropertyChange Object="TextBox_1" Property="Margin">
    <NewValue>0,0,0,0</NewValue>
    </PropertyChange>
    <PropertyChange Object="LayoutRoot/Index:0" Property="Margin">
    <NewValue>-2,20,0,0</NewValue>
    </PropertyChange>
    <PropertyChange Object="LayoutRoot/Index:0" Property="Margin">
    <NewValue>0,20,0,0</NewValue>
    </PropertyChange>
    </Customization>
    </Form>
    </Forms>
    </Presentation>
    <LanguagePacks>
    <LanguagePack ID="ENU" IsDefault="true">
    <DisplayStrings>
    <DisplayString ElementID="ManagementPack.c09959e1_6a5f_44b7_ab87_b908fe7698f9">
    <Name>ManagementPack.c09959e1_6a5f_44b7_ab87_b908fe7698f9</Name>
    </DisplayString>
    <DisplayString ElementID="NewClass_1">
    <Name>NewClass_1</Name>
    <Description>Specify your class description.</Description>
    </DisplayString>
    <DisplayString ElementID="NewClass_1" SubElementID="Property_10">
    <Name>Property_10</Name>
    </DisplayString>
    <DisplayString ElementID="NewClass_1" SubElementID="Property_11">
    <Name>Property_11</Name>
    </DisplayString>
    <DisplayString ElementID="CustomForm_710c2cf6_93ec_4f89_a3c4_eab2c6afa7a1">
    <Name>Microsoft.EnterpriseManagement.ServiceManager.ActivityManagement.Forms.ReviewActivityForm (Customized)</Name>
    <Description>Microsoft.EnterpriseManagement.ServiceManager.ActivityManagement.Forms.ReviewActivityForm (Customized)</Description>
    </DisplayString>
    <DisplayString ElementID="ClassExtension_210829b0_39b3_4022_969a_0bfd171e5e2c">
    <Name>Extension of Review Activity</Name>
    <Description>Extension of class Review Activity</Description>
    </DisplayString>
    <DisplayString ElementID="ClassExtension_210829b0_39b3_4022_969a_0bfd171e5e2c" SubElementID="Larger_Comment_Property">
    <Name>Larger_Comment_Property</Name>
    </DisplayString>
    </DisplayStrings>
    </LanguagePack>
    </LanguagePacks>
    </ManagementPack>

  • Please remove remaining 255 character API limitations

    I develop a library for creating .xll add-ins using the Excel C API (as described in the Excel SDK:
    http://msdn.microsoft.com/en-us/library/office/bb687883(v=office.15).aspx ). However, this discussion also applies to the COM Automation interfaces, as used from VBA or VSTO.
    Since Excel 2007, the 255 character limitation for strings in Excel C APIs have been lifted. In particular, the C API supports long Unicode strings up to 32767 characters in most places. However, there are
    a number of C API calls where the 255 character string limitation remains. Typically, the corresponding COM Automation call has the same limitation, so these seem to be inherent in Excel at some level.
    I highlight two cases:
    * the C API call xlcFormulaConvert is used to convert formulas between A1 and R1C1-style references. If the resulting converted formula would be longer than 255 characters, the API call fails. Likewise, the corresponding
    COM call is Application.ConvertFormula, and has the same limitation of 255 character strings and returns Error 2105 for strings that would be longer than 255 characters. see the Remark in the documentation here: http://msdn.microsoft.com/en-us/library/office/ff822751(v=office.15).aspx
    * the C API call xlcFormulaArray has a similar limitation, as does the COM Automation equivalent,Range.FormulaArray, as documented here: http://support.microsoft.com/kb/213181
    (first noted in Excel 2000, but still present in Excel 2013) and here:
    http://msdn.microsoft.com/en-us/library/office/ff837104(v=office.15).aspx. Workarounds for this bug are very hard to implement, an example is this extensive discussion from 2005: http://dailydoseofexcel.com/archives/2005/01/10/entering-long-array-formulas-in-vba/
    Various other function have similar limitations, e.g. Match
    and Replace, RTD topic strings.
    I am posting here, in hopes that there is some way for this issue to make its way to the Excel team. These limitations still remaining from previous versions cause ongoing pain, and I would like to plead that they get some attention for future Excel
    releases.
    -Govert
    Excel-DNA - Free and easy .NET for Excel

    Another place where this limitation is present (still in Excel 2013), is in the strings passed with a C API call to
    xlfRegister, used to register a UDF. While the C API has supported long Unicode strings since Excel 2007, calls to xlfRegister will fail if any of the strings are longer than 255 characters.
    The limitation is particularly inconvenient in this call, since one of the strings represents the concatenation of parameter names displayed in the Insert Function dialog. So the total length of parameter names (including separator characters between parameters)
    cannot be more than 255 characters - a limit that is quite easily bumped into.
    This affects any add-in based on the C API, whether developed in C/C++ or a managed helper library like Excel-DNA.
    -Govert
    Excel-DNA - Free and easy .NET for Excel

  • Howto overcome the 255 char limit in XSLT when outputting using method=text

    Hi, I am facing a problem in my XSLT program to output a CSV file. The header line is exceeding 255 char limit, seems built into the editor and looks like it repeats the 255th character into the next line where it finishes the rest of the line. Now this screws the columns in the CSV file. I have tried different combinations of <xsl:text></xsl:text> tags but to no avail.
    Is there a way to overcome this problem, spanning a line onto multiple lines in SAP but getting a single line in the output ?
    Thanks in advance.
    Swapan

    I should have known better to searched in SAP provided documentation instead here first. I needed to end the line with &> chars to continue into the next line.
    http://help.sap.com/saphelp_erp2004/helpdata/en/50/b6463c32a3fe13e10000000a114084/frameset.htm

  • Virtual Mail Domains and Users

    I'm having an issue with virtual hosts and mail hosts.  I have three domains lets call them domain1.com, domain2.com and domain3.com
    now lets say I have a user russ and he wants to recive mail only at domain2.com is there anyway to just let him recieve mail at that domain?  becasue he also recives mail at domain1.com becasue it is the default domain.
    Any help on this is greatly appreciated.
    Thank You,
    Russ

    Did you ever sort this properly or just go with your 'fix'?
    I have set up our 10.5 mailserver and everything works fine for people with accounts on the server but forwarders to external mail accounts are not working properly.
    Emails sent from an external source to a forwarding account on our server receive a bounce message with the errors...
    <[email protected]>: host mailserver.domain1.com[/var/imap/socket/lmtp]
    said: 550-Mailbox unknown. Either there is no mailbox associated with this
    550-name or you do not have authorization to see it. 550 5.1.1 User unknown
    (in reply to end of DATA command)
    ...and...
    Diagnostic-Code: smtp; 550-Mailbox unknown. Either there is no mailbox
    associated with this 550-name or you do not have authorization to see it.
    550 5.1.1 User unknown
    In this case '[email protected]' is an account on the mailserver set as a forwarder to '[email protected]'
    Despite the sevder getting the bounce message the actual message is however forwarded and received by '[email protected]'
    Paul

  • Appleworks Spreadsheet Character Limit

    Is there anyway to get around the 256 character limit in each of the cells in Appleworks spreadsheet?

    No.
    But if you need to put more than 255 characters in a box, perhaps the spreadsheet is not the right tool. Have you considered using a database document? The DB can hold about a thousand characters in a field.
    Regards,
    Barry

  • Virtual Mail Domains

    10.4.10 Server.
    I've set up virtual mail domains. Added email addresses to the shortnames list. When anyone sends an email to [email protected] it gets delivered to all hosted domains. So i get the same email in domain2.com.
    Anyone know what's causing this?
    cheers
    Multiple   Mac OS X (10.4.10)  

    Sydney, while you are waiting for a response, just a clarification on local DNS, MX, etc...
    The MX record is only required for 'external' users, in order to discover where the responsible mail server is (because all they have to start from is a basic domain name, not a server hostname). In your LAN, your mail clients will already have this location as you put this into the sending/receiving field in the mail client - either as a hostname (which must be resolvable to the local server's IP in your local DNS) or directly as an IP address. So local DNS does not need an MX record if this scenario is applicable.
    The hostname you put into your local mail client has no meaning to the mail server - it purely resolves to an IP address and then your client 'drops' that hostname and contacts the mail server at the IP address. The important bit of info used by the mail client is the user login name - this tells the mail server what account, in what domain, to access.
    -david

  • Virtual Webserver Hosting on CSS / CSM and ACE

    Hello,
    i've a big project on my company.
    There shoul'd b e set up about 8 Servers, with 14 virtual Servers on each machine.
    Each virtual webserver shout get it's own IP Address.
    But this is not the end, they would need more virtual Servers over time.
    So the we will use 112 IP Adresses the first time, and about up to 200 for later use.
    There shoul'd be implemented many domains. Each Domain should be hostet on 2-8 virtual Webservers depending on the load of the site.
    I've read about the Virtual Web Hosting Application Guide:
    http://www.cisco.com/en/US/customer/products/hw/contnetw/ps789/products_tech_note09186a0080094b4d.shtml
    As i understand, i can configure the 8 Servers with an IP Addressrange of 20
    10.1.1.10 - 10.1.1.29 for Server 1
    10.1.1.30 - 10.1.1.49 for Server 2
    and so on....
    code:
    service web1
    ip address 10.1.1.10 range 20
    And i can configure a content rule with an VIP Range of 20
    10.1.255.10 - 10.1.255-39
    content L4_HTTP
    vip address 10.1.255.10 range 20
    port 80
    So as i understand, if client requests virtual IP 10.1.255.10 it will be directed to the Server1 with 10.1.10 or Server 2 with 10.1.1.30.
    Or with by requesting 10.1.255.12 it will be directed to Server 1 with 10.1.1.12 or Server 2 10.1.1.32.
    As i read, only the first IP Adress will be used for Keepalive checks. How can i check if all virtual Servers are operating? May, there will be shut down only one virtual webserver on a machine and not all.
    Is it also possible to do such things on CSM or ACE?
    Also my CSS is not directly connected to the Servernet. Does this configuration work if there is a router between the CSS and the Server?
    Is there another solution for such things? What would you recommend?
    Sven

    Sven,
    I would not go with the range option.
    You should looks each ip as a separate server weither this is a virtual or real server.
    Configure a service for each ip with its own keepalive and configure a content rule for each domain and assign the services accordingly.
    The config will be bigger but it is easier to see what's going on and to do modification and to troubleshoot.
    Maybe you could use CVDM for operating the config and do modification.
    Gilles.

  • 48 character limit on TNS Service Name

    In the Oracle ODBC Driver Configuration Dialogue Box there is a 48 character limit in the TNS Service name file. In my case, I need 56 characters if I use the //HOST:PORT/service_name format. The service_name is the format SID.host. The full TNS service name can get quite long since the host is repeated twice.
    For me a workable workarounds is to use the IP address in the HOST field (but not the service_name). I didn't test, but another workaround I presume is to use a TNS_NAMES.ora file, but that adds complexity to a tool that's supposed to be simple.
    Better yet, Oracle developers need to make the TNS service name field a bit longer (96 chars?).
    Now that it is working I am happy with the concept and usability of the Instant Client.
    Trenton

    Hi!
    I found the error:
    TNS_ADMIN=C:\Oracle\instantclient_10_2\network\admin\tnsnames.oraThat's wrong. The environment variable TNS_ADMIN has to point to the directory containing the tnsnames.ora file; it must not contain the complete path to the tnsnames.ora file.
    After changing TNS_ADMIN to C:\Oracle\instantclient_10_2\network\admin, all is fine.
    Thanks,
    Alexander

Maybe you are looking for

  • How can I convert the files in my ipod to the original mp3 and jpegs?

    My computer recently crashed and my ipod has most of my photos, music and contacts. I am using windows OS and my question is how come you guys dont have software that will covert IPOD's files to windows viewable/playable formats? This is very unfair

  • Need help with my Aperture 3 Library

    Greetings: I recently purchased Aperture 3 with my new iMac and need some help. I have a large photo library (like 8GB)...all of these are JPEG photos in folder etc. Now after I have pointed Aperture to my pictures library, I now see my pictures libr

  • Zoom level as bindiing variable

    Hi MapViewer folks, Is there an hidden binding variable that defines the zoom level for a geometry theme being rendered ? Like :mvqboxxl, :mvqboxyl, :mvqboxxh, :mvqboxyh when MapViewer is rewriting the SQL query for a given theme. Thanks Karl

  • Can't receive photos in texts or mms

    My iPhone 4 isn't showing me messages that have photos attached. Does anyone know what the problem and solution might be?

  • How do I get my information from my macbook air to auto link into my iMac desk computer?

    I just purchased an imac desktop computer and had the information from my macbook air transfered into it.  I was away on business and came back to find that my information didn't auto sync into my desktop computer.  How do I auto sync the 2?