Markus Roberts wrote:
> Mark Drayton made a good point 
> (http://projects.reductivelabs.com/issues/2601#note-3); are we making 
> the code more complicated than it needs to be to get less functionality 
> than we might otherwise have?  Rather than saying that it takes one 
> additional numeric argument, why not just permit arbitrary additional 
> seed values, like so:
> 
>     "Generates random numbers based on the node's fqdn. The first argument
>     sets the range.  Additional (optional) arguments may be used to 
> further distinguish
>     the seed.") do |args|
>         max = args.shift
>         srand MD5.new([lookupvar('fqdn'),args].join(':')).to_s.hex
>         rand(max).to_s
> 
> Specifically, is there any advantage to having a numeric offset to the 
> seed?  The practice is, in general, frowned upon at least insofar as 
> small/constant numeric offsets don't add to the entropy and can result 
> in a higher rate of collisions than adjusting the salt.
> 

I had some similar questions about this: my understanding (based on the irc 
discussions) is that this function is really only used to distinguish among 
hosts.  Given that functionality, it seems the ability to modify the 
seed/change 
the string being randomized is only present when you have more than one host in 
your puppet environment that has a given IP address.

In which case, either the current behavior or the suggestion above suffices.

I say that, but I'm still not really sure of this function's usage in The Real 
World.  Some of the new tests I added are to help demonstrate/elicit the more 
useful behavior.

Steven
End Point Corporation

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"Puppet Developers" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to 
[email protected]
For more options, visit this group at 
http://groups.google.com/group/puppet-dev?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to