plan9port

fork of plan9port with libvec, libstr and libsdb
Log | Files | Refs | README | LICENSE

dsa2pub.c (671B)


      1 #include <u.h>
      2 #include <libc.h>
      3 #include <auth.h>
      4 #include <mp.h>
      5 #include <libsec.h>
      6 #include "rsa2any.h"
      7 
      8 void
      9 usage(void)
     10 {
     11 	fprint(2, "usage: auth/dsa2pub [file]\n");
     12 	exits("usage");
     13 }
     14 
     15 void
     16 main(int argc, char **argv)
     17 {
     18 	DSApriv *key;
     19 	Attr *a;
     20 	char *s;
     21 
     22 	fmtinstall('A', _attrfmt);
     23 	fmtinstall('B', mpfmt);
     24 	quotefmtinstall();
     25 
     26 	ARGBEGIN{
     27 	default:
     28 		usage();
     29 	}ARGEND
     30 
     31 	if(argc > 1)
     32 		usage();
     33 
     34 	if((key = getdsakey(argc, argv, 0, &a)) == nil)
     35 		sysfatal("%r");
     36 
     37 	s = smprint("key %A p=%lB q=%lB alpha=%lB key=%lB\n",
     38 		a,
     39 		key->pub.p, key->pub.q, key->pub.alpha, key->pub.key);
     40 	if(s == nil)
     41 		sysfatal("smprint: %r");
     42 	write(1, s, strlen(s));
     43 	exits(nil);
     44 }