adium/adium
Clone
Summary
Browse
Changes
Graph
Adium 1.5.2 is done!
adium-1.5.2
1.5.2
2012-07-21, Thijs Alkemade
80cc358134ea
Adium 1.5.2 is done!
/*
* Copyright (c) 2001 Apple Computer, Inc. All rights reserved.
*
* @APPLE_LICENSE_HEADER_START@
*
* The contents of this file constitute Original Code as defined in and
* are subject to the Apple Public Source License Version 1.1 (the
* "License"). You may not use this file except in compliance with the
* License. Please obtain a copy of the License at
* http://www.apple.com/publicsource and read it before using this file.
*
* This Original Code and all software distributed under the License are
* distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, EITHER
* EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
* INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
* FITNESS FOR A PARTICULAR PURPOSE OR NON-INFRINGEMENT. Please see the
* License for the specific language governing rights and limitations
* under the License.
*
* @APPLE_LICENSE_HEADER_END@
*/
/*
* Shantonu Sen <<EMAIL REMOVED>>
* openUp.c - program to set the "first-open-window" field of a volume
*
* Get the directory ID for the first argument, and set it as word 2
* of the Finder Info fields for the volume it lives on
*
* cc -o openUp openUp.c
* Usage: openUp /Volumes/Foo/OpenMe/
*
*/
#include
<stdio.h>
#include
<unistd.h>
#include
<stdlib.h>
#include
<sys/attr.h>
#include
<sys/stat.h>
#include
<sys/mount.h>
#include
<memory.h>
struct
directoryinfo
{
unsigned
long
length
;
u_int32_t
dirid
;
};
struct
volumeinfo
{
unsigned
long
length
;
u_int32_t
finderinfo
[
8
];
};
int
main
(
int
argc
,
char
*
argv
[])
{
char
*
path
=
NULL
;
struct
attrlist
alist
;
struct
directoryinfo
dirinfo
;
struct
volumeinfo
volinfo
;
struct
statfs
sfs
;
path
=
argv
[
1
];
bzero
(
&
alist
,
sizeof
(
alist
));
alist
.
bitmapcount
=
5
;
alist
.
commonattr
=
ATTR_CMN_OBJID
;
getattrlist
(
path
,
&
alist
,
&
dirinfo
,
sizeof
(
dirinfo
),
0
);
printf
(
"directory id: %lu
\n
"
,
dirinfo
.
dirid
);
statfs
(
path
,
&
sfs
);
printf
(
"mountpoint: %s
\n
"
,
sfs
.
f_mntonname
);
alist
.
commonattr
=
ATTR_CMN_FNDRINFO
;
alist
.
volattr
=
ATTR_VOL_INFO
;
getattrlist
(
sfs
.
f_mntonname
,
&
alist
,
&
volinfo
,
sizeof
(
volinfo
),
0
);
volinfo
.
finderinfo
[
2
]
=
dirinfo
.
dirid
;
setattrlist
(
sfs
.
f_mntonname
,
&
alist
,
volinfo
.
finderinfo
,
sizeof
(
volinfo
.
finderinfo
),
0
);
return
EXIT_SUCCESS
;
}