question on requirement for mnt-by fields:
Curtis Villamizar
Fri May 5 19:45:59 CEST 1995
In message <199505051520.LAA09441 at home.merit.edu>, "Dale S. Johnson" writes: > Geert Jan, > > > Hope this helps, > > It does. One related question: > > What are guardians for nowdays? 181 says they are still required. > What do they do? > > --Dale Use the source Luke. This stuff is all chacked in syntax.pl. Look at dosyntax under the short name for the field you are interested in. Its faster than asking. -- anonymous :-) PS- Since I was just into this stuff to find out what _really_ happens when I try to dbupdate stuff... Check your conf file to see which objects require guardian. In enparse.pl, you are forced to have an "ua" or "mb". If a guardian is seen in an object, it just has to be a valid RFC822 email address. Guardians are out though. Maintainers are in vogue. See the maintainer stuff "mb", and "mt" in syntax.pl. Also see maintainer.pl, the sub Maintainer for the authorization check that happens when a guarded object gets changed (too big to include). --> syntax.pl # # gd - guardian # if ($key eq "gd") { if (!(&isemail($value))) { return $O_ERROR, "syntax error in \"$ATTL{$key}\" - ". "guardian must be a mailbox entry"; } return; } --> misc.pl sub isemail { local($str) = @_; local($ok) = 1; local($localpart, $domainpart) = split(/\@/, $str, 2); $localpart =~ s/^\<//; $domainpart =~ s/\>$//; if ($localpart =~ /^"[a-zA-Z0-9\-\.\_\/\=\ %]+"$/) {} elsif ($localpart =~ /^[a-zA-Z0-9\-\.\_\/\=%]+$/) {} else {return 0;} if ($domainpart =~ /^[a-zA-Z0-9\_\-]+(\.[a-zA-Z0-9\_\-]+)+$/) {} else {return 0;} return 1; } --> enparse.pl # Check guarded objects, should be authorised or maintained # The message will request the object be maintained foreach (keys %GRDOBJ) { if ($object{$_}) { if (!$object{"ua"} && !$object{"mb"}) { &adderror(*object, "the \"$ATTL{$_}\" object cannot be updated ". "automatically without a \"mnt-by\" attribute"); # now if this object was supposed to be deleted, remove # the delete attribute, since deletes will remove # syntax errors later in the program and this is one # that may not be removed. There is also no point in # doing more checks if it was supposed to be deleted. if ($object{"ud"}) { undef $object{"ud"}; return $O_ERROR; } # otherwise, continue extra checks for clarity to user $rtcode = $O_ERROR; } last; } } -------- Logged at Sat May 6 03:33:21 MET DST 1995 ---------
[ rr-impl Archive ]