depicus

changing the digital world one bit at a time...

Blants (noun) the rants of a blogger

  1. Add outbound port 25 for SMTP in VMware ESXi v5

    August 6, 2013 by The Man

    If you use the great backup script from ghettoVCB you have an option to email the logs. However the port is not open on the ESX firewall so

    1. Create a text doc called smtp.xml and add the following.

    
      
        SMTP_Outbound
        
          outbound
          tcp
          dst
          25
        
        true
        false
      
    
    

    2. Upload this file to /etc/vmware/firewall/

    3. Run esxcli network firewall refresh on the ESX device.

    All done


  2. Mac App Rejection….

    January 1, 2011 by The Man

    Bummer just been rejected for “2.30 Apps that do not comply with the Mac OS X File System documentation will be rejected”

    “The application is creating files or writing to ~/Library/Application Support/Depicus/…. Appropriate app-identifiers are ‘WakeOnLan’, ‘com.depicus.osx.wakeonlan’ and your name”

    Well have filed an appeal so lets see how we get on but looks like I won’t make it into the App Store for launch.

    UPDATE WE WON – Wake on Lan will be in the Mac App Store wheeeeeeeheeee


  3. Wake On Lan hits controversy and 1.4

    December 1, 2010 by The Man

    Some people are not happy with me using analytics to see how you use the app and on what devices. Nothing nefarious it was just Google analytics for the iPhone which told me what buttons you pressed most.

    BUT if your not happy then I’m not happy. So I have removed all of it.

    I have also fixed a bug that would crash the app on 3.1.3 and lower devices. As ever should be live in about a week.


  4. iPhone App 1.3 – Forever in Review

    November 6, 2010 by The Man

    Well it’s been a week since v1.2 of the iPhone/iPad version of Wake On Lan was submitted to Apples app store. It’s the one annoying feature of the app store that you never know how long it will take. Thankfully I have been hard at work on 1.3 with more features so once 1.2 goes live I will submit 1.3. Here are a few screen shots to keep you going.

    1. The auto discovery page

    Discovery Page, current Arp Cache

    Discovery Page, current Arp Cache

    2. Doing some magic

    Doing some magic

    Doing some magic

    3. The end results

    The end results

    The end results

    And after a bit of tinkering


  5. Wake On Lan for OSX is live

    November 4, 2010 by The Man

    Well it’s not pretty but it works, will add more functionality if there is demand but for now here it is.

    Head on over to the main site to download.


  6. Because you can never trust a user…

    by The Man

    You will be surprised, or not, at the stuff people will try and type into UITextField boxes. Here is some code that uses shouldChangeCharactersInRange to a) check the characters entered and b) restrict the length and as a bonus add charachters that the user has to type.

    The field requires the user to input a mac address which is a alpha numeric field but letters are only valid up to F.

    As always this code is cobbled from other pioneers in the interweb, thanks to them.

    - (BOOL) textField:(UITextField*)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString*)textEntered 
    {
        if (textField.tag == 101)
        {
            NSCharacterSet *myMacAddress = [NSCharacterSet characterSetWithCharactersInString:@"0123456789abcdefABCDEF-:"];
        for (int i = 0; i < [textEntered length]; i++) 
        {
            unichar c = [textEntered characterAtIndex:i];
            if (![myMacAddress characterIsMember:c]) 
            {
                return NO;
            }
            if (([textField.text length] == 1) || ([textField.text length] == 4) || ([textField.text length] == 7) || ([textField.text length] == 10) || ([textField.text length] == 13))
            {
               [textField setText:[NSString stringWithFormat:@"%@%@-",[textField text],textEntered]]; 
                return NO;
            }
            int limit = 16;
            return !([textField.text length]>limit && [textEntered length] > range.length);
        } 
        }
        return YES;
    }
    

    Not perfect but better than nothing.