2018-07-20 16:04:11 +0100 James Kerwin:
> Afternoon all,
> 
> I have been asked to take a look at a .pl file which is part of a set-up
> called "EPrints". The particular file controls who can access documents on
> a server.
> 
> Excluding some comments, the file starts like:
> 
> $c->{can_request_view_document} = sub
> {
>         my( $doc, $r ) = @_;
> 
> It then goes on to complete the subroutine and return a value.
> 
> I understand that $doc and $r are populated via @_ but I have never before
> seen the structure of the first line starting with "$c". Additionally, the
> file doesn't look like a typical Perl file (eg.#!/usr/bin/perl -w at the
> top and some use statements).

Maybe some piece of code is doing "do 'the_file.pl'" or the file's
content is being given to eval(). In these cases, probably a hashref
$c was already declared and being used in the code that runs the do()
or eval().

> I know it's very vague, but could anybody explain this syntax to me? My
> suspicion is that something else is calling the subroutines in this file?
> Am I at least on the right track?
> 
> Thanks,
> James

Attachment: signature.asc
Description: Digital signature

Reply via email to