aboutsummaryrefslogtreecommitdiff
path: root/v_windows/v/examples/vpwgen.v
diff options
context:
space:
mode:
authorIndrajith K L2022-12-03 17:00:20 +0530
committerIndrajith K L2022-12-03 17:00:20 +0530
commitf5c4671bfbad96bf346bd7e9a21fc4317b4959df (patch)
tree2764fc62da58f2ba8da7ed341643fc359873142f /v_windows/v/examples/vpwgen.v
downloadcli-tools-windows-f5c4671bfbad96bf346bd7e9a21fc4317b4959df.tar.gz
cli-tools-windows-f5c4671bfbad96bf346bd7e9a21fc4317b4959df.tar.bz2
cli-tools-windows-f5c4671bfbad96bf346bd7e9a21fc4317b4959df.zip
Adds most of the toolsHEADmaster
Diffstat (limited to 'v_windows/v/examples/vpwgen.v')
-rw-r--r--v_windows/v/examples/vpwgen.v25
1 files changed, 25 insertions, 0 deletions
diff --git a/v_windows/v/examples/vpwgen.v b/v_windows/v/examples/vpwgen.v
new file mode 100644
index 0000000..2f803e4
--- /dev/null
+++ b/v_windows/v/examples/vpwgen.v
@@ -0,0 +1,25 @@
+import os
+import os.cmdline
+import crypto.rand
+import strings
+
+fn main() {
+ blocksize := 256
+ size := cmdline.option(os.args, '-size', '80').int()
+ repeats := cmdline.option(os.args, '-repeats', '4').int()
+ for _ in 0 .. repeats {
+ mut sb := strings.new_builder(blocksize)
+ for {
+ x := rand.read(blocksize) ?
+ for c in x {
+ if c >= `0` && c <= `~` {
+ sb.write_b(c)
+ }
+ }
+ if sb.len > size {
+ println(sb.str()[0..size])
+ break
+ }
+ }
+ }
+}