]> gitweb.michael.orlitzky.com - hath.git/log
hath.git
14 years agoAdd two HUnit tests for IPv4Address.
Michael Orlitzky [Sun, 9 May 2010 19:22:48 +0000 (15:22 -0400)]
Add two HUnit tests for IPv4Address.

14 years agoFixed the IPv4Address apply_mask function; the bit order was backwards.
Michael Orlitzky [Sun, 9 May 2010 18:11:36 +0000 (14:11 -0400)]
Fixed the IPv4Address apply_mask function; the bit order was backwards.

14 years agoAdded the functions to combine and remove adjacent Cidrs.
Michael Orlitzky [Sun, 9 May 2010 17:49:56 +0000 (13:49 -0400)]
Added the functions to combine and remove adjacent Cidrs.
Updated combine_all to perform both types (contained, adjacent) of combination.

14 years agoAdded the decrement function for Maskbits.
Michael Orlitzky [Sun, 9 May 2010 17:40:46 +0000 (13:40 -0400)]
Added the decrement function for Maskbits.

14 years agoAdded the adjacent function to Cidr.
Michael Orlitzky [Sun, 9 May 2010 17:03:54 +0000 (13:03 -0400)]
Added the adjacent function to Cidr.

14 years agoAdded the most_sig_bit_different function to IPv4Address.
Michael Orlitzky [Sun, 9 May 2010 17:01:32 +0000 (13:01 -0400)]
Added the most_sig_bit_different function to IPv4Address.

14 years agoDefine a show instance for Maskbits.
Michael Orlitzky [Sat, 8 May 2010 17:04:06 +0000 (13:04 -0400)]
Define a show instance for Maskbits.

14 years agoDefine a show instance for Cidr.
Michael Orlitzky [Sat, 8 May 2010 16:58:51 +0000 (12:58 -0400)]
Define a show instance for Cidr.

14 years agoDefined a show instance for IPv4Address.
Michael Orlitzky [Sat, 8 May 2010 16:57:14 +0000 (12:57 -0400)]
Defined a show instance for IPv4Address.

14 years agoDefined a show instance for Octet.
Michael Orlitzky [Sat, 8 May 2010 16:50:49 +0000 (12:50 -0400)]
Defined a show instance for Octet.

14 years agoDefine a show instance for Bit.
Michael Orlitzky [Sat, 8 May 2010 16:48:29 +0000 (12:48 -0400)]
Define a show instance for Bit.

14 years agoUpdated the Reduce action to call combine_all on the Cidr list.
Michael Orlitzky [Sat, 8 May 2010 16:46:45 +0000 (12:46 -0400)]
Updated the Reduce action to call combine_all on the Cidr list.

14 years agoImplemented the combine_all function for Cidrs containing one another.
Michael Orlitzky [Sat, 8 May 2010 16:45:46 +0000 (12:45 -0400)]
Implemented the combine_all function for Cidrs containing one another.
Removed the 'contains' export from the Cidr module.
Added a 'contains_proper' convenience function.

14 years agoFixed the Octet to/from Int functions.
Michael Orlitzky [Sat, 8 May 2010 15:51:01 +0000 (11:51 -0400)]
Fixed the Octet to/from Int functions.

14 years agoUpdated the IPv4Address module to use the new Maskbits values.
Michael Orlitzky [Sat, 8 May 2010 15:30:03 +0000 (11:30 -0400)]
Updated the IPv4Address module to use the new Maskbits values.

14 years agoUpdated the Maskable functions to use the new Maskbits values.
Michael Orlitzky [Sat, 8 May 2010 15:29:24 +0000 (11:29 -0400)]
Updated the Maskable functions to use the new Maskbits values.

14 years agoEnumerated all possible values (Zero through ThirtyTwo) for Maskbits.
Michael Orlitzky [Sat, 8 May 2010 15:26:18 +0000 (11:26 -0400)]
Enumerated all possible values (Zero through ThirtyTwo) for Maskbits.
Updated the Cidr module to use the new Maskbits values.

14 years agoAdded a new Maskable typeclass with instances Octet and IPv4Address.
Michael Orlitzky [Thu, 6 May 2010 01:42:47 +0000 (21:42 -0400)]
Added a new Maskable typeclass with instances Octet and IPv4Address.
Export octet[1-4] from IPv4Address.
Implemented a new 'contains' function for Cidrs using the Maskable class' apply_mask function.

14 years agoDon't validate the CIDR strings; rather, check whether the type of the returned Cidrs...
Michael Orlitzky [Sun, 2 May 2010 21:08:23 +0000 (17:08 -0400)]
Don't validate the CIDR strings; rather, check whether the type of the returned Cidrs is Cidr.None.

14 years agoRemoved the Text.Regex.Posix import.
Michael Orlitzky [Sun, 2 May 2010 21:06:31 +0000 (17:06 -0400)]
Removed the Text.Regex.Posix import.
Removed the is_valid_cidr function.
Send each octet/maskbit string to the appropriate module for parsing.
Return Cidr.None if either the octets or maskbits are invalid.

14 years agoReplace the Maskbits type alias with the real thing.
Michael Orlitzky [Sun, 2 May 2010 21:05:46 +0000 (17:05 -0400)]
Replace the Maskbits type alias with the real thing.

14 years agoAdded the octet_from_string function.
Michael Orlitzky [Sun, 2 May 2010 21:05:15 +0000 (17:05 -0400)]
Added the octet_from_string function.

14 years agoAdded the Maskbits module and type.
Michael Orlitzky [Sun, 2 May 2010 21:04:37 +0000 (17:04 -0400)]
Added the Maskbits module and type.

14 years agoAdded a None constructor for Cidr.
Michael Orlitzky [Sun, 2 May 2010 19:23:48 +0000 (15:23 -0400)]
Added a None constructor for Cidr.
Return Cidr.None when we are passed an invalid IPv4Address.

14 years agoAdd a None constructor for IPv4Address.
Michael Orlitzky [Sun, 2 May 2010 19:22:28 +0000 (15:22 -0400)]
Add a None constructor for IPv4Address.
Hide the constructor for IPv4Address.
Created an ipv4address_from_octets function which mimics the constructor but will return IPv4Address.None in response to being passed Octet.Nones.

14 years agoAdd a None constructor for Octets.
Michael Orlitzky [Sun, 2 May 2010 19:19:00 +0000 (15:19 -0400)]
Add a None constructor for Octets.
Return Octet.None when an octet is created from an invalid Int.

14 years agoAdd a None constructor for Bits.
Michael Orlitzky [Sun, 2 May 2010 19:18:25 +0000 (15:18 -0400)]
Add a None constructor for Bits.

14 years agoRemove the ipv4address_from_string function.
Michael Orlitzky [Sun, 2 May 2010 19:05:55 +0000 (15:05 -0400)]
Remove the ipv4address_from_string function.

14 years agoUpdate Main and Cidr to use the new modules instead of converting to/from bit strings.
Michael Orlitzky [Sun, 2 May 2010 18:39:08 +0000 (14:39 -0400)]
Update Main and Cidr to use the new modules instead of converting to/from bit strings.

14 years agoMove the is_valid_cidr function in to the Cidr module.
Michael Orlitzky [Sun, 2 May 2010 18:01:12 +0000 (14:01 -0400)]
Move the is_valid_cidr function in to the Cidr module.

14 years agoAdded three new modules which are currently independent of the rest of the code:...
Michael Orlitzky [Sun, 2 May 2010 17:53:40 +0000 (13:53 -0400)]
Added three new modules which are currently independent of the rest of the code: Bit, Octet, and IPv4Address.

14 years agoAllow "regexed" and "reduced" for the mode.
Michael Orlitzky [Sat, 1 May 2010 07:53:19 +0000 (03:53 -0400)]
Allow "regexed" and "reduced" for the mode.
Add valid modes to the usage string.

14 years agoAdd mode parsing to the CommandLine module.
Michael Orlitzky [Fri, 30 Apr 2010 22:56:00 +0000 (18:56 -0400)]
Add mode parsing to the CommandLine module.
Separate the parse_errors, parse_options, and parse_mode functions.
Add a second mode of operation, Reduce (currently echoes its input).

14 years agoAdd a CommandLine module for parsing command-line options.
Michael Orlitzky [Thu, 29 Apr 2010 02:20:56 +0000 (22:20 -0400)]
Add a CommandLine module for parsing command-line options.
Update the Main module to use the new CommandLine module.
Implement an input file option (to override stdin).

14 years agoMoved most of the CIDR code out of Main and in to a new Cidr module.
Michael Orlitzky [Thu, 22 Apr 2010 00:48:59 +0000 (20:48 -0400)]
Moved most of the CIDR code out of Main and in to a new Cidr module.
Created a Cidr data type to handle four-tuples of octets.
Modified all of the function signatures to use the new Cidr data type.

14 years agoUnqualify the Numeric import, and specify the functions that we need.
Michael Orlitzky [Fri, 2 Apr 2010 04:46:33 +0000 (00:46 -0400)]
Unqualify the Numeric import, and specify the functions that we need.

14 years agoUnqualify the Data.List import, and specify the functions that we need.
Michael Orlitzky [Fri, 2 Apr 2010 04:45:13 +0000 (00:45 -0400)]
Unqualify the Data.List import, and specify the functions that we need.

14 years agoUnqualify the Data.Char import, and specify the functions that we need.
Michael Orlitzky [Fri, 2 Apr 2010 04:43:27 +0000 (00:43 -0400)]
Unqualify the Data.Char import, and specify the functions that we need.

14 years agoRename hath.hs to Main.hs.
Michael Orlitzky [Fri, 2 Apr 2010 04:40:39 +0000 (00:40 -0400)]
Rename hath.hs to Main.hs.

14 years agoSeparate a few functions out in to a ListUtils module.
Michael Orlitzky [Fri, 2 Apr 2010 04:37:10 +0000 (00:37 -0400)]
Separate a few functions out in to a ListUtils module.

14 years agoTake a newline-separated list of CIDRs as input, and output a regex that will match...
Michael Orlitzky [Thu, 1 Apr 2010 05:29:26 +0000 (01:29 -0400)]
Take a newline-separated list of CIDRs as input, and output a regex that will match any of them.

14 years agoCommented each function.
Michael Orlitzky [Thu, 1 Apr 2010 00:39:32 +0000 (20:39 -0400)]
Commented each function.
Added address barriers on the result of cidr_to_regex.

14 years agoAdded the bin directory and its .gitignore file.
Michael Orlitzky [Wed, 31 Mar 2010 06:02:50 +0000 (02:02 -0400)]
Added the bin directory and its .gitignore file.

14 years agoInitial commit; the first thing that would compile and produce sane output.
Michael Orlitzky [Wed, 31 Mar 2010 06:01:31 +0000 (02:01 -0400)]
Initial commit; the first thing that would compile and produce sane output.