summaryrefslogtreecommitdiff
path: root/src
AgeCommit message (Collapse)Author
2019-08-30main.c:change license header to block comment styleAaron Ball
2019-08-30i18n_set.h and .c:Add function descriptions and license headerAaron Ball
2019-08-30Streamline random selection code in mainAaron Ball
2019-08-27Ensure no duplicate character setsAaron Ball
Adds i18n_set_exists function to check the linked list for potential duplicates before adding a new character set.
2019-08-27Remove -l,--lower switchAaron Ball
This is default and we must have at least one character set always.
2019-08-26Update debug countsAaron Ball
Add total count to output. Update "Count" string to say "Set count" since it no longer represents the size of the whole set pool array.
2019-08-26Implement -0 and -A switchesAaron Ball
These add upstream functionality to prevent usage of numerals and capitals in the output password. Also this fixes an issue with the character selection loop.
2019-08-25Refactor of character set selection processAaron Ball
Previously, selected character sets were appended to a large array. This made the program unable to easily mirror functionality of the inspiration program pwgen in that removal of default character sets was not very feasible. This adds each character set into its own struct, which is a linked list item, enabling easy addition to or removal from the character set list. Further, character selection is now different as well. Since previously the character pool was stored as one big array and now it is a linked list of structs, a random character set type must be selected before the character within that set is subsequently selected. This requires two calls to rand now rather than only one.
2019-03-09Implemented version outputAaron Ball
Set initial version to 1.0 because 1.1 isn't ready yet.
2019-03-09Add debug supportAaron Ball
Added support for the -d,--debug switches. These will cause upwgen to dump the assembled character array to stdout with hexidecimal and decimal codes. Also prints a total pool character count.
2019-03-09Added unicode tiersAaron Ball
Previously, only the -i,--i18n switch existed, which would append the world's top ~10 languages to the unicode array. This was often problematic because many fonts don't have glyphs for the lesser-used writing systems. This also had the inadvertant effect of making many of the generated i18n passwords unacceptable for many services. This is because the more common unicode characters are accepted (eg: latin basic, extended, suppliment, etc), but the less common are considered "disallowed symbols", making most of the generated passwords unacceptable. This introduces the -1, -2, -3, and -4 switches to alleviate this. The -1 switch includes only the most used scripts in the world (Latin and IPA phonetic), which covers some of the biggest languages in use making these passwords most likely to be acceptable. The subsequent switches include lesser and lesser used scripts in sequence. This commit splits out all i18n functions into the new i18n_cat library to clean up main. Also made intrcat hidden, implementing i18n_cat_ascii_* functions to replace all external calls to it.
2019-03-06main: Add default char setAaron Ball
Previously the user was required to specify a custom char set, or the upwgen exited with an error. Now it assumes ascii 33 - 126, which include all english lower case, upper case, numbers, and some symbols by default (which is sane since this is what most password fields accept). Also updated README to document this default.
2019-02-04Initial support for user-specified charsetsAaron Ball
Added runtime switch parsing. This adds the -c,--capitalize; -y,--symbols; -l,--lower; -i,--i18n; -n,--numerals; and -h,--help switches. These allow the end user to customer the output. Set default password length to 32 long. User can still specify with old syntax. Also added some better error checking on the input string to ensure the user specifies an int. Added helptext (usage function). Updated README.
2019-02-03Update copyright year (2018 -> 2019)Aaron Ball
2018-09-22Initial commit of upwgenv1.0Aaron Ball
Added makefile, readme, license, and source. Currently supports user-specified password length.

Generated by cgit