[fpc-pascal] GetTempFileName in Linux
Sven Barth
pascaldragon at googlemail.com
Fri Oct 8 11:21:29 CEST 2010
Am 08.10.2010 10:03, schrieb Michael Van Canneyt:
>
>
> On Fri, 8 Oct 2010, Sven Barth wrote:
>
>> Am 07.10.2010 20:02, schrieb Jonathan:
>>> On Thu, 07 Oct 2010 11:01:44 +0200
>>> Sven Barth<pascaldragon at googlemail.com> wrote:
>>>
>>>> Btw: What are Tomoyo and Apparmour (I can imagine what the second one
>>>> is, but I don't know what functionality they provide)?
>>>
>>> http://tomoyo.sourceforge.jp/
>>> https://wiki.ubuntu.com/AppArmor
>>
>> Thanks.
>>
>> So when changing/improving GetTempFileName we could also try to make
>> it compatible to such applications by creating a directory in TEMP for
>> the temporary file that contains the appname and the user.
>
> The current implementation does just that. It uses GetTempDir which checks
> TEMP and TMP (in that order), and if neither is set, uses /tmp.
>
> Note also that you can hook in the temporary filename mechanism by setting
> OnGetTempFile and doing it all yourself.
I'm aware of that (btw: is this OnGetTempFile possible on Windows as
well?). :)
But maybe we can use by default something like the following if
HAS_GETTEMPFILENAME is not set (pseudo code):
if OnGetTempFilename <> Nil then
OnGetTempFilename(Prefix)
else begin
dir := FindTempDir + PathDelim + GetAppName + '-' + GetUserName;
CreateTempFileInDir(dir, Prefix);
end;
* FindTempDir searches for a suitable environment var (TEMP, TMP, /tmp)
* GetAppName uses the GetAppName that is used for GetConfigDir as well
(might be named differently, I'm not looking at the source currently)
* GetUserName returns the name of the current logged on user (could be
empty if the username can not be found)
Regards,
Sven
More information about the fpc-pascal
mailing list