Я разрабатываю приложение FUSE, которое берет каталог с mp3-файлами и монтирует файловую систему в другом каталоге со следующей структурой (согласно их тегам):
Artist1
|
-----> Album11
|
-----> Track01
-----> Track02
-----> Track03
-----> Track04
-----> Track05
-----> Album12
....
Artist2
|
-----> Album21
-----> Album22
....
Artist3
.....
Я использую базу данных sqlite3 для поддержки ссылок на реальные файлы. Элементы исполнителей и альбомов - это папки, а элементы треков - это ссылки на настоящие.
Я достиг создания папок для художников и альбомов. Но сейчас у меня проблема.
У меня есть это:
static int getattr(...) {
....
else if ( level == 0 || level == 1 || level == 2 )
{
// Estamos en el primer nivel. Son artistas, y por lo tanto, carpetas.
stbuf->st_mode = S_IFDIR | 0755;
stbuf->st_nlink = 2;
lstat(path, stbuf);
}
else if (level == 3) {
// Estamos en el tercer nivel. Son canciones, por lo que son enlaces
stbuf->st_mode = S_IFLNK | 0755;
stbuf->st_nlink = 2;
lstat(path, stbuf);
}
.....
}
А теперь, когда я попал в каталог track, у меня появляется сообщение о том, что функция не реализована (функции links). Какую функцию я должен реализовать, чтобы знать, куда указывает ссылка? Или где мне заполнить указатель направления?
Спасибо!