157dca85467cf3fc61565e916a5f2e35db8020d88Theodore Ts'o/*
257dca85467cf3fc61565e916a5f2e35db8020d88Theodore Ts'o * write_bb_file.c --- write a list of bad blocks to a FILE *
357dca85467cf3fc61565e916a5f2e35db8020d88Theodore Ts'o *
457dca85467cf3fc61565e916a5f2e35db8020d88Theodore Ts'o * Copyright (C) 1994, 1995 Theodore Ts'o.
557dca85467cf3fc61565e916a5f2e35db8020d88Theodore Ts'o *
657dca85467cf3fc61565e916a5f2e35db8020d88Theodore Ts'o * %Begin-Header%
7543547a52a20cb7e69d74921b2f691078fd55d83Theodore Ts'o * This file may be redistributed under the terms of the GNU Library
8543547a52a20cb7e69d74921b2f691078fd55d83Theodore Ts'o * General Public License, version 2.
957dca85467cf3fc61565e916a5f2e35db8020d88Theodore Ts'o * %End-Header%
1057dca85467cf3fc61565e916a5f2e35db8020d88Theodore Ts'o */
1157dca85467cf3fc61565e916a5f2e35db8020d88Theodore Ts'o
1257dca85467cf3fc61565e916a5f2e35db8020d88Theodore Ts'o#include <stdio.h>
1357dca85467cf3fc61565e916a5f2e35db8020d88Theodore Ts'o
1457dca85467cf3fc61565e916a5f2e35db8020d88Theodore Ts'o#include "ext2_fs.h"
1557dca85467cf3fc61565e916a5f2e35db8020d88Theodore Ts'o#include "ext2fs.h"
1657dca85467cf3fc61565e916a5f2e35db8020d88Theodore Ts'o
1757dca85467cf3fc61565e916a5f2e35db8020d88Theodore Ts'oerrcode_t ext2fs_write_bb_FILE(ext2_badblocks_list bb_list,
18544349270e4c74a6feb971123884a8cf5052a7eeTheodore Ts'o			       unsigned int flags EXT2FS_ATTR((unused)),
1957dca85467cf3fc61565e916a5f2e35db8020d88Theodore Ts'o			       FILE *f)
2057dca85467cf3fc61565e916a5f2e35db8020d88Theodore Ts'o{
2157dca85467cf3fc61565e916a5f2e35db8020d88Theodore Ts'o	badblocks_iterate	bb_iter;
2257dca85467cf3fc61565e916a5f2e35db8020d88Theodore Ts'o	blk_t			blk;
2357dca85467cf3fc61565e916a5f2e35db8020d88Theodore Ts'o	errcode_t		retval;
2457dca85467cf3fc61565e916a5f2e35db8020d88Theodore Ts'o
2557dca85467cf3fc61565e916a5f2e35db8020d88Theodore Ts'o	retval = ext2fs_badblocks_list_iterate_begin(bb_list, &bb_iter);
2657dca85467cf3fc61565e916a5f2e35db8020d88Theodore Ts'o	if (retval)
2757dca85467cf3fc61565e916a5f2e35db8020d88Theodore Ts'o		return retval;
2857dca85467cf3fc61565e916a5f2e35db8020d88Theodore Ts'o
2957dca85467cf3fc61565e916a5f2e35db8020d88Theodore Ts'o	while (ext2fs_badblocks_list_iterate(bb_iter, &blk)) {
30d0ff90d5202428583c78a60c3042e7b60d88bc45Eric Sandeen		fprintf(f, "%u\n", blk);
3157dca85467cf3fc61565e916a5f2e35db8020d88Theodore Ts'o	}
3257dca85467cf3fc61565e916a5f2e35db8020d88Theodore Ts'o	ext2fs_badblocks_list_iterate_end(bb_iter);
3357dca85467cf3fc61565e916a5f2e35db8020d88Theodore Ts'o	return 0;
3457dca85467cf3fc61565e916a5f2e35db8020d88Theodore Ts'o}
35