--- loncom/lonnet/perl/lonnet.pm 2022/02/01 23:13:20 1.1479 +++ loncom/lonnet/perl/lonnet.pm 2022/02/14 02:48:53 1.1481 @@ -1,7 +1,7 @@ # The LearningOnline Network # TCP networking package # -# $Id: lonnet.pm,v 1.1479 2022/02/01 23:13:20 raeburn Exp $ +# $Id: lonnet.pm,v 1.1481 2022/02/14 02:48:53 raeburn Exp $ # # Copyright Michigan State University Board of Trustees # @@ -2262,6 +2262,26 @@ sub del_dom { } } +sub store_dom { + my ($storehash,$id,$namespace,$dom,$home) = @_; + $$storehash{'ip'}=&get_requestor_ip(); + $$storehash{'host'}=$perlvar{'lonHostID'}; + my $namevalue=''; + foreach my $key (keys(%{$storehash})) { + $namevalue.=&escape($key).'='.&freeze_escape($$storehash{$key}).'&'; + } + $namevalue=~s/\&$//; + if (grep { $_ eq $home } current_machine_ids()) { + return LONCAPA::Lond::store_dom("storedom:$dom:$namespace:$id:$namevalue"); + } else { + if ($namespace eq 'private') { + return 'refused'; + } else { + return reply("storedom:$dom:$namespace:$id:$namevalue","$home"); + } + } +} + # ----------------------------------construct domainconfig user for a domain sub get_domainconfiguser { my ($udom) = @_; @@ -2699,7 +2719,10 @@ sub get_domain_defaults { } if ($domconfig{'coursedefaults'}{'texengine'}) { $domdefaults{'texengine'} = $domconfig{'coursedefaults'}{'texengine'}; - } + } + if (exists($domconfig{'coursedefaults'}{'ltiauth'})) { + $domdefaults{'crsltiauth'} = $domconfig{'coursedefaults'}{'ltiauth'}; + } } if (ref($domconfig{'usersessions'}) eq 'HASH') { if (ref($domconfig{'usersessions'}{'remote'}) eq 'HASH') {